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

Run:main-04ca53e65f-20261014-105623
Kind:regression
Category:+783 insts: shl_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.deac45db71.ll (mutant of wide-scalar-shift-by-byte-multiple-legalization.ll) @shl_32bytes via llvm-extract
Config:-mtriple=riscv32 -verify-machineinstrs
Local check:reproduces at 04ca53e65f
Compiler Explorer:not uploaded (over --godbolt-limit or disabled)

Snippet:

; Function Attrs: nounwind
define void @shl_32bytes(ptr %src.ptr, ptr %byteOff.ptr, ptr %dst) #0 {
  %src = load i256, ptr %src.ptr, align 1
  %byteOff = load i256, ptr %byteOff.ptr, align 1
  %bitOff = shl i256 %byteOff, 3
  %res = shl i256 %src, %bitOff
  %B = shl i256 %src, %src
  store i256 %res, ptr %dst, align 1
  store i256 %B, ptr poison, align 4
  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,301 +1,1369 @@
-addi sp, sp, -192
-sw ra, 188(sp)
-sw s0, 184(sp)
-sw s1, 180(sp)
-sw s2, 176(sp)
-sw s3, 172(sp)
-sw s4, 168(sp)
-sw s5, 164(sp)
-sw s6, 160(sp)
-sw s7, 156(sp)
-sw s8, 152(sp)
-sw s9, 148(sp)
-sw s10, 144(sp)
-sw s11, 140(sp)
-lbu a5, 0(a1)
+addi sp, sp, -96
+sw ra, 92(sp)
+sw s0, 88(sp)
+sw s1, 84(sp)
+sw s2, 80(sp)
+sw s3, 76(sp)
+sw s4, 72(sp)
+sw s5, 68(sp)
+sw s6, 64(sp)
+sw s7, 60(sp)
+sw s8, 56(sp)
+sw s9, 52(sp)
+sw s10, 48(sp)
+sw s11, 44(sp)
 lbu a3, 1(a0)
-lbu a4, 2(a0)
-lbu a6, 3(a0)
-lbu a7, 0(a0)
+lbu a4, 0(a0)
+lbu a5, 3(a0)
+lbu a6, 2(a0)
+lbu a7, 3(a1)
+lbu t0, 1(a1)
+lbu t1, 2(a1)
+lbu a1, 0(a1)
 slli a3, a3, 8
+or a3, a3, a4
+slli a5, a5, 8
+or a4, a5, a6
+slli a7, a7, 8
+slli t0, t0, 8
+or a5, a7, t1
+or a1, t0, a1
+slli a5, a5, 16
 slli a4, a4, 16
-slli a6, a6, 24
+or a5, a5, a1
+or a1, a4, a3
+slli s8, a5, 3
+srli s10, s8, 5
+sll t2, a1, s8
+mv a4, t2
+beqz s10, .L0
+li a4, 0
+.L0:
+li a3, 0
+li a5, 1
+beq s10, a5, .L1
+mv a3, a4
+.L1:
+li a4, 0
+li a5, 2
+beq s10, a5, .L2
+mv a4, a3
+.L2:
+li a3, 0
+li ra, 4
+li a5, 3
+beq s10, a5, .L3
+mv a3, a4
+.L3:
+li a5, 0
+li s1, 5
+beq s10, ra, .L4
+mv a5, a3
+.L4:
+lbu a7, 7(a0)
+li a4, 0
+beq s10, s1, .L5
+mv a4, a5
+.L5:
+li a3, 0
+lbu a5, 5(a0)
+lbu a6, 6(a0)
+li t1, 6
+slli a7, a7, 8
+beq s10, t1, .L6
+mv a3, a4
+.L6:
+li a4, 0
 lbu t0, 4(a0)
-lbu t1, 5(a0)
-lbu t2, 6(a0)
-lbu t3, 7(a0)
-or a3, a3, a7
-or a4, a6, a4
-or a3, a4, a3
-slli t1, t1, 8
-lbu a4, 9(a0)
-slli t2, t2, 16
-slli t3, t3, 24
-or a6, t1, t0
-or a7, t3, t2
+li t3, 7
+or a6, a7, a6
+slli a5, a5, 8
+beq s10, t3, .L7
+mv a4, a3
+.L7:
+or a3, a5, t0
+slli a5, a6, 16
+andi s11, s8, 31
+mv a6, a1
+beqz s8, .L8
+mv a6, a4
+.L8:
+li a4, 0
+neg t3, s11
+or s2, a5, a3
+srl s7, a1, t3
+beqz s11, .L9
+mv a4, s7
+.L9:
+sll s0, s2, s8
+beqz s10, .L10
+li a3, 0
+j .L11
+.L10:
+or a3, s0, a4
+.L11:
+mv a4, t2
+li a5, 1
+beq s10, a5, .L12
+mv a4, a3
+.L12:
+li a3, 0
+li a5, 2
+beq s10, a5, .L13
+mv a3, a4
+.L13:
+li a5, 0
+li a4, 3
+beq s10, a4, .L14
+mv a5, a3
+.L14:
+li a4, 0
+beq s10, ra, .L15
+mv a4, a5
+.L15:
+sw a6, 32(sp)
+lbu a3, 11(a0)
+li a5, 0
+beq s10, s1, .L16
+mv a5, a4
+.L16:
+li a4, 0
+lbu a6, 9(a0)
+lbu a7, 10(a0)
+slli a3, a3, 8
+beq s10, t1, .L17
+mv a4, a5
+.L17:
+li a5, 0
 lbu t0, 8(a0)
