regression: +443 insts: ashr_32bytes (wide-scalar-shift-by-byte-multiple-legalization.ll)

Run:main-04ca53e65f-20261014-105623
Kind:regression
Category:+443 insts: ashr_32bytes (wide-scalar-shift-by-byte-multiple-legalization.ll)
Occurrences:1 in 1 configs, 1 test files
Snippet from:wide-scalar-shift-by-byte-multiple-legalization.ca43c377d3.ll (mutant of wide-scalar-shift-by-byte-multiple-legalization.ll) @ashr_32bytes via llvm-extract
Config:-mtriple=riscv32 -verify-machineinstrs
Local check:reproduces at 04ca53e65f
Compiler Explorer:not uploaded (over --godbolt-limit or disabled)

Snippet:

@G.2 = external global i128
@G.3 = external global ptr

; Function Attrs: nounwind
define void @ashr_32bytes(ptr %src.ptr, ptr %byteOff.ptr, ptr %dst) #0 {
  %LGV = load i128, ptr @G.2, align 4
  %src = load i256, ptr %src.ptr, align 1
  %G = getelementptr i256, ptr %byteOff.ptr, i128 %LGV
  %byteOff = load i256, ptr %byteOff.ptr, align 1
  %bitOff = shl i256 %byteOff, 3
  %res = ashr i256 %src, %bitOff
  store i256 %res, ptr %dst, align 1
  store ptr %G, ptr @G.3, align 8
  ret void
}

attributes #0 = { nounwind }

Reproduce:

llc -mtriple=riscv32 -verify-machineinstrs -global-isel snippet.ll -o -
llc -mtriple=riscv32 -verify-machineinstrs -global-isel=0 snippet.ll -o -

Assembly diff (SelectionDAG vs GlobalISel):

--- sdag
+++ gisel
@@ -1,225 +1,858 @@
-addi sp, sp, -96
-sw s0, 92(sp)
-sw s1, 88(sp)
-sw s2, 84(sp)
-sw s3, 80(sp)
-sw s4, 76(sp)
-lui a3, %hi(G.2)
-lbu a4, 1(a0)
+addi sp, sp, -80
+sw ra, 76(sp)
+sw s0, 72(sp)
+sw s1, 68(sp)
+sw s2, 64(sp)
+sw s3, 60(sp)
+sw s4, 56(sp)
+sw s5, 52(sp)
+sw s6, 48(sp)
+sw s7, 44(sp)
+sw s8, 40(sp)
+sw s9, 36(sp)
+sw s10, 32(sp)
+sw s11, 28(sp)
+li a7, 0
+lbu t3, 1(a0)
+lbu a3, 3(a0)
+lbu a4, 0(a0)
 lbu a5, 2(a0)
-lbu a6, 3(a0)
-lbu a7, 0(a0)
+lbu a6, 4(a0)
+lbu t0, 5(a0)
+lbu t1, 6(a0)
+lbu t2, 7(a0)
+slli t3, t3, 8
+slli a3, a3, 8
+or s4, t3, a4
+or a3, a3, a5
+slli t0, t0, 8
+lbu a4, 9(a0)
+slli t2, t2, 8
+lbu a5, 8(a0)
+lbu t3, 10(a0)
+lbu t4, 11(a0)
+or a6, t0, a6
+or t0, t2, t1
+slli t0, t0, 16
 slli a4, a4, 8
-slli a5, a5, 16
-slli a6, a6, 24
-lbu t0, 4(a0)
-lbu t1, 5(a0)
-lbu t2, 6(a0)
-lbu t3, 7(a0)
-or a4, a4, a7
-or a5, a6, a5
-lw a3, %lo(G.2)(a3)
-or a4, a5, a4
+or s5, t0, a6
+or a5, a4, a5
+slli t4, t4, 8
+lbu t2, 13(a0)
+lbu t0, 14(a0)
+lbu a4, 15(a0)
+lbu a6, 28(a0)
+lbu t1, 29(a0)
+lbu t5, 0(a1)
+lbu t6, 1(a1)
+lbu s0, 2(a1)
+sw a1, 8(sp)
+lbu s1, 3(a1)
+or t3, t4, t3
+lbu s2, 30(a0)
+lbu s3, 31(a0)
 slli t1, t1, 8
