================
@@ -33,8 +33,7 @@ define noundef i1 @logger(i32 noundef %logLevel, ptr %ea, ptr 
%pll) {
 ; CHECK-GI-NEXT:    b.hi .LBB1_2
 ; CHECK-GI-NEXT:  // %bb.1: // %land.rhs
 ; CHECK-GI-NEXT:    ldr x8, [x1]
-; CHECK-GI-NEXT:    ldrb w8, [x8]
-; CHECK-GI-NEXT:    and w0, w8, #0x1
+; CHECK-GI-NEXT:    ldrb w0, [x8]
----------------
tobias-stadler wrote:

The immediate DCEing and better ordering of combines prevents the 
PreLegalizerCombiner from generating a bunch of useless artifacts that it can't 
combine away again. These artifacts are converted into G_AND by the 
ArtifactCombiner, which can't be combined away by the redundant_and combine, 
because KnownBits can't look through the implicit anyext of the G_LOAD. We are 
probably missing some combines that convert the load into sext/zext versions.

https://github.com/llvm/llvm-project/pull/102167
_______________________________________________
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

Reply via email to