-lbu t1, 10(a0)
-lbu t2, 11(a0)
-slli t3, a4, 8
-lbu t4, 12(a0)
-lbu t5, 13(a0)
-lbu t6, 14(a0)
-lbu s0, 15(a0)
-or a4, a7, a6
-or a6, t3, t0
+or a7, a3, a7
+slli a6, a6, 8
+li a3, 7
+beq s10, a3, .L18
+mv a5, a4
+.L18:
+or a3, a6, t0
+slli a7, a7, 16
+mv a4, s2
+beqz s8, .L19
+mv a4, a5
+.L19:
+sw a4, 28(sp)
+li a4, 0
+or s3, a7, a3
+srl t6, s2, t3
+beqz s11, .L20
+mv a4, t6
+.L20:
+sll s9, s3, s8
+beqz s10, .L21
+li a4, 0
+li a3, 0
+bnez s11, .L22
+j .L23
+.L21:
+or a4, s9, a4
+li a3, 0
+beqz s11, .L23
+.L22:
+mv a3, s7
+.L23:
+li a5, 1
+bne s10, a5, .L24
+or a4, s0, a3
+.L24:
+mv a3, t2
+li a5, 2
+beq s10, a5, .L25
+mv a3, a4
+.L25:
+li a5, 0
+li a4, 3
+beq s10, a4, .L26
+mv a5, a3
+.L26:
+li a4, 0
+beq s10, ra, .L27
+mv a4, a5
+.L27:
+lbu a3, 15(a0)
+li a5, 0
+beq s10, s1, .L28
+mv a5, a4
+.L28:
+li a4, 0
+lbu a6, 13(a0)
+lbu a7, 14(a0)
+slli a3, a3, 8
+beq s10, t1, .L29
+mv a4, a5
+.L29:
+li a5, 0
+lbu t0, 12(a0)
+or a7, a3, a7
+slli a6, a6, 8
+li a3, 7
+beq s10, a3, .L30
+mv a5, a4
+.L30:
+or a3, a6, t0
+slli a7, a7, 16
+mv a4, s3
+beqz s8, .L31
+mv a4, a5
+.L31:
+sw a4, 24(sp)
+li a4, 0
+or s4, a7, a3
+srl a3, s3, t3
+sw a3, 40(sp)
+beqz s11, .L32
+lw a4, 40(sp)
+.L32:
+sll t4, s4, s8
+beqz s10, .L33
+li a4, 0
+li a3, 0
+bnez s11, .L34
+j .L35
+.L33:
+or a4, t4, a4
+li a3, 0
+beqz s11, .L35
+.L34:
+mv a3, t6
+.L35:
+li a5, 1
+beq s10, a5, .L36
+li a3, 0
+bnez s11, .L37
+.L38:
+li a5, 2
+bne s10, a5, .L39
+.L40:
+or a4, s0, a3
+.L39:
+mv a3, t2
+li a5, 3
+beq s10, a5, .L41
+mv a3, a4
+.L41:
+li a4, 0
+beq s10, ra, .L42
+mv a4, a3
+.L42:
+lbu a3, 19(a0)
+li a5, 0
+beq s10, s1, .L43
+mv a5, a4
+.L43:
+li a4, 0
+lbu a6, 17(a0)
+lbu a7, 18(a0)
+slli a3, a3, 8
+beq s10, t1, .L44
+mv a4, a5
+.L44:
+li a5, 0
+lbu t0, 16(a0)
+or a7, a3, a7
+slli a6, a6, 8
+li a3, 7
+beq s10, a3, .L45
+mv a5, a4
+.L45:
+or a3, a6, t0
+slli a7, a7, 16
+mv a4, s4
+beqz s8, .L46
+mv a4, a5
+.L46:
+sw a4, 20(sp)
+li a6, 0
+or s5, a7, a3
+srl a5, s4, t3
+beqz s11, .L47
+mv a6, a5
+.L47:
+sll a4, s5, s8
+beqz s10, .L48
+li a6, 0
+li a3, 0
+bnez s11, .L49
+j .L50
+.L36:
+or a4, s9, a3
+li a3, 0
+beqz s11, .L38
+.L37:
+mv a3, s7
+li a5, 2
+beq s10, a5, .L40
+j .L39
+.L48:
+or a6, a4, a6
+li a3, 0
+beqz s11, .L50
+.L49:
+lw a3, 40(sp)
+.L50:
+li a7, 1
+beq s10, a7, .L51
+li a3, 0
+bnez s11, .L52
+.L53:
+li a7, 2
+beq s10, a7, .L54
+.L55:
+li a3, 0
+bnez s11, .L56
+.L57:
+li a7, 3
+bne s10, a7, .L58
+.L59:
+or a6, s0, a3
+.L58:
+sw t4, 36(sp)
+mv t0, t2
+beq s10, ra, .L60
+mv t0, a6
+.L60:
+li t4, 6
+lbu a3, 23(a0)
+li a7, 0
+beq s10, s1, .L61
+mv a7, t0
+.L61:
+li a6, 0
+lbu t0, 21(a0)
+lbu t1, 22(a0)
+slli a3, a3, 8
+beq s10, t4, .L62
+mv a6, a7
+.L62:
+li a7, 0
+lbu t5, 20(a0)
+or t1, a3, t1
+slli t0, t0, 8
+li a3, 7
+beq s10, a3, .L63
+mv a7, a6
+.L63:
+or a3, t0, t5
 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 t1, 17(a0)
