[PATCH] D14584: [CodeGenPrepare] Create more extloads and fewer ands

Geoff Berry via llvm-commits llvm-commits at lists.llvm.org
Thu Nov 19 10:36:59 PST 2015


gberry marked 3 inline comments as done.
gberry added a comment.

Hi Quentin,

I believe I have addressed all of your concerns.  One other change to note in the lastest update is that I moved the CodeGenPrepare IR test up out of the AArch64 directory since the optimization is now enabled for all targets.

I'll be sure to file PR's for the two cases mentioned above as well.

Let me know if you have any other concerns.

Thanks,
-Geoff


================
Comment at: lib/CodeGen/CodeGenPrepare.cpp:4392
@@ +4391,3 @@
+    default:
+      return false;
+    }
----------------
I will file a PR for the AArch64 i1 zextload case.

================
Comment at: lib/CodeGen/CodeGenPrepare.cpp:5150
@@ -4962,1 +5149,3 @@
+      Modified |= optimizeMemoryInst(I, I->getOperand(0), LI->getType(), AS);
+      return Modified;
     }
----------------
I'm less concerned about this now after checking the compile time (CodeGenPrepare time within the noise for spec2006.gcc where this code is hit many times), and the fact that this feature is more common across targets than I initially thought.

================
Comment at: test/CodeGen/AArch64/free-zext.ll:55
@@ +54,3 @@
+define void @test_free_zext4(i32* %ptr, i32* %ptr2, i32* %dst) {
+; CHECK-LABEL: test_free_zext4:
+; CHECK: ldrh [[REG:w[0-9]+]]
----------------
Will do.


http://reviews.llvm.org/D14584





More information about the llvm-commits mailing list