[llvm-branch-commits] [AArch64][GlobalISel] Disable fixed-point iteration in all Combiners (PR #102167)

Tobias Stadler via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Tue Aug 6 08:52:21 PDT 2024


================
@@ -257,10 +257,10 @@ define i32 @udiv_div_by_180(i32 %x)
 ;
 ; GISEL-LABEL: udiv_div_by_180:
 ; GISEL:       // %bb.0:
-; GISEL-NEXT:    uxtb w8, w0
-; GISEL-NEXT:    mov w9, #5826 // =0x16c2
-; GISEL-NEXT:    movk w9, #364, lsl #16
-; GISEL-NEXT:    umull x8, w8, w9
+; GISEL-NEXT:    mov w8, #5826 // =0x16c2
+; GISEL-NEXT:    and w9, w0, #0xff
+; GISEL-NEXT:    movk w8, #364, lsl #16
+; GISEL-NEXT:    umull x8, w9, w8
----------------
tobias-stadler wrote:

expanding the div generates a bunch of instructions and the order in which they are recombined results in different ouput

https://github.com/llvm/llvm-project/pull/102167


More information about the llvm-branch-commits mailing list