-lbu a5, 9(a0)
-slli t2, t2, 16
-slli t3, t3, 24
-or a6, t1, t0
-or a7, t3, t2
-lbu t0, 8(a0)
-lbu t1, 10(a0)
-lbu t2, 11(a0)
-slli t3, a5, 8
-lbu t4, 12(a0)
-lbu t5, 13(a0)
-lbu t6, 14(a0)
-lbu s0, 15(a0)
-or a5, a7, a6
-or a6, t3, t0
-slli t1, t1, 16
-slli t2, t2, 24
-or a7, t2, t1
-slli t5, t5, 8
-slli t6, t6, 16
-slli s0, s0, 24
-lbu t0, 16(a0)
-lbu t1, 17(a0)
-lbu t2, 18(a0)
-lbu t3, 19(a0)
-or t4, t5, t4
-or t5, s0, t6
-or a6, a7, a6
-or a7, t5, t4
-slli t1, t1, 8
-lbu t4, 21(a0)
-slli t2, t2, 16
-slli t3, t3, 24
-or t0, t1, t0
-or t1, t3, t2
-lbu t2, 20(a0)
+or t1, t1, a6
+slli t6, t6, 8
+or a6, t6, t5
+slli s1, s1, 8
+or s0, s1, s0
+slli t6, a3, 16
+slli t3, t3, 16
+slli t4, a4, 8
+slli s3, s3, 8
+slli s0, s0, 16
+or a3, s3, s2
+or a6, s0, a6
+slli a3, a3, 16
+slli a6, a6, 3
+or a3, a3, t1
+andi t5, a6, 31
+srli t1, a6, 5
+neg a4, t5
+beqz t5, .L0
+sll a7, s5, a4
+.L0:
+lbu s0, 12(a0)
+lbu s1, 19(a0)
+or s6, t6, s4
+slli t6, t2, 8
+or t0, t4, t0
+or a5, t3, a5
+srai t2, a3, 31
+beqz t1, .L1
+mv a7, t2
+j .L2
+.L1:
+srl a1, s6, a6
+or a7, a1, a7
+.L2:
+li t3, 0
+lbu s2, 17(a0)
+lbu t4, 18(a0)
+slli s1, s1, 8
+or s3, t6, s0
+slli t0, t0, 16
+li a1, 1
+sll ra, a5, a4
+beqz t5, .L3
+mv t3, ra
+.L3:
+lbu t6, 16(a0)
+lbu s0, 23(a0)
+slli s2, s2, 8
+or s1, s1, t4
+mv s4, s5
+srl s5, s5, a6
+or t0, t0, s3
+bne t1, a1, .L4
+or a7, s5, t3
+.L4:
+li t4, 0
+lbu s7, 21(a0)
 lbu t3, 22(a0)
-lbu t5, 23(a0)
-slli t4, t4, 8
+slli s3, s0, 8
+or s8, s2, t6
+slli s9, s1, 16
+li a1, 2
+sll s2, t0, a4
+beqz t5, .L5
+mv t4, s2
+.L5:
+lbu t6, 20(a0)
+lbu s0, 27(a0)
+slli s7, s7, 8
+or s1, s3, t3
+srl s3, a5, a6
+or t3, s9, s8
+bne t1, a1, .L6
+or a7, s3, t4
+.L6:
+li t4, 0
+lbu s9, 25(a0)
+lbu s8, 26(a0)
+slli s10, s0, 8
+or s7, s7, t6
+slli s11, s1, 16
+li a1, 3
+sll t6, t3, a4
+sw t6, 12(sp)
+beqz t5, .L7
+lw t4, 12(sp)
+.L7:
 lbu t6, 24(a0)
