[PATCH] D13417: [MachineCombiner] make slack optional in critical path cost calculation (PR25016)

Sanjay Patel via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 21 08:07:07 PDT 2015


spatel added a comment.

In http://reviews.llvm.org/D13417#271857, @Gerolf wrote:

> Perhaps there is another change in your tree.  We are looking at different code and/or I don’t know how your reference sequence for your test case. With fast-math and reassociation turned off I’m getting:


If we have differing codegen/behavior, that would certainly explain why we're not reaching the same conclusion.

Let's make sure that we are using identical tests: I have confirmed on 2 machines with pristine checkouts of trunk (r250899) that I'm seeing the bad reassociation transform. The reference regression test case that I am referring to is here:
test/CodeGen/X86/machine-combiner.ll, line 650:
define double @already_reassociated() {

And this is the invocation for the checked output:
; RUN: llc -mtriple=x86_64-unknown-unknown -mcpu=x86-64 -mattr=avx -enable-unsafe-fp-math < %s | FileCheck %s --check-prefix=AVX

And these are the critical check lines:
; AVX-NEXT:  vaddsd  (%rsp), %xmm0, %xmm0
; AVX-NEXT:  vaddsd  8(%rsp), %xmm0, %xmm0
; AVX-NEXT:  vaddsd  16(%rsp), %xmm0, %xmm0

Does this reproduce in your environment?


http://reviews.llvm.org/D13417





More information about the llvm-commits mailing list