-lbu t2, 18(a0)
-lbu t3, 16(a0)
-lbu s1, 19(a0)
-or t0, t5, t4
-or t4, s0, t6
-or a7, a7, a6
-or t0, t4, t0
-slli t1, t1, 8
-slli t2, t2, 16
-slli s1, s1, 24
-lbu a6, 21(a0)
-or t1, t1, t3
-or t2, s1, t2
-or t2, t2, t1
-lbu t1, 20(a0)
-lbu t3, 22(a0)
-lbu t4, 23(a0)
-slli a6, a6, 8
-lbu t5, 25(a0)
-lbu t6, 24(a0)
-lbu s0, 26(a0)
-or a6, a6, t1
-lbu t1, 27(a0)
-slli t3, t3, 16
-slli t4, t4, 24
-or t3, t4, t3
-slli t5, t5, 8
-or t4, t5, t6
-slli s0, s0, 16
-slli t1, t1, 24
+mv a6, s5
+beqz s8, .L64
+mv a6, a7
+.L64:
+sw a6, 16(sp)
+li t0, 0
+or s6, t1, a3
+srl a6, s5, t3
+beqz s11, .L65
+mv t0, a6
+.L65:
+sll a7, s6, s8
+beqz s10, .L66
+li t0, 0
+li a3, 0
+bnez s11, .L67
+j .L68
+.L51:
+or a6, t4, a3
+li a3, 0
+beqz s11, .L53
+.L52:
+mv a3, t6
+li a7, 2
+bne s10, a7, .L55
+.L54:
+or a6, s9, a3
+li a3, 0
+beqz s11, .L57
+.L56:
+mv a3, s7
+li a7, 3
+beq s10, a7, .L59
+j .L58
+.L66:
+or t0, a7, t0
+li a3, 0
+beqz s11, .L68
+.L67:
+mv a3, a5
+.L68:
+li t1, 1
+beq s10, t1, .L69
+li a3, 0
+beqz s11, .L70
+.L71:
+lw a3, 40(sp)
+.L70:
+li t1, 2
+sw a5, 0(sp)
+beq s10, t1, .L72
+li a3, 0
+bnez s11, .L73
+.L74:
+li t1, 3
+beq s10, t1, .L75
+.L76:
+li a3, 0
+beqz s11, .L77
+.L78:
+mv a3, s7
+.L77:
+sw s0, 4(sp)
+mv a5, s9
+bne s10, ra, .L79
+or t0, s0, a3
+.L79:
+mv s0, s7
+lbu a3, 27(a0)
+mv t1, t2
+li s9, 5
+beq s10, s1, .L80
+mv t1, t0
+.L80:
+li t0, 0
+lbu s1, 25(a0)
+lbu s7, 26(a0)
+slli a3, a3, 8
+beq s10, t4, .L81
+mv t0, t1
+.L81:
+li t1, 0
+lbu t5, 24(a0)
+or s7, a3, s7
+slli s1, s1, 8
+li a3, 7
+beq s10, a3, .L82
+mv t1, t0
+.L82:
+or a3, s1, t5
+slli s7, s7, 16
+mv t0, s6
+beqz s8, .L83
+mv t0, t1
+.L83:
+sw t0, 12(sp)
+li s1, 0
+or s7, s7, a3
+srl t0, s6, t3
+beqz s11, .L84
+mv s1, t0
+.L84:
+sll t1, s7, s8
+beqz s10, .L85
+li s1, 0
+li a3, 0
+bnez s11, .L86
+j .L87
+.L69:
+or t0, a4, a3
+li a3, 0
+bnez s11, .L71
+j .L70
+.L72:
+lw a5, 36(sp)
+or t0, a5, a3
+li a3, 0
+beqz s11, .L74
+.L73:
+mv a3, t6
+li t1, 3
+bne s10, t1, .L76
+.L75:
+or t0, s9, a3
+li a3, 0
+bnez s11, .L78
+j .L77
+.L85:
+or s1, t1, s1
+li a3, 0
+beqz s11, .L87
+.L86:
+mv a3, a6
+.L87:
+li t5, 1
+beq s10, t5, .L88
+li a3, 0
+bnez s11, .L89
+.L90:
+li t5, 2
+beq s10, t5, .L91
+.L92:
+li a3, 0
+bnez s11, .L93
+.L94:
+li t5, 3
+beq s10, t5, .L95
+.L96:
+li a3, 0
+bnez s11, .L97
+.L98:
+beq s10, ra, .L99
+.L100:
+li a3, 0
+bnez s11, .L101
+.L102:
+bne s10, s9, .L103
+.L104:
+lw s1, 4(sp)
+or s1, s1, a3
+.L103:
+lbu ra, 31(a0)
+mv s9, t2
+beq s10, t4, .L105
+mv s9, s1
+.L105:
+li s1, 0
 lbu t5, 29(a0)