-lbu s0, 25(a0)
-lbu s1, 26(a0)
-lbu s2, 27(a0)
-or t0, t1, t0
-or t1, t4, t2
-slli t3, t3, 16
-slli t5, t5, 24
-or t2, t5, t3
-slli s0, s0, 8
-slli s1, s1, 16
-slli s2, s2, 24
-lbu t3, 28(a0)
-lbu t4, 29(a0)
-or t5, s0, t6
-or t6, s2, s1
-or t1, t2, t1
-or t2, t6, t5
-lbu t5, 30(a0)
-lbu a0, 31(a0)
-slli t4, t4, 8
-lbu t6, 1(a1)
-or t3, t4, t3
-lbu t4, 0(a1)
-lbu s0, 2(a1)
-lbu s1, 3(a1)
-slli t5, t5, 16
-slli a0, a0, 24
-or t5, a0, t5
-slli t6, t6, 8
-or t3, t5, t3
-or t4, t6, t4
-slli s0, s0, 16
-slli s1, s1, 24
-or s0, s1, s0
-srai a0, a0, 31
-or t4, s0, t4
-sw a0, 56(sp)
-sw a0, 60(sp)
-sw a0, 64(sp)
-sw a0, 68(sp)
-sw a0, 40(sp)
-sw a0, 44(sp)
-sw a0, 48(sp)
-sw a0, 52(sp)
-sw t0, 24(sp)
-sw t1, 28(sp)
-sw t2, 32(sp)
-sw t3, 36(sp)
-andi a0, t4, 28
-addi t0, sp, 8
-sw a4, 8(sp)
-sw a5, 12(sp)
-sw a6, 16(sp)
-sw a7, 20(sp)
-add t0, t0, a0
-lw a4, 4(t0)
-lw t2, 8(t0)
-slli a3, a3, 5
-slli t1, t4, 3
-add a1, a1, a3
-andi a0, t1, 24
-xori t3, a0, 31
-lw a3, 0(t0)
-lw t4, 12(t0)
-slli a5, t2, 1
-srl a0, a4, t1
-sll a5, a5, t3
-slli a6, a4, 1
-lw t5, 16(t0)
-srl a4, a3, t1
-sll a6, a6, t3
-or a3, a0, a5
-or a5, a4, a6
-lw t6, 20(t0)
-lw s0, 24(t0)
-lw s1, 28(t0)
-slli a7, t5, 1
-srl a6, t4, t1
-sll a7, a7, t3
-or a7, a6, a7
-slli t4, t4, 1
-srl t0, t2, t1
-sll t2, t4, t3
-or t2, t0, t2
-slli t4, s0, 1
-srl s2, t6, t1
-sll t4, t4, t3
-or t4, s2, t4
-slli t6, t6, 1
-srl t5, t5, t1
-sll t6, t6, t3
-or t6, t5, t6
-slli s3, s1, 1
-srl s0, s0, t1
-sll t3, s3, t3
-or t3, s0, t3
-sra t1, s1, t1
-srli s1, t1, 24
-srli s3, t1, 16
-srli s4, t1, 8
-sb t1, 28(a2)
-sb s4, 29(a2)
-sb s3, 30(a2)
-sb s1, 31(a2)
-srli t1, t3, 24
-srli s1, t3, 16
-srli t3, t3, 8
-sb s0, 24(a2)
-sb t3, 25(a2)
-sb s1, 26(a2)
-sb t1, 27(a2)
-srli t1, t6, 24
-srli t3, t6, 16
-srli t6, t6, 8
-sb t5, 16(a2)
-sb t6, 17(a2)
-sb t3, 18(a2)
-sb t1, 19(a2)
-srli t1, t4, 24
-srli t3, t4, 16
-srli t4, t4, 8
-sb s2, 20(a2)
-sb t4, 21(a2)
-sb t3, 22(a2)
-sb t1, 23(a2)
-srli t1, t2, 24
-srli t3, t2, 16
+slli s9, s9, 8
+or s8, s10, s8
+srl s1, t0, a6
+or a0, s11, s7
+bne t1, a1, .L8
+or a7, s1, t4
+.L8:
+li s7, 0
+or a1, s9, t6
+slli s8, s8, 16
+li s10, 4
+sll s9, a0, a4
+beqz t5, .L9
+mv s7, s9
+.L9:
+srl t6, t3, a6
+or t4, s8, a1
+bne t1, s10, .L10
+or a7, t6, s7
+.L10:
+li s7, 0
+li a1, 5
+sll s0, t4, a4
+sw s0, 20(sp)
+beqz t5, .L11
+lw s7, 20(sp)
+.L11:
+sw t6, 16(sp)
+srl s0, a0, a6
+beq t1, a1, .L12
+mv t6, s0
+j .L13
+.L12:
+mv t6, s0
+or a7, s0, s7
+.L13:
+li s7, 0
+li s8, 6
+sll a1, a3, a4
+sw a1, 24(sp)
+beqz t5, .L14
+lw s7, 24(sp)
+.L14:
+srl a1, t4, a6
+beq t1, s8, .L15
+mv s0, a1
+mv s11, s6
+j .L16
+.L15:
+mv s11, s6
+mv s0, a1
+or a7, a1, s7
+.L16:
+li s6, 0
+li s7, 7
+sll a1, t2, a4
+beqz t5, .L17
+mv s6, a1
+.L17:
+srl a4, a3, a6
+bne t1, s7, .L18
+or a7, a4, s6
+.L18:
+mv s6, s11
+mv s7, a4
+li s11, 1
+bnez a6, .L19
+li a4, 0
+bnez t5, .L20
+.L21:
+beqz t1, .L22
+.L23:
+mv a7, t2
+j .L24
+.L19:
+mv s6, a7
+li a4, 0
+beqz t5, .L21
+.L20:
+mv a4, ra
+bnez t1, .L23
+.L22:
+or a7, s5, a4
+.L24:
+li s5, 2
+li ra, 3
+li a4, 0
+bnez t5, .L25
+beq t1, s11, .L26
+.L27:
+li a4, 0
+bnez t5, .L28
+.L29:
+beq t1, s5, .L30
+.L31:
+li a4, 0
+bnez t5, .L32
+.L33:
+beq t1, ra, .L34
+.L35:
+li a4, 0
+bnez t5, .L36
+.L37:
+bne t1, s10, .L38
+.L39:
+or a7, t6, a4
+.L38:
+li a4, 0
+li s10, 5
+bnez t5, .L40
+beq t1, s10, .L41
+.L42:
+li a4, 0
+bnez t5, .L43
+.L44:
+bne t1, s8, .L45
+.L46:
+or a7, s7, a4
+.L45:
+mv a4, t2
+li s8, 7
+bne t1, s8, .L47
+bnez a6, .L48
+.L49:
+li a4, 0
+bnez t5, .L50
+.L51:
+beqz t1, .L52
+.L53:
+mv a7, t2
+j .L54
+.L25:
+mv a4, s2
+bne t1, s11, .L27
+.L26:
+or a7, s3, a4
+li a4, 0
+beqz t5, .L29
+.L28:
+lw a4, 12(sp)
+bne t1, s5, .L31
+.L30:
+or a7, s1, a4
+li a4, 0
+beqz t5, .L33
+.L32:
+mv a4, s9
+bne t1, ra, .L35
+.L34:
+lw a7, 16(sp)
+or a7, a7, a4
+li a4, 0
+beqz t5, .L37
+.L36:
+lw a4, 20(sp)
+beq t1, s10, .L39
+j .L38
+.L40:
+lw a4, 24(sp)
+bne t1, s10, .L42
+.L41:
+or a7, s0, a4
+li a4, 0
+beqz t5, .L44
+.L43:
+mv a4, a1
+beq t1, s8, .L46
+j .L45
+.L47:
+mv a4, a7
+beqz a6, .L49
+.L48:
+mv s4, a4
+li a4, 0
+beqz t5, .L51
+.L50:
+mv a4, s2
+bnez t1, .L53
+.L52:
+or a7, s3, a4
+.L54:
+li s2, 4
+li s3, 6
+li a4, 0
+bnez t5, .L55
+beq t1, s11, .L56
+.L57:
+li a4, 0
+bnez t5, .L58
+.L59:
+beq t1, s5, .L60
+.L61:
+li a4, 0
+bnez t5, .L62
+.L63:
+beq t1, ra, .L64
+.L65:
+li a4, 0
+bnez t5, .L66
+.L67:
+beq t1, s2, .L68
+.L69:
+li a4, 0
+bnez t5, .L70
+.L71:
+beq t1, s10, .L72
+.L73:
+mv a4, t2
+bne t1, s3, .L74
+.L75:
+mv a7, t2
+bne t1, s8, .L76
+.L77:
+bnez a6, .L78
+.L79:
+li a4, 0
+bnez t5, .L80
+.L81:
+beqz t1, .L82
+.L83:
+mv a7, t2
+li a4, 0
+bnez t5, .L84
+j .L85
+.L55:
+lw a4, 12(sp)
+bne t1, s11, .L57
+.L56:
+or a7, s1, a4
+li a4, 0
+beqz t5, .L59
+.L58:
+mv a4, s9
+bne t1, s5, .L61
+.L60:
+lw a7, 16(sp)
+or a7, a7, a4
+li a4, 0
+beqz t5, .L63
+.L62:
+lw a4, 20(sp)
+bne t1, ra, .L65
+.L64:
+or a7, t6, a4
+li a4, 0
+beqz t5, .L67
+.L66:
+lw a4, 24(sp)
+bne t1, s2, .L69
+.L68:
+or a7, s0, a4
+li a4, 0
+beqz t5, .L71
+.L70:
+mv a4, a1
+bne t1, s10, .L73
+.L72:
+or a7, s7, a4
+mv a4, t2
+beq t1, s3, .L75
+.L74:
+mv a4, a7
+mv a7, t2
+beq t1, s8, .L77
+.L76:
+mv a7, a4
+beqz a6, .L79
+.L78:
+mv a5, a7
+li a4, 0
+beqz t5, .L81
+.L80:
+lw a4, 12(sp)
+bnez t1, .L83
+.L82:
+or a7, s1, a4
+li a4, 0
+beqz t5, .L85
+.L84:
+mv a4, s9
+.L85:
+beq t1, s11, .L86
+li a4, 0
+bnez t5, .L87
+.L88:
+beq t1, s5, .L89
+.L90:
+li a4, 0
+bnez t5, .L91
+.L92:
+beq t1, ra, .L93
+.L94:
+li a4, 0
+bnez t5, .L95
+.L96:
+beq t1, s2, .L97
+.L98:
+mv a4, t2
+bne t1, s10, .L99
+.L100:
+mv a7, t2
+bne t1, s3, .L101
+.L102:
+mv a4, t2
+bne t1, s8, .L103
+.L104:
+bnez a6, .L105
+.L106:
+li a4, 0
+bnez t5, .L107
+.L108:
+beqz t1, .L109
+.L110:
+mv a7, t2
+li a4, 0
+bnez t5, .L111
+j .L112
+.L86:
+lw a7, 16(sp)
+or a7, a7, a4
+li a4, 0
+beqz t5, .L88
+.L87:
+lw a4, 20(sp)
+bne t1, s5, .L90
+.L89:
+or a7, t6, a4
+li a4, 0
+beqz t5, .L92
+.L91:
+lw a4, 24(sp)
+bne t1, ra, .L94
+.L93:
+or a7, s0, a4
+li a4, 0
+beqz t5, .L96
+.L95:
+mv a4, a1
+bne t1, s2, .L98
+.L97:
+or a7, s7, a4
+mv a4, t2
+beq t1, s10, .L100
+.L99:
+mv a4, a7
+mv a7, t2
+beq t1, s3, .L102
+.L101:
+mv a7, a4
+mv a4, t2
+beq t1, s8, .L104
+.L103:
+mv a4, a7
+beqz a6, .L106
+.L105:
+mv t0, a4
+li a4, 0
+beqz t5, .L108
+.L107:
+mv a4, s9
+bnez t1, .L110
+.L109:
+lw a7, 16(sp)
+or a7, a7, a4
+li a4, 0
+beqz t5, .L112
+.L111:
+lw a4, 20(sp)
+.L112:
+beq t1, s11, .L113
+li a4, 0
+bnez t5, .L114
+.L115:
+beq t1, s5, .L116
+.L117:
+li a4, 0
+bnez t5, .L118
+.L119:
+beq t1, ra, .L120
+.L121:
+mv a4, t2
+bne t1, s2, .L122
+.L123:
+mv a7, t2
+bne t1, s10, .L124
+.L125:
+mv a4, t2
+bne t1, s3, .L126
+.L127:
+mv a7, t2
+bne t1, s8, .L128
+.L129:
+bnez a6, .L130
+.L131:
+li a4, 0
+bnez t5, .L132
+.L133:
+beqz t1, .L134
+.L135:
+mv a7, t2
+li a4, 0
+bnez t5, .L136
+j .L137
+.L113:
+or a7, t6, a4
+li a4, 0
+beqz t5, .L115
+.L114:
+lw a4, 24(sp)
+bne t1, s5, .L117
+.L116:
+or a7, s0, a4
+li a4, 0
+beqz t5, .L119
+.L118:
+mv a4, a1
+bne t1, ra, .L121
+.L120:
+or a7, s7, a4
+mv a4, t2
+beq t1, s2, .L123
+.L122:
+mv a4, a7
+mv a7, t2
+beq t1, s10, .L125
+.L124:
+mv a7, a4
+mv a4, t2
+beq t1, s3, .L127
+.L126:
+mv a4, a7
+mv a7, t2
+beq t1, s8, .L129
+.L128:
+mv a7, a4
+beqz a6, .L131
+.L130:
+mv t3, a7
+li a4, 0
+beqz t5, .L133
+.L132:
+lw a4, 20(sp)
+bnez t1, .L135
+.L134:
+or a7, t6, a4
+li a4, 0
+beqz t5, .L137
+.L136:
+lw a4, 24(sp)
+.L137:
+beq t1, s11, .L138
+li a4, 0
+bnez t5, .L139
+.L140:
+beq t1, s5, .L141
+.L142:
+mv a4, t2
+bne t1, ra, .L143
+.L144:
+mv a7, t2
+bne t1, s2, .L145
+.L146:
+mv a4, t2
+bne t1, s10, .L147
+.L148:
+mv a7, t2
+bne t1, s3, .L149
+.L150:
+mv a4, t2
+bne t1, s8, .L151
+.L152:
+bnez a6, .L153
+.L154:
+li a4, 0
+bnez t5, .L155
+.L156:
+beqz t1, .L157
+.L158:
+mv a7, t2
+li a4, 0
+bnez t5, .L159
+j .L160
+.L138:
+or a7, s0, a4
+li a4, 0
+beqz t5, .L140
+.L139:
+mv a4, a1
+bne t1, s5, .L142
+.L141:
+or a7, s7, a4
+mv a4, t2
+beq t1, ra, .L144
+.L143:
+mv a4, a7
+mv a7, t2
+beq t1, s2, .L146
+.L145:
+mv a7, a4
+mv a4, t2
+beq t1, s10, .L148
+.L147:
+mv a4, a7
+mv a7, t2
+beq t1, s3, .L150
+.L149:
+mv a7, a4
+mv a4, t2
+beq t1, s8, .L152
+.L151:
+mv a4, a7
+beqz a6, .L154
+.L153:
+mv a0, a4
+li a4, 0
+beqz t5, .L156
+.L155:
+lw a4, 24(sp)
+bnez t1, .L158
+.L157:
+or a7, s0, a4
+li a4, 0
+beqz t5, .L160
+.L159:
+mv a4, a1
+.L160:
+beq t1, s11, .L161
+mv a4, t2
+bne t1, s5, .L162
+.L163:
+mv a7, t2
+bne t1, ra, .L164
+.L165:
+mv a4, t2
+bne t1, s2, .L166
+.L167:
+mv a7, t2
+bne t1, s10, .L168
+.L169:
+mv a4, t2
+bne t1, s3, .L170
+.L171:
+mv a7, t2
+bne t1, s8, .L172
+.L173:
+bnez a6, .L174
+.L175:
+li a4, 0
+bnez t5, .L176
+.L177:
+beqz t1, .L178
+.L179:
+mv a1, t2
+mv a4, t2
+bne t1, s11, .L180
+j .L181
+.L161:
+or a7, s7, a4
+mv a4, t2
+beq t1, s5, .L163
+.L162:
+mv a4, a7
+mv a7, t2
+beq t1, ra, .L165
+.L164:
+mv a7, a4
+mv a4, t2
+beq t1, s2, .L167
+.L166:
+mv a4, a7
+mv a7, t2
+beq t1, s10, .L169
+.L168:
+mv a7, a4
+mv a4, t2
+beq t1, s3, .L171
+.L170:
+mv a4, a7
+mv a7, t2
+beq t1, s8, .L173
+.L172:
+mv a7, a4
+beqz a6, .L175
+.L174:
+mv t4, a7
+li a4, 0
+beqz t5, .L177
+.L176:
+mv a4, a1
+bnez t1, .L179
+.L178:
+or a1, s7, a4
+mv a4, t2
+beq t1, s11, .L181
+.L180:
+mv a4, a1
+.L181:
+mv a7, t2
+bne t1, s5, .L182
+mv a1, t2
+beq t1, ra, .L183
+.L184:
+mv a1, a7
+.L183:
+lui a7, %hi(G.2)
+mv a4, t2
+beq t1, s2, .L185
+mv a4, a1
+.L185:
+mv a1, t2
+beq t1, s10, .L186
+mv a1, a4
+.L186:
+lw t5, %lo(G.2)(a7)
+mv a4, t2
+beq t1, s3, .L187
+mv a4, a1
+.L187:
+lui a7, %hi(G.3)
+slli t5, t5, 5
+beq t1, s8, .L188
+mv t2, a4
+.L188:
+lw t1, 8(sp)
+add t1, t1, t5
+beqz a6, .L189
+mv a3, t2
+.L189:
+lui a6, 16
+srli a1, s6, 16
+addi a6, a6, -1
+srli a4, s6, 24
+and t2, s6, a6
 srli t2, t2, 8
