[PATCH] D35821: Have ARM call setBooleanContents(ZeroOrOneBooleanContent).

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jul 28 17:23:33 PDT 2017


efriedma added inline comments.


================
Comment at: lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:3674
+           dyn_cast<ConstantSDNode>(Tmp2.getOperand(1))->getZExtValue() == 1))
+        Tmp3 = Tmp2;
+      else
----------------
An AND of an AND should get optimized away by DAGCombine, I think?  Why isn't that happening?


================
Comment at: test/CodeGen/ARM/cse-call.ll:5
 
-; Don't CSE a cmp across a call that clobbers CPSR.
-;
-; CHECK: cmp
 ; CHECK: S_trimzeros
 ; CHECK: cmp
----------------
If you delete the check line, this is no longer testing what it's supposed to test (which is that we don't CSE the cmp across the call).  You might need to use an icmp to get the required output here.


================
Comment at: test/CodeGen/ARM/i1.ll:11
+entry:
+  br i1 undef, label %t, label %f
+
----------------
What are you trying to test here?


================
Comment at: test/CodeGen/Thumb2/2009-09-28-ITBlockBug.ll:10
+; CHECK:      it ne
+; CHECK-NEXT: bxne
 entry:
----------------
This test is ridiculous; we should just delete the whole file.


================
Comment at: test/CodeGen/Thumb2/2010-11-22-EpilogueBug.ll:11
 ; CHECK: push
-; CHECK: mov r7, sp
+; CHECK: add r7, sp
 ; CHECK: sub sp, #4
----------------
This looks weird; what is the assembly for the whole function?


https://reviews.llvm.org/D35821





More information about the llvm-commits mailing list