-or t1, t1, s0
-lbu t6, 28(a0)
-lbu s0, 30(a0)
-lbu a0, 31(a0)
-or s1, t3, a6
-or s2, t1, t4
-slli t5, t5, 8
-lbu a6, 1(a1)
-lbu t1, 2(a1)
-lbu a1, 3(a1)
-slli s0, s0, 16
-slli a0, a0, 24
-or t3, t5, t6
-or a0, a0, s0
-or s5, a0, t3
-slli a6, a6, 8
-slli t1, t1, 16
-slli a1, a1, 24
-or a0, a6, a5
-or a1, a1, t1
-or a0, a1, a0
-sw zero, 24(sp)
-sw zero, 28(sp)
-sw zero, 32(sp)
-sw zero, 36(sp)
-sw zero, 8(sp)
-sw zero, 12(sp)
-sw zero, 16(sp)
-sw zero, 20(sp)
-sw t2, 56(sp)
-sw s1, 60(sp)
-sw s2, 64(sp)
-sw s5, 68(sp)
-andi a1, a0, 28
-addi a5, sp, 40
-sw a3, 40(sp)
-sw a4, 44(sp)
-sw a7, 48(sp)
-sw t0, 52(sp)
-sub t3, a5, a1
-lw s7, 0(t3)
-slli s8, a0, 3
-lw t4, 4(t3)
-andi a0, s8, 24
-lw t1, 8(t3)
-lw s0, 12(t3)
-xori s9, a0, 31
-srli a0, s7, 1
-sll a1, t4, s8
-srl a0, a0, s9
-or a0, a1, a0
-sll a5, s0, s8
-srli a6, t1, 1
-srl a6, a6, s9
-lw t6, 16(t3)
+lbu a3, 30(a0)
+slli ra, ra, 8
+li t4, 7
+beq s10, t4, .L106
+mv s1, s9
+.L106:
+lbu s9, 28(a0)
+slli a0, t5, 8
+or t5, ra, a3
+mv a3, s7
+beqz s8, .L107
+mv a3, s1
+.L107:
+sw a3, 8(sp)
+li s1, 0
+or a3, a0, s9
+slli t5, t5, 16
+li t4, 4
+beqz s11, .L108
+srl s1, s7, t3
+.L108:
+or t5, t5, a3
+beqz s10, .L109
+li t3, 0
+j .L110
+.L88:
+or s1, a7, a3
+li a3, 0
+beqz s11, .L90
+.L89:
+lw a3, 0(sp)
+li t5, 2
+bne s10, t5, .L92
+.L91:
+or s1, a4, a3
+li a3, 0
+beqz s11, .L94
+.L93:
+lw a3, 40(sp)
+li t5, 3
+bne s10, t5, .L96
+.L95:
+lw s1, 36(sp)
+or s1, s1, a3
+li a3, 0
+beqz s11, .L98
+.L97:
+mv a3, t6
+bne s10, ra, .L100
+.L99:
+or s1, a5, a3
+li a3, 0
+beqz s11, .L102
+.L101:
+mv a3, s0
+beq s10, s9, .L104
+j .L103
+.L109:
+sll a0, t5, s8
+or t3, a0, s1
+.L110:
+li s1, 5
+li a0, 0
+beqz s11, .L111
+mv a0, t0
+.L111:
+li a3, 1
+bne s10, a3, .L112
+or t3, t1, a0
+.L112:
+li t1, 6
+li a0, 0
+bnez s11, .L113
+li a3, 2
+beq s10, a3, .L114
+.L115:
+li a0, 0
+bnez s11, .L116
+.L117:
+li a3, 3
+beq s10, a3, .L118
+.L119:
+li a0, 0
+bnez s11, .L120
+.L121:
+beq s10, t4, .L122
+.L123:
+li a0, 0
+bnez s11, .L124
+.L125:
+beq s10, s1, .L126
+.L127:
+li a0, 0
+bnez s11, .L128
+.L129:
+beq s10, t1, .L130
+.L131:
+li a0, 7
+bne s10, a0, .L132
+.L133:
+mv s10, t5
+beqz s8, .L134
+.L135:
+mv s10, t2
+.L134:
+srli s11, a1, 5
+sll s9, a1, a1
+mv a3, s9
+beqz s11, .L136
+li a3, 0
+.L136:
+li a0, 0
+li a4, 1
+beq s11, a4, .L137
+mv a0, a3
+.L137:
+li a3, 0
+li a4, 2
+beq s11, a4, .L138
+mv a3, a0
+.L138:
+li a0, 0
+li a4, 3
+bne s11, a4, .L139
+li a3, 0
+bne s11, t4, .L140
+.L141:
+li a0, 0
+bne s11, s1, .L142
+.L143:
+li a4, 0
+beq s11, t1, .L144
+.L145:
+mv a4, a0
+.L144:
+li a3, 0
+li a0, 7
+beq s11, a0, .L146
+mv a3, a4
+.L146:
+andi ra, a1, 31
+mv a0, a1
+beqz a1, .L147
+mv a0, a3
+.L147:
+li a4, 0
+neg t3, ra
+srl s8, a1, t3
+beqz ra, .L148
+mv a4, s8
+.L148:
+sll a3, s2, a1
+sw a0, 36(sp)
+beqz s11, .L149
+li a4, 0
+j .L150
+.L113:
+mv a0, a6
+li a3, 2
+bne s10, a3, .L115
+.L114:
+or t3, a7, a0
+li a0, 0
+beqz s11, .L117
+.L116:
+lw a0, 0(sp)
+li a3, 3
+bne s10, a3, .L119
+.L118:
+or t3, a4, a0
+li a0, 0
+beqz s11, .L121
+.L120:
+lw a0, 40(sp)
+bne s10, t4, .L123
+.L122:
+lw a3, 36(sp)
+or t3, a3, a0
+li a0, 0
+beqz s11, .L125
+.L124:
+mv a0, t6
+bne s10, s1, .L127
+.L126:
+or t3, a5, a0
+li a0, 0
+beqz s11, .L129
+.L128:
+mv a0, s0
+bne s10, t1, .L131
+.L130:
+lw a3, 4(sp)
+or t3, a3, a0
+li a0, 7
+beq s10, a0, .L133
+.L132:
+mv t2, t3
+mv s10, t5
+bnez s8, .L135
+j .L134
+.L139:
+mv a0, a3
+li a3, 0
+beq s11, t4, .L141
+.L140:
+mv a3, a0
+li a0, 0
+beq s11, s1, .L143
+.L142:
+mv a0, a3
+li a4, 0
+bne s11, t1, .L145
+j .L144
+.L149:
+or a4, a3, a4
+.L150:
+mv a0, s9
+li a5, 1
+beq s11, a5, .L151
+mv a0, a4
+.L151:
+li a4, 0
+li a5, 2
+beq s11, a5, .L152
+mv a4, a0
+.L152:
+li a0, 0
+li a5, 3
+beq s11, a5, .L153
+mv a0, a4
+.L153:
+li a4, 0
+li a5, 4
+bne s11, a5, .L154
+li a0, 0
+bne s11, s1, .L155
+.L156:
+li a4, 0
+beq s11, t1, .L157
+.L158:
+mv a4, a0
+.L157:
+li a0, 0
+li a5, 7
+beq s11, a5, .L159
+mv a0, a4
+.L159:
+mv a4, s2
+beqz a1, .L160
+mv a4, a0
+.L160:
+sw a4, 4(sp)
+sw t5, 40(sp)
+li a4, 0
+srl t4, s2, t3
+beqz ra, .L161
+mv a4, t4
+.L161:
+sll t5, s3, a1
+beqz s11, .L162
+li a4, 0
+li a0, 0
+bnez ra, .L163
+j .L164
+.L154:
+mv a4, a0
+li a0, 0
+beq s11, s1, .L156
+.L155:
+mv a0, a4
+li a4, 0
+bne s11, t1, .L158
+j .L157
+.L162:
+or a4, t5, a4
+li a0, 0
+beqz ra, .L164
+.L163:
+mv a0, s8
+.L164:
+li a5, 1
+bne s11, a5, .L165
+or a4, a3, a0
+.L165:
+mv a0, s9
+li a5, 2
+beq s11, a5, .L166
+mv a0, a4
+.L166:
+li a4, 0
+li a5, 3
+beq s11, a5, .L167
+mv a4, a0
+.L167:
+li a0, 0
+li a5, 4
+bne s11, a5, .L168
+li a4, 0
+bne s11, s1, .L169
+.L170:
+li a0, 0
+beq s11, t1, .L171
+.L172:
+mv a0, a4
+.L171:
+li a4, 0
+li a5, 7
+beq s11, a5, .L173
+mv a4, a0
+.L173:
+mv a0, s3
+beqz a1, .L174
+mv a0, a4
+.L174:
+li a4, 0
+srl t6, s3, t3
+beqz ra, .L175
+mv a4, t6
+.L175:
+sll s0, s4, a1
+sw a0, 0(sp)
+beqz s11, .L176
+li a4, 0
+li a0, 0
+bnez ra, .L177
+j .L178
+.L168:
+mv a0, a4
+li a4, 0
+beq s11, s1, .L170
+.L169:
+mv a4, a0
+li a0, 0
+bne s11, t1, .L172
+j .L171
+.L176:
+or a4, s0, a4
+li a0, 0
+beqz ra, .L178
+.L177:
+mv a0, t4
+.L178:
+li a5, 1
+beq s11, a5, .L179
+li a0, 0
+bnez ra, .L180
+.L181:
+li a5, 2
+bne s11, a5, .L182
+.L183:
+or a4, a3, a0
+.L182:
+mv a0, s9
+li a5, 3
+beq s11, a5, .L184
+mv a0, a4
+.L184:
+li a4, 0
+li a5, 4
+bne s11, a5, .L185
+li a0, 0
+bne s11, s1, .L186
+.L187:
+li a4, 0
+beq s11, t1, .L188
+.L189:
+mv a4, a0
+.L188:
+li a0, 0
+li a5, 7
+beq s11, a5, .L190
+mv a0, a4
+.L190:
+mv s3, s4
+beqz a1, .L191
+mv s3, a0
+.L191:
+li a6, 0
+srl a4, s4, t3
+beqz ra, .L192
+mv a6, a4
+.L192:
+sll a5, s5, a1
+beqz s11, .L193
+li a6, 0
+li a0, 0
+bnez ra, .L194
+j .L195
+.L179:
+or a4, t5, a0
+li a0, 0
+beqz ra, .L181
+.L180:
+mv a0, s8
+li a5, 2
+beq s11, a5, .L183
+j .L182
+.L185:
+mv a4, a0
+li a0, 0
+beq s11, s1, .L187
+.L186:
+mv a0, a4
+li a4, 0
+bne s11, t1, .L189
+j .L188
+.L193:
 or a6, a5, a6