-sb t0, 8(a2)
-sb t2, 9(a2)
-sb t3, 10(a2)
-sb t1, 11(a2)
-srli t0, a7, 24
-srli t1, a7, 16
-srli a7, a7, 8
-sb a6, 12(a2)
-sb a7, 13(a2)
-sb t1, 14(a2)
-sb t0, 15(a2)
-srli a6, a5, 24
-srli a7, a5, 16
-srli a5, a5, 8
-sb a4, 0(a2)
-sb a5, 1(a2)
-sb a7, 2(a2)
-sb a6, 3(a2)
+sb s6, 0(a2)
+sb t2, 1(a2)
+sb a1, 2(a2)
+sb a4, 3(a2)
+and a1, s4, a6
+srli a4, s4, 16
+srli a1, a1, 8
+srli t2, s4, 24
+sb s4, 4(a2)
+sb a1, 5(a2)
+sb a4, 6(a2)
+sb t2, 7(a2)
+and a1, a5, a6
+srli a4, a5, 16
+srli a1, a1, 8
+srli t2, a5, 24
+sb a5, 8(a2)
+sb a1, 9(a2)
+sb a4, 10(a2)
+sb t2, 11(a2)
+and a1, t0, a6
+srli a4, t0, 16
+srli a1, a1, 8
+srli a5, t0, 24
+sb t0, 12(a2)
+sb a1, 13(a2)
+sb a4, 14(a2)
+sb a5, 15(a2)
+and a1, t3, a6
+srli a4, t3, 16
+srli a1, a1, 8
+srli a5, t3, 24
+sb t3, 16(a2)
+sb a1, 17(a2)
+sb a4, 18(a2)
+sb a5, 19(a2)
+and a1, a0, a6
+srli a4, a0, 16
+srli a1, a1, 8
+srli a5, a0, 24
+sb a0, 20(a2)
+sb a1, 21(a2)
+sb a4, 22(a2)
+sb a5, 23(a2)
+and a0, t4, a6
+srli a1, t4, 16
+srli a0, a0, 8
+srli a4, t4, 24
+sb t4, 24(a2)
+sb a0, 25(a2)
+sb a1, 26(a2)
+sb a4, 27(a2)
+and a0, a3, a6
+srli a1, a3, 16
+srli a0, a0, 8
 srli a4, a3, 24
