[PATCH] D33587: [DAGCombine] Do several rounds of combine.

Amaury SECHET via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Jan 27 18:51:38 PST 2019


deadalnix marked 5 inline comments as done.
deadalnix added inline comments.


================
Comment at: test/CodeGen/X86/mmx-cvt.ll:271
 ; X86-NEXT:    movq %mm0, (%esp)
-; X86-NEXT:    cvtdq2pd (%esp), %xmm0
+; X86-NEXT:    movsd {{.*#+}} xmm0 = mem[0],zero
+; X86-NEXT:    cvtdq2pd %xmm0, %xmm0
----------------
xbolva00 wrote:
> Weird instruction increase
Yes. It looks like there are a few regressions, even though overall codegen looks better. I'm happy to investigate them, but I'd like to know if this is like to go forward in principle before investing too much effort that will be wasted.


================
Comment at: test/CodeGen/X86/not-and-simplify.ll:22
 ; ALL-LABEL: shrink_xor_constant1_splat:
 ; ALL:       # %bb.0:
+; ALL-NEXT:    pcmpeqd %xmm1, %xmm1
----------------
RKSimon wrote:
> xbolva00 wrote:
> > Bug?
> Alive says its ok: https://rise4fun.com/Alive/MDFW
> 
> And it replaces a load with a re-rematerializable constant
I assume this is an improvement, right ?


================
Comment at: test/CodeGen/X86/shift-double-x86_64.ll:16
+; CHECK-NEXT:    shlq %cl, %rax
+; CHECK-NEXT:    orq %rsi, %rax
 ; CHECK-NEXT:    retq
----------------
I'm not sure what is going on here, I assume there is a bug somewhere.


================
Comment at: test/CodeGen/X86/shift-double.ll:300
+; X86-NEXT:    orl %esi, %eax
+; X86-NEXT:    popl %esi
 ; X86-NEXT:    retl
----------------
dito


================
Comment at: test/CodeGen/X86/unfold-masked-merge-scalar-constmask-innerouter.ll:40
 ; CHECK-NOBMI-NEXT:    andl $4080, %edi # imm = 0xFF0
-; CHECK-NOBMI-NEXT:    andl $-4081, %esi # imm = 0xF00F
+; CHECK-NOBMI-NEXT:    andl $61455, %esi # imm = 0xF00F
 ; CHECK-NOBMI-NEXT:    leal (%rsi,%rdi), %eax
----------------
Is there any difference between these two in term of codegen ?


Repository:
  rL LLVM

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D33587/new/

https://reviews.llvm.org/D33587





More information about the llvm-commits mailing list