-lw s10, 20(t3)
-sll t1, t1, s8
-srli t4, t4, 1
-srl t4, t4, s9
-lw s6, 24(t3)
-lw s3, 28(t3)
-srli t3, t6, 1
-sll t5, s10, s8
-srl s4, t3, s9
-or t3, t1, t4
-or t4, t5, s4
-sll t6, t6, s8
-srli s0, s0, 1
-srl s0, s0, s9
-srli s11, s6, 1
-sll s4, s3, s8
-srl s3, s11, s9
-or s0, t6, s0
-or s3, s4, s3
-sll s6, s6, s8
-srli s10, s10, 1
-sw zero, 88(sp)
-sw zero, 92(sp)
-sw zero, 96(sp)
-sw zero, 100(sp)
-sw zero, 72(sp)
-sw zero, 76(sp)
-sw zero, 80(sp)
-sw zero, 84(sp)
-srli s11, a3, 3
-sw t2, 120(sp)
-sw s1, 124(sp)
-sw s2, 128(sp)
-sw s5, 132(sp)
-andi t2, s11, 28
-addi s1, sp, 104
-sw a3, 104(sp)
-sw a4, 108(sp)
-sw a7, 112(sp)
-sw t0, 116(sp)
-sub s1, s1, t2
-srl a4, s10, s9
-lw s10, 0(s1)
-or s9, s6, a4
-lw t0, 4(s1)
-sll a7, s7, s8
-andi a4, a3, 31
-xori s7, a4, 31
-lw t2, 8(s1)
-lw s2, 12(s1)
-srli a4, s10, 1
-sll s5, t0, a3
-srl a4, a4, s7
-or a4, s5, a4
-srli t0, t0, 1
-sll s5, t2, a3
-srl t0, t0, s7
-sll s8, s2, a3
-srli t2, t2, 1
-srl t2, t2, s7
-lw s11, 16(s1)
-or t0, s5, t0
-or t2, s8, t2
-srli s2, s2, 1
-lw s5, 20(s1)
-lw s8, 24(s1)
-lw ra, 28(s1)
-sll s1, s11, a3
-srl s2, s2, s7
-or s1, s1, s2
-srli s2, s11, 1
-sll s11, s5, a3
-srl s2, s2, s7
-or s2, s11, s2
-srli s5, s5, 1
-sll s11, s8, a3
-srl s5, s5, s7
-or s5, s11, s5
-srli s8, s8, 1
-sll s11, ra, a3
-srl s7, s8, s7
-or s7, s11, s7
-sll a3, s10, a3
-srli s6, s6, 24
-srli s8, s9, 16
-srli s10, s9, 8
-sb s9, 24(a2)
-sb s10, 25(a2)
-sb s8, 26(a2)
-sb s6, 27(a2)
-srli s4, s4, 24
-srli s6, s3, 16
-srli s8, s3, 8
-sb s3, 28(a2)
-sb s8, 29(a2)
-sb s6, 30(a2)
-sb s4, 31(a2)
-srli t6, t6, 24
-srli s3, s0, 16
-srli s4, s0, 8
-sb s0, 16(a2)
-sb s4, 17(a2)
-sb s3, 18(a2)
-sb t6, 19(a2)
-srli t5, t5, 24
-srli t6, t4, 16
-srli s0, t4, 8
-sb t4, 20(a2)
-sb s0, 21(a2)
-sb t6, 22(a2)
-sb t5, 23(a2)
-srli t1, t1, 24
-srli t4, t3, 16
-srli t5, t3, 8
-sb t3, 8(a2)
-sb t5, 9(a2)
-sb t4, 10(a2)
-sb t1, 11(a2)
-srli a5, a5, 24
-srli t1, a6, 16
-srli t3, a6, 8
-sb a6, 12(a2)
-sb t3, 13(a2)
-sb t1, 14(a2)
-sb a5, 15(a2)
-srli a5, a7, 24
-srli a6, a7, 16
-srli t1, a7, 8
-sb a7, 0(a2)
-sb t1, 1(a2)
-sb a6, 2(a2)
-sb a5, 3(a2)
-srli a1, a1, 24
-srli a5, a0, 16
-srli a6, a0, 8
-sb a0, 4(a2)
-sb a6, 5(a2)
-sb a5, 6(a2)
-sb a1, 7(a2)
-sw s7, 0(a0)
-sw s5, 0(a0)
-sw s2, 0(a0)
-sw s1, 0(a0)
-sw t2, 0(a0)
-sw t0, 0(a0)
-sw a4, 0(a0)
-sw a3, 0(a0)
-lw ra, 188(sp)
-lw s0, 184(sp)
-lw s1, 180(sp)
-lw s2, 176(sp)
-lw s3, 172(sp)
-lw s4, 168(sp)
-lw s5, 164(sp)
-lw s6, 160(sp)
-lw s7, 156(sp)
-lw s8, 152(sp)
-lw s9, 148(sp)
-lw s10, 144(sp)
-lw s11, 140(sp)
-addi sp, sp, 192
+li a0, 0
+beqz ra, .L195
+.L194:
+mv a0, t6
+.L195:
+li a7, 1
+beq s11, a7, .L196
+li a0, 0
+bnez ra, .L197
+.L198:
+li a7, 2
+beq s11, a7, .L199
+.L200:
+li a0, 0
+bnez ra, .L201
+.L202:
+li a7, 3
+bne s11, a7, .L203
+.L204:
+or a6, a3, a0
+.L203:
+mv a0, s9
+li a7, 4
+bne s11, a7, .L205
+li a6, 0
+bne s11, s1, .L206
+.L207:
+li a0, 0
+beq s11, t1, .L208
+.L209:
+mv a0, a6
+.L208:
+li a6, 0
+li a7, 7
+beq s11, a7, .L210
+mv a6, a0
+.L210:
+mv s4, s5
+beqz a1, .L211
+mv s4, a6
+.L211:
+li t0, 0
+srl a6, s5, t3
+beqz ra, .L212
+mv t0, a6
+.L212:
+sll a7, s6, a1
+beqz s11, .L213
+li t0, 0
+li a0, 0
+bnez ra, .L214
+j .L215
+.L196:
+or a6, s0, a0
+li a0, 0
+beqz ra, .L198
+.L197:
+mv a0, t4
+li a7, 2
+bne s11, a7, .L200
+.L199:
+or a6, t5, a0
+li a0, 0
+beqz ra, .L202
+.L201:
+mv a0, s8
+li a7, 3
+beq s11, a7, .L204
+j .L203
+.L205:
+mv a0, a6
+li a6, 0
+beq s11, s1, .L207
+.L206:
+mv a6, a0
+li a0, 0
+bne s11, t1, .L209
+j .L208
+.L213:
+or t0, a7, t0
+li a0, 0
+beqz ra, .L215
+.L214:
+mv a0, a4
+.L215:
+li t2, 1
+beq s11, t2, .L216
+li a0, 0
+bnez ra, .L217
+.L218:
+li t2, 2
+beq s11, t2, .L219
+.L220:
+li a0, 0
+bnez ra, .L221
+.L222:
+li t2, 3
+beq s11, t2, .L223
+.L224:
+li a0, 0
+bnez ra, .L225
+.L226:
+li t2, 4
+beq s11, t2, .L227
+.L228:
+mv a0, s9
+bne s11, s1, .L229
+.L230:
+li t0, 0
+beq s11, t1, .L231
+.L232:
+mv t0, a0
+.L231:
+li a0, 0
+li t1, 7
+beq s11, t1, .L233
+mv a0, t0
+.L233:
+mv s5, s6
+beqz a1, .L234
+mv s5, a0
+.L234:
+li s2, 6
+li t2, 0
+srl t0, s6, t3
+beqz ra, .L235
+mv t2, t0
+.L235:
+sll t1, s7, a1
+beqz s11, .L236
+li s6, 0
+li a0, 0
+bnez ra, .L237
+j .L238
+.L216:
+or t0, a5, a0
+li a0, 0
+beqz ra, .L218
+.L217:
+mv a0, t6
+li t2, 2
+bne s11, t2, .L220
+.L219:
+or t0, s0, a0
+li a0, 0
+beqz ra, .L222
+.L221:
+mv a0, t4
+li t2, 3
+bne s11, t2, .L224
+.L223:
+or t0, t5, a0
+li a0, 0
+beqz ra, .L226
+.L225:
+mv a0, s8
+li t2, 4
+bne s11, t2, .L228
+.L227:
+or t0, a3, a0
+mv a0, s9
+beq s11, s1, .L230
+.L229:
+mv a0, t0
+li t0, 0
+bne s11, t1, .L232
+j .L231
+.L236:
+or s6, t1, t2
+li a0, 0
+beqz ra, .L238
+.L237:
+mv a0, a6
+.L238:
+li t2, 1
+beq s11, t2, .L239
+li a0, 0
+bnez ra, .L240
+.L241:
+li t2, 2
+beq s11, t2, .L242
+.L243:
+li a0, 0
+bnez ra, .L244
+.L245:
+li t2, 3
+beq s11, t2, .L246
+.L247:
+li a0, 0
+bnez ra, .L248
+.L249:
+li t2, 4
+beq s11, t2, .L250
+.L251:
+li a0, 0
+bnez ra, .L252
+.L253:
+beq s11, s1, .L254
+.L255:
+mv a0, s9
+beq s11, s2, .L256
+.L257:
+mv a0, s6
+.L256:
+li t2, 0
+li s2, 7
+bne s11, s2, .L258
+mv s6, s7
+bnez a1, .L259
+.L260:
+li t2, 0
+bnez ra, .L261
+.L262:
+beqz s11, .L263
+.L264:
+li t3, 0
+li a0, 0
+bnez ra, .L265
+j .L266
+.L239:
+or s6, a7, a0
+li a0, 0
+beqz ra, .L241
+.L240:
+mv a0, a4
+li t2, 2
+bne s11, t2, .L243
+.L242:
+or s6, a5, a0
+li a0, 0
+beqz ra, .L245
+.L244:
+mv a0, t6
+li t2, 3
+bne s11, t2, .L247
+.L246:
+or s6, s0, a0
+li a0, 0
+beqz ra, .L249
+.L248:
+mv a0, t4
+li t2, 4
+bne s11, t2, .L251
+.L250:
+or s6, t5, a0
+li a0, 0
+beqz ra, .L253
+.L252:
+mv a0, s8
+bne s11, s1, .L255
+.L254:
+or s6, a3, a0
+mv a0, s9
+bne s11, s2, .L257
+j .L256
+.L258:
+mv t2, a0
+mv s6, s7
+beqz a1, .L260
+.L259:
+mv s6, t2
+li t2, 0
+beqz ra, .L262
+.L261:
+srl t2, s7, t3
+bnez s11, .L264
+.L263:
+lw a0, 40(sp)
+sll a0, a0, a1
+or t3, a0, t2
+li a0, 0
+beqz ra, .L266
+.L265:
+mv a0, t0
+.L266:
+li t0, 1
+bne s11, t0, .L267
+or t3, t1, a0
+.L267:
+li t0, 6
+li a0, 0
+beqz ra, .L268
+mv a0, a6
+.L268:
+li a6, 2
+bne s11, a6, .L269
+or t3, a7, a0
+.L269:
+lw a6, 32(sp)
+li a0, 0
+bnez ra, .L270
+li a4, 3
+beq s11, a4, .L271
+.L272:
+li a0, 0
+bnez ra, .L273
+.L274:
+li a4, 4
+beq s11, a4, .L275
+.L276:
+li a0, 0
+bnez ra, .L277
+.L278:
+bne s11, s1, .L279
+.L280:
+or t3, t5, a0
+.L279:
+lw t1, 40(sp)
+li a0, 0
+beqz ra, .L281
+mv a0, s8
+.L281:
+bne s11, t0, .L282
+or t3, a3, a0
+.L282:
+li a0, 7
+lw a7, 12(sp)
+beq s11, a0, .L283
+mv s9, t3
+.L283:
+beqz a1, .L284
+mv t1, s9
+.L284:
+lui a1, 16
+addi a1, a1, -1
+srli a0, a6, 16
+and a3, a6, a1
+srli a4, a6, 24
+srli a3, a3, 8
+sb a6, 0(a2)
+sb a3, 1(a2)
+sb a0, 2(a2)
+sb a4, 3(a2)
+lw a5, 28(sp)
+srli a0, a5, 16
+and a3, a5, a1
+srli a3, a3, 8
+srli a4, a5, 24
+sb a5, 4(a2)
+sb a3, 5(a2)
+sb a0, 6(a2)
+sb a4, 7(a2)
+lw a5, 24(sp)
+srli a0, a5, 16
+and a3, a5, a1
+srli a3, a3, 8
+srli a4, a5, 24
+sb a5, 8(a2)
+sb a3, 9(a2)
+sb a0, 10(a2)
+sb a4, 11(a2)
+lw a5, 20(sp)
+srli a0, a5, 16
+and a3, a5, a1
+srli a3, a3, 8
+srli a4, a5, 24
+sb a5, 12(a2)
+sb a3, 13(a2)
+sb a0, 14(a2)
+sb a4, 15(a2)
+lw a5, 16(sp)
+srli a0, a5, 16
+and a3, a5, a1
+srli a3, a3, 8
+srli a4, a5, 24
+sb a5, 16(a2)
+sb a3, 17(a2)
+sb a0, 18(a2)
+sb a4, 19(a2)
+srli a0, a7, 16
+and a3, a7, a1
+srli a3, a3, 8
+srli a4, a7, 24
+sb a7, 20(a2)
+sb a3, 21(a2)
+sb a0, 22(a2)
+sb a4, 23(a2)
+lw a5, 8(sp)
+srli a0, a5, 16
+and a3, a5, a1
+srli a3, a3, 8
+srli a4, a5, 24
+sb a5, 24(a2)
+sb a3, 25(a2)
+sb a0, 26(a2)
+sb a4, 27(a2)
+srli a0, s10, 16
+and a1, s10, a1
+srli a1, a1, 8
+srli a3, s10, 24
+sb s10, 28(a2)
+sb a1, 29(a2)
+sb a0, 30(a2)
+sb a3, 31(a2)
+lw a0, 36(sp)
+sw a0, 0(a0)
+lw a0, 4(sp)
+sw a0, 4(a0)
+lw a0, 0(sp)
+sw a0, 8(a0)
+sw s3, 12(a0)
+sw s4, 16(a0)
+sw s5, 20(a0)
+sw s6, 24(a0)
+sw t1, 28(a0)
+lw ra, 92(sp)
+lw s0, 88(sp)
+lw s1, 84(sp)
+lw s2, 80(sp)
+lw s3, 76(sp)
+lw s4, 72(sp)
+lw s5, 68(sp)
+lw s6, 64(sp)
+lw s7, 60(sp)
+lw s8, 56(sp)
+lw s9, 52(sp)
+lw s10, 48(sp)
+lw s11, 44(sp)
+addi sp, sp, 96
 ret
+.L270:
+mv a0, a4
+li a4, 3
+bne s11, a4, .L272
+.L271:
+or t3, a5, a0
+li a0, 0
+beqz ra, .L274
+.L273:
+mv a0, t6
+li a4, 4
+bne s11, a4, .L276
+.L275:
+or t3, s0, a0
+li a0, 0
+beqz ra, .L278
+.L277:
+mv a0, t4
+beq s11, s1, .L280
+j .L279

Occurrences (1):

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

Generated 2026-10-15 08:05 UTC.