-srli a5, a3, 16
-srli a3, a3, 8
-lui a6, %hi(G.3)
-sb a0, 4(a2)
-sb a3, 5(a2)
-sb a5, 6(a2)
-sb a4, 7(a2)
-sw a1, %lo(G.3)(a6)
-lw s0, 92(sp)
-lw s1, 88(sp)
-lw s2, 84(sp)
-lw s3, 80(sp)
-lw s4, 76(sp)
-addi sp, sp, 96
+sb a3, 28(a2)
+sb a0, 29(a2)
+sb a1, 30(a2)
+sb a4, 31(a2)
+sw t1, %lo(G.3)(a7)
+lw ra, 76(sp)
+lw s0, 72(sp)
+lw s1, 68(sp)
+lw s2, 64(sp)
+lw s3, 60(sp)
+lw s4, 56(sp)
+lw s5, 52(sp)
+lw s6, 48(sp)
+lw s7, 44(sp)
+lw s8, 40(sp)
+lw s9, 36(sp)
+lw s10, 32(sp)
+lw s11, 28(sp)
+addi sp, sp, 80
 ret
+.L182:
+mv a7, a4
+mv a1, t2
+bne t1, ra, .L184
+j .L183

Occurrences (1):

InputFunctionConfig
wide-scalar-shift-by-byte-multiple-legalization.ca43c377d3.ll (mutant of wide-scalar-shift-by-byte-multiple-legalization.ll)ashr_32bytes-mtriple=riscv32 -verify-machineinstrs

Generated 2026-10-15 08:05 UTC.