Skip to content

Instantly share code, notes, and snippets.

@asb
Created August 4, 2022 10:37
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save asb/0ccd53d0c4c14355980478c9d1e4e11c to your computer and use it in GitHub Desktop.
Save asb/0ccd53d0c4c14355980478c9d1e4e11c to your computer and use it in GitHub Desktop.
diff --git a/output_rv64imafdc_lp64_O0/mode-dependent-address.s b/output_rv64imafdc_lp64_O0/mode-dependent-address.s
index 843bb8a10b..19bff2e901 100644
--- a/output_rv64imafdc_lp64_O0/mode-dependent-address.s
+++ b/output_rv64imafdc_lp64_O0/mode-dependent-address.s
@@ -114,10 +114,11 @@ main: # @main
j .LBB1_2
.LBB1_2: # %for.body
# in Loop: Header=BB1_1 Depth=1
- lw a0, -24(s0)
+ lwu a0, -24(s0)
+ sext.w a2, a0
lui a1, %hi(arg4)
addi a1, a1, %lo(arg4)
- add a1, a1, a0
+ add a1, a1, a2
sb a0, 0(a1)
lw a2, -24(s0)
lui a1, %hi(arg1)
diff --git a/output_rv64imafdc_lp64_O0/pr53645.s b/output_rv64imafdc_lp64_O0/pr53645.s
index 9f6f143909..854ac29016 100644
--- a/output_rv64imafdc_lp64_O0/pr53645.s
+++ b/output_rv64imafdc_lp64_O0/pr53645.s
@@ -1372,12 +1372,12 @@ main: # @main
lw a2, -100(s0)
slli a2, a2, 4
add a1, a1, a2
- lwu a1, 0(a1)
- lui a2, 171
- addiw a2, a2, -1365
- slli a2, a2, 12
- addi a2, a2, -1365
- mul a2, a1, a2
+ lw a1, 0(a1)
+ slli a2, a1, 32
+ lui a3, 699051
+ addiw a3, a3, -1365
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a3, a2, 33
slliw a2, a3, 1
addw a2, a2, a3
@@ -1392,12 +1392,12 @@ main: # @main
lui a1, %hi(u)
addi a1, a1, %lo(u)
add a1, a1, a2
- lwu a1, 12(a1)
- lui a2, 171
- addiw a2, a2, -1365
- slli a2, a2, 12
- addi a2, a2, -1365
- mul a2, a1, a2
+ lw a1, 12(a1)
+ slli a2, a1, 32
+ lui a3, 699051
+ addiw a3, a3, -1365
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a3, a2, 33
slliw a2, a3, 1
addw a2, a2, a3
@@ -1417,12 +1417,12 @@ main: # @main
addi a1, a1, %lo(u)
slli a2, a2, 4
add a1, a1, a2
- lwu a1, 8(a1)
- lui a2, 171
- addiw a2, a2, -1365
- slli a2, a2, 12
- addi a2, a2, -1365
- mul a2, a1, a2
+ lw a1, 8(a1)
+ slli a2, a1, 32
+ lui a3, 699051
+ addiw a3, a3, -1365
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a3, a2, 33
slliw a2, a3, 1
addw a2, a2, a3
@@ -1437,12 +1437,12 @@ main: # @main
lui a1, %hi(u)
addi a1, a1, %lo(u)
add a1, a1, a2
- lwu a1, 4(a1)
- lui a2, 171
- addiw a2, a2, -1365
- slli a2, a2, 12
- addi a2, a2, -1365
- mul a2, a1, a2
+ lw a1, 4(a1)
+ slli a2, a1, 32
+ lui a3, 699051
+ addiw a3, a3, -1365
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a3, a2, 33
slliw a2, a3, 1
addw a2, a2, a3
@@ -1552,12 +1552,12 @@ main: # @main
lw a2, -100(s0)
slli a2, a2, 4
add a1, a1, a2
- lwu a1, 0(a1)
- lui a2, 171
- addiw a2, a2, -1365
- slli a2, a2, 12
- addi a2, a2, -1365
- mul a2, a1, a2
+ lw a1, 0(a1)
+ slli a2, a1, 32
+ lui a3, 699051
+ addiw a3, a3, -1365
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a2, a2, 34
li a3, 6
mulw a2, a2, a3
@@ -1572,12 +1572,12 @@ main: # @main
lui a1, %hi(u)
addi a1, a1, %lo(u)
add a1, a1, a2
- lwu a1, 12(a1)
- lui a2, 205
- addiw a2, a2, -819
- slli a2, a2, 12
- addi a2, a2, -819
- mul a2, a1, a2
+ lw a1, 12(a1)
+ slli a2, a1, 32
+ lui a3, 838861
+ addiw a3, a3, -819
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a3, a2, 34
slliw a2, a3, 2
addw a2, a2, a3
@@ -1597,12 +1597,12 @@ main: # @main
addi a1, a1, %lo(u)
slli a2, a2, 4
add a1, a1, a2
- lwu a1, 8(a1)
- lui a2, 171
- addiw a2, a2, -1365
- slli a2, a2, 12
- addi a2, a2, -1365
- mul a2, a1, a2
+ lw a1, 8(a1)
+ slli a2, a1, 32
+ lui a3, 699051
+ addiw a3, a3, -1365
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a2, a2, 34
li a3, 6
mulw a2, a2, a3
@@ -1617,12 +1617,12 @@ main: # @main
lui a1, %hi(u)
addi a1, a1, %lo(u)
add a1, a1, a2
- lwu a1, 4(a1)
- lui a2, 205
- addiw a2, a2, -819
- slli a2, a2, 12
- addi a2, a2, -819
- mul a2, a1, a2
+ lw a1, 4(a1)
+ slli a2, a1, 32
+ lui a3, 838861
+ addiw a3, a3, -819
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a3, a2, 34
slliw a2, a3, 2
addw a2, a2, a3
@@ -1732,8 +1732,8 @@ main: # @main
lw a2, -100(s0)
slli a2, a2, 4
add a1, a1, a2
- lwu a1, 0(a1)
- srli a2, a1, 1
+ lw a1, 0(a1)
+ srliw a2, a1, 1
lui a3, 299593
slli a3, a3, 1
addi a3, a3, 1171
@@ -1752,12 +1752,12 @@ main: # @main
lui a1, %hi(u)
addi a1, a1, %lo(u)
add a1, a1, a2
- lwu a1, 12(a1)
- lui a2, 171
- addiw a2, a2, -1365
- slli a2, a2, 12
- addi a2, a2, -1365
- mul a2, a1, a2
+ lw a1, 12(a1)
+ slli a2, a1, 32
+ lui a3, 699051
+ addiw a3, a3, -1365
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a2, a2, 34
li a3, 6
mulw a2, a2, a3
@@ -1777,8 +1777,8 @@ main: # @main
addi a1, a1, %lo(u)
slli a2, a2, 4
add a1, a1, a2
- lwu a1, 8(a1)
- srli a2, a1, 1
+ lw a1, 8(a1)
+ srliw a2, a1, 1
lui a3, 299593
slli a3, a3, 1
addi a3, a3, 1171
@@ -1797,8 +1797,8 @@ main: # @main
lui a1, %hi(u)
addi a1, a1, %lo(u)
add a1, a1, a2
- lwu a1, 4(a1)
- srli a2, a1, 1
+ lw a1, 4(a1)
+ srliw a2, a1, 1
lui a3, 299593
slli a3, a3, 1
addi a3, a3, 1171
@@ -1828,10 +1828,12 @@ main: # @main
lw a2, -100(s0)
slli a2, a2, 4
add a1, a1, a2
- lwu a1, 0(a1)
- lui a2, 149797
- addiw a2, a2, -1755
- mul a2, a1, a2
+ lw a1, 0(a1)
+ slli a2, a1, 32
+ lui a3, 149797
+ addiw a3, a3, -1755
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a2, a2, 32
subw a1, a1, a2
srliw a1, a1, 1
@@ -1847,10 +1849,12 @@ main: # @main
lui a1, %hi(u)
addi a1, a1, %lo(u)
add a1, a1, a2
- lwu a1, 12(a1)
- lui a2, 149797
- addiw a2, a2, -1755
- mul a2, a1, a2
+ lw a1, 12(a1)
+ slli a2, a1, 32
+ lui a3, 149797
+ addiw a3, a3, -1755
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a2, a2, 32
subw a1, a1, a2
srliw a1, a1, 1
@@ -1871,10 +1875,12 @@ main: # @main
addi a1, a1, %lo(u)
slli a2, a2, 4
add a1, a1, a2
- lwu a1, 8(a1)
- lui a2, 149797
- addiw a2, a2, -1755
- mul a2, a1, a2
+ lw a1, 8(a1)
+ slli a2, a1, 32
+ lui a3, 149797
+ addiw a3, a3, -1755
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a2, a2, 32
subw a1, a1, a2
srliw a1, a1, 1
@@ -1890,10 +1896,12 @@ main: # @main
lui a1, %hi(u)
addi a1, a1, %lo(u)
add a1, a1, a2
- lwu a1, 4(a1)
- lui a2, 149797
- addiw a2, a2, -1755
- mul a2, a1, a2
+ lw a1, 4(a1)
+ slli a2, a1, 32
+ lui a3, 149797
+ addiw a3, a3, -1755
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a2, a2, 32
subw a1, a1, a2
srliw a1, a1, 1
@@ -1920,10 +1928,12 @@ main: # @main
lw a2, -100(s0)
slli a2, a2, 4
add a1, a1, a2
- lwu a1, 0(a1)
- lui a2, 149797
- addiw a2, a2, -1755
- mul a2, a1, a2
+ lw a1, 0(a1)
+ slli a2, a1, 32
+ lui a3, 149797
+ addiw a3, a3, -1755
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a3, a2, 32
subw a2, a1, a3
srliw a2, a2, 1
@@ -1942,10 +1952,12 @@ main: # @main
lui a1, %hi(u)
addi a1, a1, %lo(u)
add a1, a1, a2
- lwu a1, 12(a1)
- lui a2, 149797
- addiw a2, a2, -1755
- mul a2, a1, a2
+ lw a1, 12(a1)
+ slli a2, a1, 32
+ lui a3, 149797
+ addiw a3, a3, -1755
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a3, a2, 32
subw a2, a1, a3
srliw a2, a2, 1
@@ -1969,10 +1981,12 @@ main: # @main
addi a1, a1, %lo(u)
slli a2, a2, 4
add a1, a1, a2
- lwu a1, 8(a1)
- lui a2, 149797
- addiw a2, a2, -1755
- mul a2, a1, a2
+ lw a1, 8(a1)
+ slli a2, a1, 32
+ lui a3, 149797
+ addiw a3, a3, -1755
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a3, a2, 32
subw a2, a1, a3
srliw a2, a2, 1
@@ -1991,10 +2005,12 @@ main: # @main
lui a1, %hi(u)
addi a1, a1, %lo(u)
add a1, a1, a2
- lwu a1, 4(a1)
- lui a2, 149797
- addiw a2, a2, -1755
- mul a2, a1, a2
+ lw a1, 4(a1)
+ slli a2, a1, 32
+ lui a3, 149797
+ addiw a3, a3, -1755
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a3, a2, 32
subw a2, a1, a3
srliw a2, a2, 1
@@ -2231,8 +2247,8 @@ main: # @main
addi a1, a1, %lo(s)
slli a2, a2, 4
add a1, a1, a2
- lwu a1, 8(a1)
- srli a2, a1, 31
+ lw a1, 8(a1)
+ srliw a2, a1, 31
addw a1, a1, a2
sraiw a1, a1, 1
bne a0, a1, .LBB24_95
@@ -2297,8 +2313,8 @@ main: # @main
addi a1, a1, %lo(s)
slli a2, a2, 4
add a1, a1, a2
- lwu a1, 8(a1)
- srli a2, a1, 31
+ lw a1, 8(a1)
+ srliw a2, a1, 31
add a2, a2, a1
andi a2, a2, -2
subw a1, a1, a2
diff --git a/output_rv64imafdc_lp64_O1/pr23135.s b/output_rv64imafdc_lp64_O1/pr23135.s
index 9d13784c07..8167879d43 100644
--- a/output_rv64imafdc_lp64_O1/pr23135.s
+++ b/output_rv64imafdc_lp64_O1/pr23135.s
@@ -33,164 +33,179 @@ main: # @main
sd s3, 24(sp) # 8-byte Folded Spill
sd s4, 16(sp) # 8-byte Folded Spill
sd s5, 8(sp) # 8-byte Folded Spill
+ sd s6, 0(sp) # 8-byte Folded Spill
lui a0, %hi(i)
lw a4, %lo(i)(a0)
lw a5, %lo(i+4)(a0)
lui a0, %hi(j)
- lw a2, %lo(j)(a0)
- lw a3, %lo(j+4)(a0)
- add a1, a2, a4
- add s1, a3, a5
- lui a0, %hi(res)
- sw s1, %lo(res+4)(a0)
- xori s0, a1, 160
- xori s1, s1, 113
- or s1, s1, s0
- sext.w s1, s1
- sw a1, %lo(res)(a0)
- bnez s1, .LBB1_12
+ lw s0, %lo(j+4)(a0)
+ lw s1, %lo(j)(a0)
+ addw a1, s0, a5
+ addw s4, s1, a4
+ lui a2, %hi(res)
+ sw s4, %lo(res)(a2)
+ sw a1, %lo(res+4)(a2)
+ lw a3, %lo(res)(a2)
+ lw a0, %lo(res+4)(a2)
+ xori a3, a3, 160
+ xori a0, a0, 113
+ or a0, a0, a3
+ bnez a0, .LBB1_12
# %bb.1: # %verify.exit
- mul a1, a3, a5
- mul s1, a2, a4
- sw s1, %lo(res)(a0)
- xori s1, s1, 1500
- xori s0, a1, 1300
- or s1, s1, s0
- sext.w s1, s1
- sw a1, %lo(res+4)(a0)
- bnez s1, .LBB1_12
+ mulw s5, s0, a5
+ mulw s3, s1, a4
+ sw s3, %lo(res)(a2)
+ sw s5, %lo(res+4)(a2)
+ lw a0, %lo(res)(a2)
+ lw a2, %lo(res+4)(a2)
+ xori a0, a0, 1500
+ xori a2, a2, 1300
+ or a0, a0, a2
+ bnez a0, .LBB1_12
# %bb.2: # %verify.exit27
- divw s3, a5, a3
- divw a1, a4, a2
- lui s1, %hi(res)
- sw a1, %lo(res)(s1)
- xori s0, a1, 15
- xori a0, s3, 7
- or a0, a0, s0
- sw s3, %lo(res+4)(s1)
+ divw t2, a5, s0
+ divw t3, a4, s1
+ lui a2, %hi(res)
+ sw t3, %lo(res)(a2)
+ sw t2, %lo(res+4)(a2)
+ lw a0, %lo(res)(a2)
+ lw a3, %lo(res+4)(a2)
+ xori a0, a0, 15
+ xori a3, a3, 7
+ or a0, a0, a3
bnez a0, .LBB1_12
# %bb.3: # %verify.exit32
- and t3, a3, a5
- and t2, a2, a4
- xori a0, t2, 2
- xori s0, t3, 4
- or a0, a0, s0
- sw t2, %lo(res)(s1)
- sw t3, %lo(res+4)(s1)
+ and a7, s0, a5
+ and a6, s1, a4
+ sw a6, %lo(res)(a2)
+ sw a7, %lo(res+4)(a2)
+ lw a0, %lo(res)(a2)
+ lw a2, %lo(res+4)(a2)
+ xori a0, a0, 2
+ xori a2, a2, 4
+ or a0, a0, a2
bnez a0, .LBB1_12
# %bb.4: # %verify.exit37
- or a6, a3, a5
- or a7, a2, a4
- lui s1, %hi(res)
- sw a7, %lo(res)(s1)
- xori a0, a7, 158
- xori s0, a6, 109
- or a0, a0, s0
- sw a6, %lo(res+4)(s1)
+ or t0, s0, a5
+ or t1, s1, a4
+ lui a2, %hi(res)
+ sw t1, %lo(res)(a2)
+ sw t0, %lo(res+4)(a2)
+ lw a0, %lo(res)(a2)
+ lw a3, %lo(res+4)(a2)
+ xori a0, a0, 158
+ xori a3, a3, 109
+ or a0, a0, a3
bnez a0, .LBB1_12
# %bb.5: # %verify.exit42
- xor t1, a3, a5
- xor t0, a2, a4
- xori a0, t0, 156
- xori s0, t1, 105
- or a0, a0, s0
- sw t0, %lo(res)(s1)
- sw t1, %lo(res+4)(s1)
+ xor t5, s0, a5
+ xor t4, s1, a4
+ sw t4, %lo(res)(a2)
+ sw t5, %lo(res+4)(a2)
+ lw a0, %lo(res)(a2)
+ lw a2, %lo(res+4)(a2)
+ xori a0, a0, 156
+ xori a2, a2, 105
+ or a0, a0, a2
bnez a0, .LBB1_12
# %bb.6: # %verify.exit47
- negw t4, a5
- negw t5, a4
- lui s1, %hi(res)
- sw t5, %lo(res)(s1)
- xori a0, t5, -150
- xori s0, t4, -100
- or a0, a0, s0
- sw t4, %lo(res+4)(s1)
+ negw t6, a5
+ negw s0, a4
+ lui a2, %hi(res)
+ sw s0, %lo(res)(a2)
+ sw t6, %lo(res+4)(a2)
+ lw a0, %lo(res)(a2)
+ lw a3, %lo(res+4)(a2)
+ xori a0, a0, -150
+ xori a3, a3, -100
+ or a0, a0, a3
bnez a0, .LBB1_12
# %bb.7: # %verify.exit52
- not t6, a5
- xori a0, a4, 150
- xori s0, a5, 100
- or a0, a0, s0
- not s0, a4
- sw s0, %lo(res)(s1)
- sw t6, %lo(res+4)(s1)
+ not s2, a5
+ not s1, a4
+ sw s1, %lo(res)(a2)
+ sw s2, %lo(res+4)(a2)
+ lw a0, %lo(res)(a2)
+ lw a2, %lo(res+4)(a2)
+ xori a0, a0, -151
+ xori a2, a2, -101
+ or a0, a0, a2
bnez a0, .LBB1_12
# %bb.8: # %verify.exit57
- addw s2, a3, a5
- addw s4, a2, a4
- mulw s5, a2, a4
- mulw a3, a3, a5
- subw a0, s0, a4
- subw a4, t6, a5
- add a4, a4, a3
- add a0, a0, s5
- add a0, a0, s4
- add a4, a4, s2
- add a4, a4, t3
- add a0, a0, t2
- add a0, a0, a7
- add a4, a4, a6
- add s1, a4, t1
- add a0, a0, t0
- lui a5, %hi(k)
- sw a0, %lo(k)(a5)
- lui a4, %hi(res)
- sw a0, %lo(res)(a4)
- xori a0, a0, 1675
- xori a2, s1, 1430
- or a0, a0, a2
- sw s1, %lo(k+4)(a5)
- sext.w a0, a0
- sw s1, %lo(res+4)(a4)
+ subw a0, s1, a4
+ subw a2, s2, a5
+ addw a2, a2, s5
+ addw a0, a0, s3
+ addw a0, a0, s4
+ addw a2, a2, a1
+ addw a2, a2, a7
+ addw a0, a0, a6
+ addw a0, a0, t1
+ addw a2, a2, t0
+ addw a2, a2, t5
+ addw a0, a0, t4
+ lui a5, %hi(res)
+ sw a0, %lo(res)(a5)
+ sw a2, %lo(res+4)(a5)
+ lw a3, %lo(res)(a5)
+ lw a4, %lo(res+4)(a5)
+ lui s6, %hi(k)
+ sw a0, %lo(k)(s6)
+ xori a0, a3, 1675
+ xori a3, a4, 1430
+ or a0, a0, a3
+ sw a2, %lo(k+4)(s6)
bnez a0, .LBB1_12
# %bb.9: # %verify.exit62
- mulw a0, s0, t5
- mulw a2, t6, t4
- mul a2, a2, a3
- mul a0, a0, s5
- mul a0, a0, s4
- mul a2, a2, s2
- mul a2, a2, t3
- mul a0, a0, t2
- mul a0, a0, a7
- mul a2, a2, a6
- mul a2, a2, t1
- mul a0, a0, t0
- sw a0, %lo(k)(a5)
- sw a2, %lo(k+4)(a5)
- sw a0, %lo(res)(a4)
- lui a5, 355583
- xor a0, a0, a5
- lui a5, 662935
- addiw a5, a5, -704
- xor a5, a5, a2
- or a0, a0, a5
- sext.w a0, a0
- sw a2, %lo(res+4)(a4)
+ mulw a0, s1, s0
+ mulw a2, s2, t6
+ mulw a2, a2, s5
+ mulw a0, a0, s3
+ mulw a0, a0, s4
+ mulw a2, a2, a1
+ mulw a2, a2, a7
+ mulw a0, a0, a6
+ mulw a0, a0, t1
+ mulw a2, a2, t0
+ mulw a2, a2, t5
+ mulw a0, a0, t4
+ sw a0, %lo(k)(s6)
+ sw a0, %lo(res)(a5)
+ lw a0, %lo(res)(a5)
+ sw a2, %lo(res+4)(a5)
+ lw a3, %lo(res+4)(a5)
+ lui a4, 355583
+ xor a0, a0, a4
+ lui a4, 662935
+ addiw a4, a4, -704
+ xor a3, a3, a4
+ or a0, a0, a3
+ sw a2, %lo(k+4)(s6)
bnez a0, .LBB1_12
# %bb.10: # %verify.exit67
- divw a0, s2, a3
- divw a2, s4, s5
- divw a1, a2, a1
- divw a0, a0, s3
- divw a0, a0, t3
- divw a1, a1, t2
- divw a1, a1, a7
- divw a0, a0, a6
- divw a0, a0, t1
- divw a1, a1, t0
- divw a1, a1, t5
- divw a0, a0, t4
- divw a0, a0, t6
+ divw a0, a1, s5
+ divw a1, s4, s3
+ divw a1, a1, t3
+ divw a0, a0, t2
+ divw a0, a0, a7
+ divw a1, a1, a6
+ divw a1, a1, t1
+ divw a0, a0, t0
+ divw a0, a0, t5
+ divw a1, a1, t4
divw a1, a1, s0
- lui a2, %hi(k)
- sw a1, %lo(k)(a2)
- sw a0, %lo(k+4)(a2)
+ divw a0, a0, t6
+ divw a0, a0, s2
+ divw a1, a1, s1
lui a2, %hi(res)
sw a1, %lo(res)(a2)
- or a1, a1, a0
sw a0, %lo(res+4)(a2)
+ lw a3, %lo(res)(a2)
+ lw a2, %lo(res+4)(a2)
+ lui a4, %hi(k)
+ sw a1, %lo(k)(a4)
+ or a1, a2, a3
+ sw a0, %lo(k+4)(a4)
bnez a1, .LBB1_12
# %bb.11: # %verify.exit72
li a0, 0
diff --git a/output_rv64imafdc_lp64_O1/pr53645.s b/output_rv64imafdc_lp64_O1/pr53645.s
index 9bc27bccb5..8fbf5b1879 100644
--- a/output_rv64imafdc_lp64_O1/pr53645.s
+++ b/output_rv64imafdc_lp64_O1/pr53645.s
@@ -188,7 +188,7 @@ sq1428: # @sq1428
sr1428: # @sr1428
# %bb.0: # %entry
lw a2, 4(a1)
- lwu a3, 8(a1)
+ lw a3, 8(a1)
lw a1, 12(a1)
slli a4, a2, 1
srli a4, a4, 62
@@ -200,7 +200,7 @@ sr1428: # @sr1428
add a4, a4, a1
andi a4, a4, -8
subw a1, a1, a4
- srli a4, a3, 31
+ srliw a4, a3, 31
add a4, a4, a3
andi a4, a4, -2
subw a3, a3, a4
@@ -254,36 +254,44 @@ uq3333: # @uq3333
.type ur3333,@function
ur3333: # @ur3333
# %bb.0: # %entry
- lwu a2, 0(a1)
- lui a3, %hi(.LCPI9_0)
- ld a3, %lo(.LCPI9_0)(a3)
- lwu a6, 12(a1)
- lwu a5, 8(a1)
- lwu a1, 4(a1)
- mulhu a4, a2, a3
- srli a7, a4, 1
- andi a4, a4, -2
- addw a4, a4, a7
- subw a7, a2, a4
- mulhu a4, a1, a3
- srli a2, a4, 1
- andi a4, a4, -2
- addw a2, a2, a4
- subw a1, a1, a2
- mulhu a2, a5, a3
- srli a4, a2, 1
- andi a2, a2, -2
- addw a2, a2, a4
- subw a2, a5, a2
- mulhu a3, a6, a3
+ lw t0, 12(a1)
+ lw t1, 8(a1)
+ slli a4, t0, 32
+ lw a5, 4(a1)
+ srli a6, a4, 32
+ slli a4, t1, 32
+ srli a7, a4, 32
+ slli a4, a5, 32
+ lw a1, 0(a1)
+ lui a2, %hi(.LCPI9_0)
+ ld a2, %lo(.LCPI9_0)(a2)
+ srli t2, a4, 32
+ slli a3, a1, 32
+ srli a3, a3, 32
+ mulhu a3, a3, a2
srli a4, a3, 1
andi a3, a3, -2
addw a3, a3, a4
- subw a3, a6, a3
- sw a3, 12(a0)
- sw a2, 8(a0)
- sw a1, 4(a0)
- sw a7, 0(a0)
+ subw a1, a1, a3
+ mulhu a3, t2, a2
+ srli a4, a3, 1
+ andi a3, a3, -2
+ addw a3, a3, a4
+ subw a3, a5, a3
+ mulhu a4, a7, a2
+ srli a5, a4, 1
+ andi a4, a4, -2
+ addw a4, a4, a5
+ subw a4, t1, a4
+ mulhu a2, a6, a2
+ srli a5, a2, 1
+ andi a2, a2, -2
+ addw a2, a2, a5
+ subw a2, t0, a2
+ sw a2, 12(a0)
+ sw a4, 8(a0)
+ sw a3, 4(a0)
+ sw a1, 0(a0)
ret
.Lfunc_end9:
.size ur3333, .Lfunc_end9-ur3333
@@ -420,36 +428,44 @@ uq6565: # @uq6565
.type ur6565,@function
ur6565: # @ur6565
# %bb.0: # %entry
- lwu a2, 4(a1)
- lui a3, %hi(.LCPI13_0)
- ld a3, %lo(.LCPI13_0)(a3)
- lwu a6, 8(a1)
- lwu a7, 0(a1)
- lwu a1, 12(a1)
- mulhu a4, a2, a3
- srli a5, a4, 2
- andi a4, a4, -4
- addw a4, a4, a5
- subw a2, a2, a4
- mulhu a3, a1, a3
+ lw t0, 8(a1)
+ lw t1, 0(a1)
+ slli a4, t0, 32
+ lw a5, 12(a1)
+ srli a6, a4, 32
+ slli a4, t1, 32
+ srli a7, a4, 32
+ slli a4, a5, 32
+ lw a1, 4(a1)
+ lui a2, %hi(.LCPI13_0)
+ ld a2, %lo(.LCPI13_0)(a2)
+ srli t2, a4, 32
+ slli a3, a1, 32
+ srli a3, a3, 32
+ mulhu a3, a3, a2
srli a4, a3, 2
- lui a5, %hi(.LCPI13_1)
- ld a5, %lo(.LCPI13_1)(a5)
andi a3, a3, -4
addw a3, a3, a4
subw a1, a1, a3
- mulhu a3, a7, a5
+ mulhu a2, t2, a2
+ srli a3, a2, 2
+ lui a4, %hi(.LCPI13_1)
+ ld a4, %lo(.LCPI13_1)(a4)
+ andi a2, a2, -4
+ addw a2, a2, a3
+ subw a2, a5, a2
+ mulhu a3, a7, a4
srli a3, a3, 2
- li a4, 6
- mulw a3, a3, a4
- subw a3, a7, a3
- mulhu a5, a6, a5
- srli a5, a5, 2
- mulw a4, a5, a4
- subw a4, a6, a4
- sw a1, 12(a0)
+ li a5, 6
+ mulw a3, a3, a5
+ subw a3, t1, a3
+ mulhu a4, a6, a4
+ srli a4, a4, 2
+ mulw a4, a4, a5
+ subw a4, t0, a4
+ sw a2, 12(a0)
sw a4, 8(a0)
- sw a2, 4(a0)
+ sw a1, 4(a0)
sw a3, 0(a0)
ret
.Lfunc_end13:
@@ -592,48 +608,50 @@ uq1414146: # @uq1414146
.section .sdata,"aw",@progbits
.p2align 3 # -- Begin function ur1414146
.LCPI17_0:
- .quad 5270498306774157605 # 0x4924924924924925
-.LCPI17_1:
.quad -6148914691236517205 # 0xaaaaaaaaaaaaaaab
+.LCPI17_1:
+ .quad 5270498306774157605 # 0x4924924924924925
.text
.globl ur1414146
.p2align 1
.type ur1414146,@function
ur1414146: # @ur1414146
# %bb.0: # %entry
- lwu a6, 12(a1)
- lwu a3, 0(a1)
- lui a4, %hi(.LCPI17_0)
- ld a4, %lo(.LCPI17_0)(a4)
- lwu a5, 8(a1)
- lwu a1, 4(a1)
- srli a2, a3, 1
- mulhu a2, a2, a4
- srli a2, a2, 1
- li a7, 14
+ lw a6, 8(a1)
+ lw a3, 4(a1)
+ lw a4, 12(a1)
+ lui a5, %hi(.LCPI17_0)
+ ld a5, %lo(.LCPI17_0)(a5)
+ lw a1, 0(a1)
+ slli a2, a4, 32
+ srli a2, a2, 32
+ mulhu a2, a2, a5
+ srli a2, a2, 2
+ li a7, 6
+ lui a5, %hi(.LCPI17_1)
+ ld a5, %lo(.LCPI17_1)(a5)
mulw a2, a2, a7
- subw a2, a3, a2
- srli a3, a1, 1
- mulhu a3, a3, a4
- srli a3, a3, 1
- mulw a3, a3, a7
- subw a1, a1, a3
- srli a3, a5, 1
- mulhu a3, a3, a4
- lui a4, %hi(.LCPI17_1)
- ld a4, %lo(.LCPI17_1)(a4)
- srli a3, a3, 1
- mulw a3, a3, a7
- subw a3, a5, a3
- mulhu a4, a6, a4
- srli a4, a4, 2
- li a5, 6
- mulw a4, a4, a5
- subw a4, a6, a4
- sw a4, 12(a0)
- sw a3, 8(a0)
- sw a1, 4(a0)
- sw a2, 0(a0)
+ subw a7, a4, a2
+ srliw a4, a1, 1
+ mulhu a4, a4, a5
+ srli a4, a4, 1
+ li a2, 14
+ mulw a4, a4, a2
+ subw a1, a1, a4
+ srliw a4, a3, 1
+ mulhu a4, a4, a5
+ srli a4, a4, 1
+ mulw a4, a4, a2
+ subw a3, a3, a4
+ srliw a4, a6, 1
+ mulhu a4, a4, a5
+ srli a4, a4, 1
+ mulw a2, a4, a2
+ subw a2, a6, a2
+ sw a2, 8(a0)
+ sw a3, 4(a0)
+ sw a1, 0(a0)
+ sw a7, 12(a0)
ret
.Lfunc_end17:
.size ur1414146, .Lfunc_end17-ur1414146
@@ -788,48 +806,56 @@ uq7777: # @uq7777
.type ur7777,@function
ur7777: # @ur7777
# %bb.0: # %entry
- lwu a2, 0(a1)
- lui a3, %hi(.LCPI21_0)
- ld a3, %lo(.LCPI21_0)(a3)
- lwu a6, 12(a1)
- lwu a7, 8(a1)
- lwu a1, 4(a1)
- mulhu a4, a2, a3
- sub a5, a2, a4
- srli a5, a5, 1
- add a4, a4, a5
- srli a4, a4, 2
- slliw a5, a4, 3
- subw a4, a4, a5
- addw a2, a2, a4
- mulhu a4, a1, a3
- sub a5, a1, a4
+ lw a6, 12(a1)
+ lw a7, 8(a1)
+ slli a4, a6, 32
+ lw t2, 4(a1)
+ srli t0, a4, 32
+ slli a2, a7, 32
+ srli t1, a2, 32
+ slli a3, t2, 32
+ lw a1, 0(a1)
+ lui a4, %hi(.LCPI21_0)
+ ld a4, %lo(.LCPI21_0)(a4)
+ srli a3, a3, 32
+ slli a2, a1, 32
+ srli a2, a2, 32
+ mulhu a5, a2, a4
+ sub a2, a2, a5
+ srli a2, a2, 1
+ add a2, a2, a5
+ srli a2, a2, 2
+ slliw a5, a2, 3
+ subw a2, a2, a5
+ addw a1, a1, a2
+ mulhu a2, a3, a4
+ sub a3, a3, a2
+ srli a3, a3, 1
+ add a2, a2, a3
+ srli a2, a2, 2
+ slliw a3, a2, 3
+ subw a2, a2, a3
+ addw a2, t2, a2
+ mulhu a3, t1, a4
+ sub a5, t1, a3
srli a5, a5, 1
- add a4, a4, a5
- srli a4, a4, 2
- slliw a5, a4, 3
- subw a4, a4, a5
- addw a1, a1, a4
- mulhu a4, a7, a3
- sub a5, a7, a4
+ add a3, a3, a5
+ srli a3, a3, 2
+ slliw a5, a3, 3
+ subw a3, a3, a5
+ addw a3, a7, a3
+ mulhu a4, t0, a4
+ sub a5, t0, a4
srli a5, a5, 1
add a4, a4, a5
srli a4, a4, 2
slliw a5, a4, 3
subw a4, a4, a5
- addw a4, a7, a4
- mulhu a3, a6, a3
- sub a5, a6, a3
- srli a5, a5, 1
- add a3, a3, a5
- srli a3, a3, 2
- slliw a5, a3, 3
- subw a3, a3, a5
- addw a3, a6, a3
- sw a3, 12(a0)
- sw a4, 8(a0)
- sw a1, 4(a0)
- sw a2, 0(a0)
+ addw a4, a6, a4
+ sw a4, 12(a0)
+ sw a3, 8(a0)
+ sw a2, 4(a0)
+ sw a1, 0(a0)
ret
.Lfunc_end21:
.size ur7777, .Lfunc_end21-ur7777
@@ -931,51 +957,47 @@ sr7777: # @sr7777
.type main,@function
main: # @main
# %bb.0: # %entry
- addi sp, sp, -144
- sd ra, 136(sp) # 8-byte Folded Spill
- sd s0, 128(sp) # 8-byte Folded Spill
- sd s1, 120(sp) # 8-byte Folded Spill
- sd s2, 112(sp) # 8-byte Folded Spill
- sd s3, 104(sp) # 8-byte Folded Spill
- sd s4, 96(sp) # 8-byte Folded Spill
- sd s5, 88(sp) # 8-byte Folded Spill
- sd s6, 80(sp) # 8-byte Folded Spill
- sd s7, 72(sp) # 8-byte Folded Spill
- sd s8, 64(sp) # 8-byte Folded Spill
- sd s9, 56(sp) # 8-byte Folded Spill
- sd s10, 48(sp) # 8-byte Folded Spill
- sd s11, 40(sp) # 8-byte Folded Spill
+ addi sp, sp, -128
+ sd ra, 120(sp) # 8-byte Folded Spill
+ sd s0, 112(sp) # 8-byte Folded Spill
+ sd s1, 104(sp) # 8-byte Folded Spill
+ sd s2, 96(sp) # 8-byte Folded Spill
+ sd s3, 88(sp) # 8-byte Folded Spill
+ sd s4, 80(sp) # 8-byte Folded Spill
+ sd s5, 72(sp) # 8-byte Folded Spill
+ sd s6, 64(sp) # 8-byte Folded Spill
+ sd s7, 56(sp) # 8-byte Folded Spill
+ sd s8, 48(sp) # 8-byte Folded Spill
+ sd s9, 40(sp) # 8-byte Folded Spill
+ sd s10, 32(sp) # 8-byte Folded Spill
li s3, 0
lui a0, %hi(u)
addi s2, a0, %lo(u)
- addi s1, sp, 16
- lui a0, 171
- addiw a0, a0, -1365
- slli a0, a0, 12
- addi s4, a0, -1365
+ addi s4, sp, 16
lui a0, 699051
addiw a0, a0, -1365
- slli s5, a0, 32
+ slli s1, a0, 32
lui a0, 838861
addiw a0, a0, -819
- slli s6, a0, 32
- li s7, 6
+ slli s5, a0, 32
+ li s6, 6
lui a0, 299593
slli a0, a0, 1
- addi s8, a0, 1171
- li s9, 14
+ addi s7, a0, 1171
+ li s8, 14
lui a0, 149797
- addiw s10, a0, -1755
- slli s11, s10, 32
+ addiw a0, a0, -1755
+ slli s9, a0, 32
+ li s10, 16
.LBB24_1: # %for.body
# =>This Inner Loop Header: Depth=1
add s0, s2, s3
addi a0, sp, 16
mv a1, s0
call uq4444
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- srli a0, a0, 2
+ srliw a0, a0, 2
bne a1, a0, .LBB24_101
# %bb.2: # %lor.lhs.false
# in Loop: Header=BB24_1 Depth=1
@@ -987,9 +1009,9 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a0, a0, 2
+ srliw a0, a0, 2
bne a1, a0, .LBB24_101
# %bb.4: # %lor.lhs.false19
# in Loop: Header=BB24_1 Depth=1
@@ -1004,7 +1026,7 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur4444
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
andi a0, a0, 3
bne a1, a0, .LBB24_101
@@ -1018,7 +1040,7 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
andi a0, a0, 3
bne a1, a0, .LBB24_101
@@ -1048,9 +1070,9 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a0, a0, 1
+ srliw a0, a0, 1
bne a1, a0, .LBB24_101
# %bb.12: # %lor.lhs.false90
# in Loop: Header=BB24_1 Depth=1
@@ -1077,7 +1099,7 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
andi a0, a0, 1
bne a1, a0, .LBB24_101
@@ -1094,9 +1116,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq3333
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.18: # %lor.lhs.false145
@@ -1104,16 +1127,17 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a0, a0, 32
- mulhu a0, a0, s5
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.19: # %if.end154
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.20: # %lor.lhs.false162
@@ -1121,7 +1145,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a0, a0, 32
- mulhu a0, a0, s5
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.21: # %if.end171
@@ -1131,9 +1155,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur3333
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1144,7 +1169,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s5
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1154,9 +1179,10 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1167,7 +1193,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s5
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1180,9 +1206,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq6565
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.26: # %lor.lhs.false217
@@ -1190,16 +1217,17 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a0, a0, 32
- mulhu a0, a0, s6
+ mulhu a0, a0, s5
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.27: # %if.end226
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.28: # %lor.lhs.false234
@@ -1207,7 +1235,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a0, a0, 32
- mulhu a0, a0, s6
+ mulhu a0, a0, s5
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.29: # %if.end243
@@ -1217,11 +1245,12 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur6565
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 34
- mulw a2, a2, s7
+ mulw a2, a2, s6
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.30: # %lor.lhs.false253
@@ -1229,7 +1258,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s6
+ mulhu a2, a2, s5
srli a2, a2, 34
slliw a3, a2, 2
addw a2, a2, a3
@@ -1239,11 +1268,12 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 34
- mulw a2, a2, s7
+ mulw a2, a2, s6
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.32: # %lor.lhs.false270
@@ -1251,7 +1281,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s6
+ mulhu a2, a2, s5
srli a2, a2, 34
slliw a3, a2, 2
addw a2, a2, a3
@@ -1264,10 +1294,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq1414146
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- srli a0, a0, 1
- mul a0, a0, s8
+ srliw a0, a0, 1
+ mul a0, a0, s7
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.34: # %lor.lhs.false289
@@ -1275,17 +1305,17 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a0, a0, 32
- mulhu a0, a0, s5
+ mulhu a0, a0, s1
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.35: # %if.end298
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a0, a0, 1
- mul a0, a0, s8
+ srliw a0, a0, 1
+ mul a0, a0, s7
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.36: # %lor.lhs.false306
@@ -1293,7 +1323,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
srliw a0, a0, 1
- mul a0, a0, s8
+ mul a0, a0, s7
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.37: # %if.end315
@@ -1303,12 +1333,12 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur1414146
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- srli a2, a0, 1
- mul a2, a2, s8
+ srliw a2, a0, 1
+ mul a2, a2, s7
srli a2, a2, 34
- mulw a2, a2, s9
+ mulw a2, a2, s8
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.38: # %lor.lhs.false325
@@ -1316,21 +1346,21 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s5
+ mulhu a2, a2, s1
srli a2, a2, 34
- mulw a2, a2, s7
+ mulw a2, a2, s6
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.39: # %if.end334
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a2, a0, 1
- mul a2, a2, s8
+ srliw a2, a0, 1
+ mul a2, a2, s7
srli a2, a2, 34
- mulw a2, a2, s9
+ mulw a2, a2, s8
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.40: # %lor.lhs.false342
@@ -1338,9 +1368,9 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
srliw a2, a0, 1
- mul a2, a2, s8
+ mul a2, a2, s7
srli a2, a2, 34
- mulw a2, a2, s9
+ mulw a2, a2, s8
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.41: # %if.end351
@@ -1350,9 +1380,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq7777
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1364,7 +1395,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1375,9 +1406,10 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1389,7 +1421,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1403,9 +1435,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur7777
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1420,7 +1453,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1434,9 +1467,10 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1451,7 +1485,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1466,8 +1500,7 @@ main: # @main
#APP
#NO_APP
addi s3, s3, 16
- li a0, 16
- beq s3, a0, .LBB24_1
+ beq s3, s10, .LBB24_1
# %bb.50: # %for.body428.preheader
li s3, 0
lui a0, %hi(s)
@@ -1501,8 +1534,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 12(s0)
lw a1, 12(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
addw a0, a0, a2
sraiw a0, a0, 2
bne a1, a0, .LBB24_101
@@ -1521,8 +1554,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
addw a0, a0, a2
sraiw a0, a0, 2
bne a1, a0, .LBB24_101
@@ -1545,8 +1578,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 12(s0)
lw a1, 12(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
add a2, a2, a0
andi a2, a2, -4
subw a0, a0, a2
@@ -1567,8 +1600,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
add a2, a2, a0
andi a2, a2, -4
subw a0, a0, a2
@@ -1587,8 +1620,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 12(s0)
lw a1, 12(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 29
+ slli a2, a0, 1
+ srli a2, a2, 61
addw a0, a0, a2
sraiw a0, a0, 3
bne a1, a0, .LBB24_101
@@ -1596,9 +1629,9 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 8(sp)
- srli a2, a0, 31
+ srliw a2, a0, 31
addw a0, a0, a2
sraiw a0, a0, 1
bne a1, a0, .LBB24_101
@@ -1606,8 +1639,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
addw a0, a0, a2
sraiw a0, a0, 2
bne a1, a0, .LBB24_101
@@ -1634,9 +1667,9 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 8(sp)
- srli a2, a0, 31
+ srliw a2, a0, 31
add a2, a2, a0
andi a2, a2, -2
subw a0, a0, a2
@@ -1645,8 +1678,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
add a2, a2, a0
andi a2, a2, -4
subw a0, a0, a2
@@ -2073,20 +2106,19 @@ main: # @main
beq s3, s10, .LBB24_51
# %bb.100: # %for.end863
li a0, 0
- ld ra, 136(sp) # 8-byte Folded Reload
- ld s0, 128(sp) # 8-byte Folded Reload
- ld s1, 120(sp) # 8-byte Folded Reload
- ld s2, 112(sp) # 8-byte Folded Reload
- ld s3, 104(sp) # 8-byte Folded Reload
- ld s4, 96(sp) # 8-byte Folded Reload
- ld s5, 88(sp) # 8-byte Folded Reload
- ld s6, 80(sp) # 8-byte Folded Reload
- ld s7, 72(sp) # 8-byte Folded Reload
- ld s8, 64(sp) # 8-byte Folded Reload
- ld s9, 56(sp) # 8-byte Folded Reload
- ld s10, 48(sp) # 8-byte Folded Reload
- ld s11, 40(sp) # 8-byte Folded Reload
- addi sp, sp, 144
+ ld ra, 120(sp) # 8-byte Folded Reload
+ ld s0, 112(sp) # 8-byte Folded Reload
+ ld s1, 104(sp) # 8-byte Folded Reload
+ ld s2, 96(sp) # 8-byte Folded Reload
+ ld s3, 88(sp) # 8-byte Folded Reload
+ ld s4, 80(sp) # 8-byte Folded Reload
+ ld s5, 72(sp) # 8-byte Folded Reload
+ ld s6, 64(sp) # 8-byte Folded Reload
+ ld s7, 56(sp) # 8-byte Folded Reload
+ ld s8, 48(sp) # 8-byte Folded Reload
+ ld s9, 40(sp) # 8-byte Folded Reload
+ ld s10, 32(sp) # 8-byte Folded Reload
+ addi sp, sp, 128
ret
.LBB24_101: # %if.then
call abort
diff --git a/output_rv64imafdc_lp64_O2/loop-5.s b/output_rv64imafdc_lp64_O2/loop-5.s
index 4c4398adfe..a5bdfb93ff 100644
--- a/output_rv64imafdc_lp64_O2/loop-5.s
+++ b/output_rv64imafdc_lp64_O2/loop-5.s
@@ -9,15 +9,16 @@ main: # @main
# %bb.0: # %entry
addi sp, sp, -16
sd ra, 8(sp) # 8-byte Folded Spill
- lui a3, %hi(t)
- lwu a2, %lo(t)(a3)
- sext.w a0, a2
+ lui a2, %hi(t)
+ lw a0, %lo(t)(a2)
li a1, 4
bge a0, a1, .LBB0_9
# %bb.1: # %ap.exit.i
+ slli a1, a0, 32
+ srli a3, a1, 32
addiw a1, a0, 1
- sw a1, %lo(t)(a3)
- slli a2, a2, 2
+ sw a1, %lo(t)(a2)
+ slli a2, a3, 2
lui a3, %hi(a)
addi a3, a3, %lo(a)
add a2, a2, a3
diff --git a/output_rv64imafdc_lp64_O2/pr53645.s b/output_rv64imafdc_lp64_O2/pr53645.s
index 56bd435ece..7c352a0b5d 100644
--- a/output_rv64imafdc_lp64_O2/pr53645.s
+++ b/output_rv64imafdc_lp64_O2/pr53645.s
@@ -188,7 +188,7 @@ sq1428: # @sq1428
sr1428: # @sr1428
# %bb.0: # %entry
lw a2, 4(a1)
- lwu a3, 8(a1)
+ lw a3, 8(a1)
lw a1, 12(a1)
slli a4, a2, 1
srli a4, a4, 62
@@ -200,7 +200,7 @@ sr1428: # @sr1428
add a4, a4, a1
andi a4, a4, -8
subw a1, a1, a4
- srli a4, a3, 31
+ srliw a4, a3, 31
add a4, a4, a3
andi a4, a4, -2
subw a3, a3, a4
@@ -254,36 +254,44 @@ uq3333: # @uq3333
.type ur3333,@function
ur3333: # @ur3333
# %bb.0: # %entry
- lwu a2, 0(a1)
- lui a3, %hi(.LCPI9_0)
- ld a3, %lo(.LCPI9_0)(a3)
- lwu a6, 12(a1)
- lwu a5, 8(a1)
- lwu a1, 4(a1)
- mulhu a4, a2, a3
- srli a7, a4, 1
- andi a4, a4, -2
- addw a4, a4, a7
- subw a7, a2, a4
- mulhu a4, a1, a3
- srli a2, a4, 1
- andi a4, a4, -2
- addw a2, a2, a4
- subw a1, a1, a2
- mulhu a2, a5, a3
- srli a4, a2, 1
- andi a2, a2, -2
- addw a2, a2, a4
- subw a2, a5, a2
- mulhu a3, a6, a3
+ lw t0, 12(a1)
+ lw t1, 8(a1)
+ slli a4, t0, 32
+ lw a5, 4(a1)
+ srli a6, a4, 32
+ slli a4, t1, 32
+ srli a7, a4, 32
+ slli a4, a5, 32
+ lw a1, 0(a1)
+ lui a2, %hi(.LCPI9_0)
+ ld a2, %lo(.LCPI9_0)(a2)
+ srli t2, a4, 32
+ slli a3, a1, 32
+ srli a3, a3, 32
+ mulhu a3, a3, a2
srli a4, a3, 1
andi a3, a3, -2
addw a3, a3, a4
- subw a3, a6, a3
- sw a3, 12(a0)
- sw a2, 8(a0)
- sw a1, 4(a0)
- sw a7, 0(a0)
+ subw a1, a1, a3
+ mulhu a3, t2, a2
+ srli a4, a3, 1
+ andi a3, a3, -2
+ addw a3, a3, a4
+ subw a3, a5, a3
+ mulhu a4, a7, a2
+ srli a5, a4, 1
+ andi a4, a4, -2
+ addw a4, a4, a5
+ subw a4, t1, a4
+ mulhu a2, a6, a2
+ srli a5, a2, 1
+ andi a2, a2, -2
+ addw a2, a2, a5
+ subw a2, t0, a2
+ sw a2, 12(a0)
+ sw a4, 8(a0)
+ sw a3, 4(a0)
+ sw a1, 0(a0)
ret
.Lfunc_end9:
.size ur3333, .Lfunc_end9-ur3333
@@ -420,36 +428,44 @@ uq6565: # @uq6565
.type ur6565,@function
ur6565: # @ur6565
# %bb.0: # %entry
- lwu a2, 4(a1)
- lui a3, %hi(.LCPI13_0)
- ld a3, %lo(.LCPI13_0)(a3)
- lwu a6, 8(a1)
- lwu a7, 0(a1)
- lwu a1, 12(a1)
- mulhu a4, a2, a3
- srli a5, a4, 2
- andi a4, a4, -4
- addw a4, a4, a5
- subw a2, a2, a4
- mulhu a3, a1, a3
+ lw t0, 8(a1)
+ lw t1, 0(a1)
+ slli a4, t0, 32
+ lw a5, 12(a1)
+ srli a6, a4, 32
+ slli a4, t1, 32
+ srli a7, a4, 32
+ slli a4, a5, 32
+ lw a1, 4(a1)
+ lui a2, %hi(.LCPI13_0)
+ ld a2, %lo(.LCPI13_0)(a2)
+ srli t2, a4, 32
+ slli a3, a1, 32
+ srli a3, a3, 32
+ mulhu a3, a3, a2
srli a4, a3, 2
- lui a5, %hi(.LCPI13_1)
- ld a5, %lo(.LCPI13_1)(a5)
andi a3, a3, -4
addw a3, a3, a4
subw a1, a1, a3
- mulhu a3, a7, a5
+ mulhu a2, t2, a2
+ srli a3, a2, 2
+ lui a4, %hi(.LCPI13_1)
+ ld a4, %lo(.LCPI13_1)(a4)
+ andi a2, a2, -4
+ addw a2, a2, a3
+ subw a2, a5, a2
+ mulhu a3, a7, a4
srli a3, a3, 2
- li a4, 6
- mulw a3, a3, a4
- subw a3, a7, a3
- mulhu a5, a6, a5
- srli a5, a5, 2
- mulw a4, a5, a4
- subw a4, a6, a4
- sw a1, 12(a0)
+ li a5, 6
+ mulw a3, a3, a5
+ subw a3, t1, a3
+ mulhu a4, a6, a4
+ srli a4, a4, 2
+ mulw a4, a4, a5
+ subw a4, t0, a4
+ sw a2, 12(a0)
sw a4, 8(a0)
- sw a2, 4(a0)
+ sw a1, 4(a0)
sw a3, 0(a0)
ret
.Lfunc_end13:
@@ -592,48 +608,50 @@ uq1414146: # @uq1414146
.section .sdata,"aw",@progbits
.p2align 3 # -- Begin function ur1414146
.LCPI17_0:
- .quad 5270498306774157605 # 0x4924924924924925
-.LCPI17_1:
.quad -6148914691236517205 # 0xaaaaaaaaaaaaaaab
+.LCPI17_1:
+ .quad 5270498306774157605 # 0x4924924924924925
.text
.globl ur1414146
.p2align 1
.type ur1414146,@function
ur1414146: # @ur1414146
# %bb.0: # %entry
- lwu a6, 12(a1)
- lwu a3, 0(a1)
- lui a4, %hi(.LCPI17_0)
- ld a4, %lo(.LCPI17_0)(a4)
- lwu a5, 8(a1)
- lwu a1, 4(a1)
- srli a2, a3, 1
- mulhu a2, a2, a4
- srli a2, a2, 1
- li a7, 14
+ lw a6, 8(a1)
+ lw a3, 4(a1)
+ lw a4, 12(a1)
+ lui a5, %hi(.LCPI17_0)
+ ld a5, %lo(.LCPI17_0)(a5)
+ lw a1, 0(a1)
+ slli a2, a4, 32
+ srli a2, a2, 32
+ mulhu a2, a2, a5
+ srli a2, a2, 2
+ li a7, 6
+ lui a5, %hi(.LCPI17_1)
+ ld a5, %lo(.LCPI17_1)(a5)
mulw a2, a2, a7
- subw a2, a3, a2
- srli a3, a1, 1
- mulhu a3, a3, a4
- srli a3, a3, 1
- mulw a3, a3, a7
- subw a1, a1, a3
- srli a3, a5, 1
- mulhu a3, a3, a4
- lui a4, %hi(.LCPI17_1)
- ld a4, %lo(.LCPI17_1)(a4)
- srli a3, a3, 1
- mulw a3, a3, a7
- subw a3, a5, a3
- mulhu a4, a6, a4
- srli a4, a4, 2
- li a5, 6
- mulw a4, a4, a5
- subw a4, a6, a4
- sw a4, 12(a0)
- sw a3, 8(a0)
- sw a1, 4(a0)
- sw a2, 0(a0)
+ subw a7, a4, a2
+ srliw a4, a1, 1
+ mulhu a4, a4, a5
+ srli a4, a4, 1
+ li a2, 14
+ mulw a4, a4, a2
+ subw a1, a1, a4
+ srliw a4, a3, 1
+ mulhu a4, a4, a5
+ srli a4, a4, 1
+ mulw a4, a4, a2
+ subw a3, a3, a4
+ srliw a4, a6, 1
+ mulhu a4, a4, a5
+ srli a4, a4, 1
+ mulw a2, a4, a2
+ subw a2, a6, a2
+ sw a2, 8(a0)
+ sw a3, 4(a0)
+ sw a1, 0(a0)
+ sw a7, 12(a0)
ret
.Lfunc_end17:
.size ur1414146, .Lfunc_end17-ur1414146
@@ -788,48 +806,56 @@ uq7777: # @uq7777
.type ur7777,@function
ur7777: # @ur7777
# %bb.0: # %entry
- lwu a2, 0(a1)
- lui a3, %hi(.LCPI21_0)
- ld a3, %lo(.LCPI21_0)(a3)
- lwu a6, 12(a1)
- lwu a7, 8(a1)
- lwu a1, 4(a1)
- mulhu a4, a2, a3
- sub a5, a2, a4
- srli a5, a5, 1
- add a4, a4, a5
- srli a4, a4, 2
- slliw a5, a4, 3
- subw a4, a4, a5
- addw a2, a2, a4
- mulhu a4, a1, a3
- sub a5, a1, a4
+ lw a6, 12(a1)
+ lw a7, 8(a1)
+ slli a4, a6, 32
+ lw t2, 4(a1)
+ srli t0, a4, 32
+ slli a2, a7, 32
+ srli t1, a2, 32
+ slli a3, t2, 32
+ lw a1, 0(a1)
+ lui a4, %hi(.LCPI21_0)
+ ld a4, %lo(.LCPI21_0)(a4)
+ srli a3, a3, 32
+ slli a2, a1, 32
+ srli a2, a2, 32
+ mulhu a5, a2, a4
+ sub a2, a2, a5
+ srli a2, a2, 1
+ add a2, a2, a5
+ srli a2, a2, 2
+ slliw a5, a2, 3
+ subw a2, a2, a5
+ addw a1, a1, a2
+ mulhu a2, a3, a4
+ sub a3, a3, a2
+ srli a3, a3, 1
+ add a2, a2, a3
+ srli a2, a2, 2
+ slliw a3, a2, 3
+ subw a2, a2, a3
+ addw a2, t2, a2
+ mulhu a3, t1, a4
+ sub a5, t1, a3
srli a5, a5, 1
- add a4, a4, a5
- srli a4, a4, 2
- slliw a5, a4, 3
- subw a4, a4, a5
- addw a1, a1, a4
- mulhu a4, a7, a3
- sub a5, a7, a4
+ add a3, a3, a5
+ srli a3, a3, 2
+ slliw a5, a3, 3
+ subw a3, a3, a5
+ addw a3, a7, a3
+ mulhu a4, t0, a4
+ sub a5, t0, a4
srli a5, a5, 1
add a4, a4, a5
srli a4, a4, 2
slliw a5, a4, 3
subw a4, a4, a5
- addw a4, a7, a4
- mulhu a3, a6, a3
- sub a5, a6, a3
- srli a5, a5, 1
- add a3, a3, a5
- srli a3, a3, 2
- slliw a5, a3, 3
- subw a3, a3, a5
- addw a3, a6, a3
- sw a3, 12(a0)
- sw a4, 8(a0)
- sw a1, 4(a0)
- sw a2, 0(a0)
+ addw a4, a6, a4
+ sw a4, 12(a0)
+ sw a3, 8(a0)
+ sw a2, 4(a0)
+ sw a1, 0(a0)
ret
.Lfunc_end21:
.size ur7777, .Lfunc_end21-ur7777
@@ -931,43 +957,37 @@ sr7777: # @sr7777
.type main,@function
main: # @main
# %bb.0: # %entry
- addi sp, sp, -144
- sd ra, 136(sp) # 8-byte Folded Spill
- sd s0, 128(sp) # 8-byte Folded Spill
- sd s1, 120(sp) # 8-byte Folded Spill
- sd s2, 112(sp) # 8-byte Folded Spill
- sd s3, 104(sp) # 8-byte Folded Spill
- sd s4, 96(sp) # 8-byte Folded Spill
- sd s5, 88(sp) # 8-byte Folded Spill
- sd s6, 80(sp) # 8-byte Folded Spill
- sd s7, 72(sp) # 8-byte Folded Spill
- sd s8, 64(sp) # 8-byte Folded Spill
- sd s9, 56(sp) # 8-byte Folded Spill
- sd s10, 48(sp) # 8-byte Folded Spill
- sd s11, 40(sp) # 8-byte Folded Spill
+ addi sp, sp, -128
+ sd ra, 120(sp) # 8-byte Folded Spill
+ sd s0, 112(sp) # 8-byte Folded Spill
+ sd s1, 104(sp) # 8-byte Folded Spill
+ sd s2, 96(sp) # 8-byte Folded Spill
+ sd s3, 88(sp) # 8-byte Folded Spill
+ sd s4, 80(sp) # 8-byte Folded Spill
+ sd s5, 72(sp) # 8-byte Folded Spill
+ sd s6, 64(sp) # 8-byte Folded Spill
+ sd s7, 56(sp) # 8-byte Folded Spill
+ sd s8, 48(sp) # 8-byte Folded Spill
+ sd s9, 40(sp) # 8-byte Folded Spill
li a0, 0
li s3, 1
lui a1, %hi(u)
addi s2, a1, %lo(u)
- addi s1, sp, 16
- lui a1, 171
- addiw a1, a1, -1365
- slli a1, a1, 12
- addi s4, a1, -1365
+ addi s4, sp, 16
lui a1, 699051
addiw a1, a1, -1365
- slli s5, a1, 32
+ slli s1, a1, 32
lui a1, 838861
addiw a1, a1, -819
- slli s6, a1, 32
- li s7, 6
+ slli s5, a1, 32
+ li s6, 6
lui a1, 299593
slli a1, a1, 1
- addi s8, a1, 1171
- li s9, 14
+ addi s7, a1, 1171
+ li s8, 14
lui a1, 149797
- addiw s10, a1, -1755
- slli s11, s10, 32
+ addiw a1, a1, -1755
+ slli s9, a1, 32
.LBB24_1: # %for.body
# =>This Inner Loop Header: Depth=1
slli a0, a0, 4
@@ -975,9 +995,9 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq4444
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- srli a0, a0, 2
+ srliw a0, a0, 2
bne a1, a0, .LBB24_101
# %bb.2: # %lor.lhs.false
# in Loop: Header=BB24_1 Depth=1
@@ -989,9 +1009,9 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a0, a0, 2
+ srliw a0, a0, 2
bne a1, a0, .LBB24_101
# %bb.4: # %lor.lhs.false19
# in Loop: Header=BB24_1 Depth=1
@@ -1006,7 +1026,7 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur4444
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
andi a0, a0, 3
bne a1, a0, .LBB24_101
@@ -1020,7 +1040,7 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
andi a0, a0, 3
bne a1, a0, .LBB24_101
@@ -1050,9 +1070,9 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a0, a0, 1
+ srliw a0, a0, 1
bne a1, a0, .LBB24_101
# %bb.12: # %lor.lhs.false90
# in Loop: Header=BB24_1 Depth=1
@@ -1079,7 +1099,7 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
andi a0, a0, 1
bne a1, a0, .LBB24_101
@@ -1096,9 +1116,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq3333
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.18: # %lor.lhs.false145
@@ -1106,16 +1127,17 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a0, a0, 32
- mulhu a0, a0, s5
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.19: # %if.end154
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.20: # %lor.lhs.false162
@@ -1123,7 +1145,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a0, a0, 32
- mulhu a0, a0, s5
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.21: # %if.end171
@@ -1133,9 +1155,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur3333
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1146,7 +1169,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s5
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1156,9 +1179,10 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1169,7 +1193,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s5
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1182,9 +1206,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq6565
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.26: # %lor.lhs.false217
@@ -1192,16 +1217,17 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a0, a0, 32
- mulhu a0, a0, s6
+ mulhu a0, a0, s5
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.27: # %if.end226
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.28: # %lor.lhs.false234
@@ -1209,7 +1235,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a0, a0, 32
- mulhu a0, a0, s6
+ mulhu a0, a0, s5
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.29: # %if.end243
@@ -1219,11 +1245,12 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur6565
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 34
- mulw a2, a2, s7
+ mulw a2, a2, s6
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.30: # %lor.lhs.false253
@@ -1231,7 +1258,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s6
+ mulhu a2, a2, s5
srli a2, a2, 34
slliw a3, a2, 2
addw a2, a2, a3
@@ -1241,11 +1268,12 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 34
- mulw a2, a2, s7
+ mulw a2, a2, s6
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.32: # %lor.lhs.false270
@@ -1253,7 +1281,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s6
+ mulhu a2, a2, s5
srli a2, a2, 34
slliw a3, a2, 2
addw a2, a2, a3
@@ -1266,10 +1294,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq1414146
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- srli a0, a0, 1
- mul a0, a0, s8
+ srliw a0, a0, 1
+ mul a0, a0, s7
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.34: # %lor.lhs.false289
@@ -1277,17 +1305,17 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a0, a0, 32
- mulhu a0, a0, s5
+ mulhu a0, a0, s1
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.35: # %if.end298
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a0, a0, 1
- mul a0, a0, s8
+ srliw a0, a0, 1
+ mul a0, a0, s7
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.36: # %lor.lhs.false306
@@ -1295,7 +1323,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
srliw a0, a0, 1
- mul a0, a0, s8
+ mul a0, a0, s7
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.37: # %if.end315
@@ -1305,12 +1333,12 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur1414146
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- srli a2, a0, 1
- mul a2, a2, s8
+ srliw a2, a0, 1
+ mul a2, a2, s7
srli a2, a2, 34
- mulw a2, a2, s9
+ mulw a2, a2, s8
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.38: # %lor.lhs.false325
@@ -1318,21 +1346,21 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s5
+ mulhu a2, a2, s1
srli a2, a2, 34
- mulw a2, a2, s7
+ mulw a2, a2, s6
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.39: # %if.end334
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a2, a0, 1
- mul a2, a2, s8
+ srliw a2, a0, 1
+ mul a2, a2, s7
srli a2, a2, 34
- mulw a2, a2, s9
+ mulw a2, a2, s8
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.40: # %lor.lhs.false342
@@ -1340,9 +1368,9 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
srliw a2, a0, 1
- mul a2, a2, s8
+ mul a2, a2, s7
srli a2, a2, 34
- mulw a2, a2, s9
+ mulw a2, a2, s8
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.41: # %if.end351
@@ -1352,9 +1380,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq7777
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1366,7 +1395,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1377,9 +1406,10 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1391,7 +1421,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1405,9 +1435,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur7777
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1422,7 +1453,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1436,9 +1467,10 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1453,7 +1485,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1505,8 +1537,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 12(s0)
lw a1, 12(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
addw a0, a0, a2
sraiw a0, a0, 2
bne a1, a0, .LBB24_101
@@ -1525,8 +1557,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
addw a0, a0, a2
sraiw a0, a0, 2
bne a1, a0, .LBB24_101
@@ -1549,8 +1581,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 12(s0)
lw a1, 12(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
add a2, a2, a0
andi a2, a2, -4
subw a0, a0, a2
@@ -1571,8 +1603,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
add a2, a2, a0
andi a2, a2, -4
subw a0, a0, a2
@@ -1591,8 +1623,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 12(s0)
lw a1, 12(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 29
+ slli a2, a0, 1
+ srli a2, a2, 61
addw a0, a0, a2
sraiw a0, a0, 3
bne a1, a0, .LBB24_101
@@ -1600,9 +1632,9 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 8(sp)
- srli a2, a0, 31
+ srliw a2, a0, 31
addw a0, a0, a2
sraiw a0, a0, 1
bne a1, a0, .LBB24_101
@@ -1610,8 +1642,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
addw a0, a0, a2
sraiw a0, a0, 2
bne a1, a0, .LBB24_101
@@ -1638,9 +1670,9 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 8(sp)
- srli a2, a0, 31
+ srliw a2, a0, 31
add a2, a2, a0
andi a2, a2, -2
subw a0, a0, a2
@@ -1649,8 +1681,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
add a2, a2, a0
andi a2, a2, -4
subw a0, a0, a2
@@ -2079,20 +2111,18 @@ main: # @main
bnez a1, .LBB24_51
# %bb.100: # %for.end863
li a0, 0
- ld ra, 136(sp) # 8-byte Folded Reload
- ld s0, 128(sp) # 8-byte Folded Reload
- ld s1, 120(sp) # 8-byte Folded Reload
- ld s2, 112(sp) # 8-byte Folded Reload
- ld s3, 104(sp) # 8-byte Folded Reload
- ld s4, 96(sp) # 8-byte Folded Reload
- ld s5, 88(sp) # 8-byte Folded Reload
- ld s6, 80(sp) # 8-byte Folded Reload
- ld s7, 72(sp) # 8-byte Folded Reload
- ld s8, 64(sp) # 8-byte Folded Reload
- ld s9, 56(sp) # 8-byte Folded Reload
- ld s10, 48(sp) # 8-byte Folded Reload
- ld s11, 40(sp) # 8-byte Folded Reload
- addi sp, sp, 144
+ ld ra, 120(sp) # 8-byte Folded Reload
+ ld s0, 112(sp) # 8-byte Folded Reload
+ ld s1, 104(sp) # 8-byte Folded Reload
+ ld s2, 96(sp) # 8-byte Folded Reload
+ ld s3, 88(sp) # 8-byte Folded Reload
+ ld s4, 80(sp) # 8-byte Folded Reload
+ ld s5, 72(sp) # 8-byte Folded Reload
+ ld s6, 64(sp) # 8-byte Folded Reload
+ ld s7, 56(sp) # 8-byte Folded Reload
+ ld s8, 48(sp) # 8-byte Folded Reload
+ ld s9, 40(sp) # 8-byte Folded Reload
+ addi sp, sp, 128
ret
.LBB24_101: # %if.then
call abort
diff --git a/output_rv64imafdc_lp64_O3/loop-5.s b/output_rv64imafdc_lp64_O3/loop-5.s
index 4c4398adfe..a5bdfb93ff 100644
--- a/output_rv64imafdc_lp64_O3/loop-5.s
+++ b/output_rv64imafdc_lp64_O3/loop-5.s
@@ -9,15 +9,16 @@ main: # @main
# %bb.0: # %entry
addi sp, sp, -16
sd ra, 8(sp) # 8-byte Folded Spill
- lui a3, %hi(t)
- lwu a2, %lo(t)(a3)
- sext.w a0, a2
+ lui a2, %hi(t)
+ lw a0, %lo(t)(a2)
li a1, 4
bge a0, a1, .LBB0_9
# %bb.1: # %ap.exit.i
+ slli a1, a0, 32
+ srli a3, a1, 32
addiw a1, a0, 1
- sw a1, %lo(t)(a3)
- slli a2, a2, 2
+ sw a1, %lo(t)(a2)
+ slli a2, a3, 2
lui a3, %hi(a)
addi a3, a3, %lo(a)
add a2, a2, a3
diff --git a/output_rv64imafdc_lp64_O3/memset-2.s b/output_rv64imafdc_lp64_O3/memset-2.s
index 237b5e0438..554afa02bd 100644
--- a/output_rv64imafdc_lp64_O3/memset-2.s
+++ b/output_rv64imafdc_lp64_O3/memset-2.s
@@ -16,14 +16,12 @@ reset: # @reset
addi a1, a0, %lo(u)
li a2, 97
sb a2, 30(a1)
- lui a2, 6
- addiw a2, a2, 353
- sh a2, 28(a1)
lui a2, %hi(.LCPI0_0)
ld a2, %lo(.LCPI0_0)(a2)
- lui a3, 398870
+ lui a3, 6
addiw a3, a3, 353
- sw a3, 24(a1)
+ sh a3, 28(a1)
+ sw a2, 24(a1)
sd a2, 16(a1)
sd a2, %lo(u+8)(a0)
sd a2, %lo(u)(a0)
@@ -136,38 +134,36 @@ check: # @check
.type main,@function
main: # @main
# %bb.0: # %entry
- addi sp, sp, -176
- sd ra, 168(sp) # 8-byte Folded Spill
- sd s0, 160(sp) # 8-byte Folded Spill
- sd s1, 152(sp) # 8-byte Folded Spill
- sd s2, 144(sp) # 8-byte Folded Spill
- sd s3, 136(sp) # 8-byte Folded Spill
- sd s4, 128(sp) # 8-byte Folded Spill
- sd s5, 120(sp) # 8-byte Folded Spill
- sd s6, 112(sp) # 8-byte Folded Spill
- sd s7, 104(sp) # 8-byte Folded Spill
- sd s8, 96(sp) # 8-byte Folded Spill
- sd s9, 88(sp) # 8-byte Folded Spill
- sd s10, 80(sp) # 8-byte Folded Spill
- sd s11, 72(sp) # 8-byte Folded Spill
+ addi sp, sp, -192
+ sd ra, 184(sp) # 8-byte Folded Spill
+ sd s0, 176(sp) # 8-byte Folded Spill
+ sd s1, 168(sp) # 8-byte Folded Spill
+ sd s2, 160(sp) # 8-byte Folded Spill
+ sd s3, 152(sp) # 8-byte Folded Spill
+ sd s4, 144(sp) # 8-byte Folded Spill
+ sd s5, 136(sp) # 8-byte Folded Spill
+ sd s6, 128(sp) # 8-byte Folded Spill
+ sd s7, 120(sp) # 8-byte Folded Spill
+ sd s8, 112(sp) # 8-byte Folded Spill
+ sd s9, 104(sp) # 8-byte Folded Spill
+ sd s10, 96(sp) # 8-byte Folded Spill
+ sd s11, 88(sp) # 8-byte Folded Spill
lui a0, %hi(.LCPI2_0)
- ld s11, %lo(.LCPI2_0)(a0)
- li a0, -1
- srli a0, a0, 32
- sd a0, 64(sp) # 8-byte Folded Spill
+ ld s10, %lo(.LCPI2_0)(a0)
+ li s9, -1
+ srli a0, s9, 32
+ sd a0, 80(sp) # 8-byte Folded Spill
lui s1, %hi(u)
- sd s11, %lo(u)(s1)
- addi s9, s1, %lo(u)
+ sd s10, %lo(u)(s1)
+ addi s8, s1, %lo(u)
li s0, 97
- sb s0, 30(s9)
+ sb s0, 30(s8)
lui a0, 6
addiw s4, a0, 353
- sh s4, 28(s9)
- lui a0, 398870
- addiw s2, a0, 353
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u)(s1)
li a1, 1
li a0, 0
@@ -175,10 +171,11 @@ main: # @main
call check
lui a0, %hi(A)
lb a0, %lo(A)(a0)
- lui s6, %hi(A)
+ lui s2, %hi(A)
sb a0, %lo(u)(s1)
li a1, 1
li a2, 65
+ li s11, 65
li a0, 0
call check
li s3, 66
@@ -187,20 +184,21 @@ main: # @main
li a2, 66
li a0, 0
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+1)(s1)
- addi a0, s9, 1
- sd a0, 32(sp) # 8-byte Folded Spill
+ addi a0, s8, 1
+ sd a0, 24(sp) # 8-byte Folded Spill
li a0, 1
li a1, 1
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+1)(s1)
li a0, 1
li a1, 1
@@ -211,18 +209,19 @@ main: # @main
li a1, 1
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+2)(s1)
li a0, 2
li a1, 1
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+2)(s1)
li a0, 2
li a1, 1
@@ -233,20 +232,21 @@ main: # @main
li a1, 1
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+3)(s1)
- addi a0, s9, 3
- sd a0, 40(sp) # 8-byte Folded Spill
+ addi a0, s8, 3
+ sd a0, 48(sp) # 8-byte Folded Spill
li a0, 3
li a1, 1
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+3)(s1)
li a0, 3
li a1, 1
@@ -257,18 +257,19 @@ main: # @main
li a1, 1
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+4)(s1)
li a0, 4
li a1, 1
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+4)(s1)
li a0, 4
li a1, 1
@@ -279,20 +280,21 @@ main: # @main
li a1, 1
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+5)(s1)
- addi a0, s9, 5
- sd a0, 48(sp) # 8-byte Folded Spill
+ addi a0, s8, 5
+ sd a0, 56(sp) # 8-byte Folded Spill
li a0, 5
li a1, 1
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+5)(s1)
li a0, 5
li a1, 1
@@ -303,18 +305,19 @@ main: # @main
li a1, 1
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+6)(s1)
li a0, 6
li a1, 1
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+6)(s1)
li a0, 6
li a1, 1
@@ -325,20 +328,21 @@ main: # @main
li a1, 1
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+7)(s1)
- addi a0, s9, 7
- sd a0, 56(sp) # 8-byte Folded Spill
+ addi a0, s8, 7
+ sd a0, 64(sp) # 8-byte Folded Spill
li a0, 7
li a1, 1
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+7)(s1)
li a0, 7
li a1, 1
@@ -349,18 +353,19 @@ main: # @main
li a1, 1
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sh zero, %lo(u)(s1)
li a1, 2
li a0, 0
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
+ lui s2, %hi(A)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u)(s1)
@@ -375,19 +380,20 @@ main: # @main
li a2, 66
li a0, 0
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+2)(s1)
sb zero, %lo(u+1)(s1)
li a0, 1
li a1, 2
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+1)(s1)
sb a0, %lo(u+2)(s1)
li a0, 1
@@ -400,18 +406,19 @@ main: # @main
li a1, 2
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sh zero, %lo(u+2)(s1)
li a0, 2
li a1, 2
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
+ lui s2, %hi(A)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+2)(s1)
@@ -424,19 +431,20 @@ main: # @main
li a1, 2
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+4)(s1)
sb zero, %lo(u+3)(s1)
li a0, 3
li a1, 2
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+3)(s1)
sb a0, %lo(u+4)(s1)
li a0, 3
@@ -449,18 +457,19 @@ main: # @main
li a1, 2
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sh zero, %lo(u+4)(s1)
li a0, 4
li a1, 2
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
+ lui s2, %hi(A)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+4)(s1)
@@ -473,19 +482,20 @@ main: # @main
li a1, 2
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+6)(s1)
sb zero, %lo(u+5)(s1)
li a0, 5
li a1, 2
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+5)(s1)
sb a0, %lo(u+6)(s1)
li a0, 5
@@ -498,18 +508,19 @@ main: # @main
li a1, 2
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sh zero, %lo(u+6)(s1)
li a0, 6
li a1, 2
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
+ lui s2, %hi(A)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+6)(s1)
@@ -522,19 +533,20 @@ main: # @main
li a1, 2
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+7)(s1)
sb zero, %lo(u+8)(s1)
li a0, 7
li a1, 2
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+7)(s1)
sb a0, %lo(u+8)(s1)
li a0, 7
@@ -547,19 +559,20 @@ main: # @main
li a1, 2
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sh zero, %lo(u)(s1)
sb zero, %lo(u+2)(s1)
li a1, 3
li a0, 0
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+2)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -574,12 +587,12 @@ main: # @main
li a2, 66
li a0, 0
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+1)(s1)
sb zero, %lo(u+2)(s1)
sb zero, %lo(u+3)(s1)
@@ -587,7 +600,8 @@ main: # @main
li a1, 3
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+1)(s1)
sb a0, %lo(u+2)(s1)
sb a0, %lo(u+3)(s1)
@@ -602,19 +616,20 @@ main: # @main
li a1, 3
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sh zero, %lo(u+2)(s1)
sb zero, %lo(u+4)(s1)
li a0, 2
li a1, 3
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+4)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -629,12 +644,12 @@ main: # @main
li a1, 3
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+3)(s1)
sb zero, %lo(u+4)(s1)
sb zero, %lo(u+5)(s1)
@@ -642,7 +657,8 @@ main: # @main
li a1, 3
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+3)(s1)
sb a0, %lo(u+4)(s1)
sb a0, %lo(u+5)(s1)
@@ -657,19 +673,20 @@ main: # @main
li a1, 3
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sh zero, %lo(u+4)(s1)
sb zero, %lo(u+6)(s1)
li a0, 4
li a1, 3
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+6)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -684,12 +701,12 @@ main: # @main
li a1, 3
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+5)(s1)
sb zero, %lo(u+6)(s1)
sb zero, %lo(u+7)(s1)
@@ -697,7 +714,8 @@ main: # @main
li a1, 3
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+5)(s1)
sb a0, %lo(u+6)(s1)
sb a0, %lo(u+7)(s1)
@@ -712,19 +730,20 @@ main: # @main
li a1, 3
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+6)(s1)
sb zero, %lo(u+8)(s1)
li a0, 6
li a1, 3
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+8)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -739,12 +758,12 @@ main: # @main
li a1, 3
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+7)(s1)
sb zero, %lo(u+8)(s1)
sb zero, %lo(u+9)(s1)
@@ -752,7 +771,8 @@ main: # @main
li a1, 3
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+7)(s1)
sb a0, %lo(u+8)(s1)
sb a0, %lo(u+9)(s1)
@@ -767,22 +787,23 @@ main: # @main
li a1, 3
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sw zero, %lo(u)(s1)
li a1, 4
li a0, 0
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
+ lui s5, %hi(A)
lui a1, 4112
addiw a1, a1, 257
mulw a0, a0, a1
- mv s5, a1
+ mv s2, a1
sw a0, %lo(u)(s1)
li a1, 4
li a2, 65
@@ -791,17 +812,17 @@ main: # @main
lui a0, 271396
addiw a0, a0, 578
sw a0, %lo(u)(s1)
- mv s10, a0
+ mv s6, a0
li a1, 4
li a2, 66
li a0, 0
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+4)(s1)
sb zero, %lo(u+3)(s1)
sb zero, %lo(u+2)(s1)
@@ -810,7 +831,8 @@ main: # @main
li a1, 4
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+1)(s1)
sb a0, %lo(u+2)(s1)
sb a0, %lo(u+3)(s1)
@@ -827,19 +849,20 @@ main: # @main
li a1, 4
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sh zero, %lo(u+4)(s1)
sh zero, %lo(u+2)(s1)
li a0, 2
li a1, 4
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+2)(s1)
@@ -854,12 +877,12 @@ main: # @main
li a1, 4
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+6)(s1)
sb zero, %lo(u+5)(s1)
sb zero, %lo(u+4)(s1)
@@ -868,7 +891,8 @@ main: # @main
li a1, 4
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+3)(s1)
sb a0, %lo(u+4)(s1)
sb a0, %lo(u+5)(s1)
@@ -885,35 +909,36 @@ main: # @main
li a1, 4
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sw zero, %lo(u+4)(s1)
li a0, 4
li a1, 4
li a2, 0
call check
- lbu a0, %lo(A)(s6)
- mulw a0, a0, s5
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
+ mulw a0, a0, s2
sw a0, %lo(u+4)(s1)
li a0, 4
li a1, 4
li a2, 65
call check
- sw s10, %lo(u+4)(s1)
+ sw s6, %lo(u+4)(s1)
li a0, 4
li a1, 4
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+7)(s1)
sb zero, %lo(u+8)(s1)
sb zero, %lo(u+5)(s1)
@@ -922,7 +947,8 @@ main: # @main
li a1, 4
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+5)(s1)
sb a0, %lo(u+6)(s1)
sb a0, %lo(u+7)(s1)
@@ -939,19 +965,20 @@ main: # @main
li a1, 4
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+6)(s1)
sh zero, %lo(u+8)(s1)
li a0, 6
li a1, 4
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+6)(s1)
@@ -966,12 +993,12 @@ main: # @main
li a1, 4
li a2, 66
call check
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+9)(s1)
sb zero, %lo(u+10)(s1)
sb zero, %lo(u+7)(s1)
@@ -980,7 +1007,8 @@ main: # @main
li a1, 4
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+7)(s1)
sb a0, %lo(u+8)(s1)
sb a0, %lo(u+9)(s1)
@@ -997,38 +1025,39 @@ main: # @main
li a1, 4
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sw zero, %lo(u)(s1)
sb zero, %lo(u+4)(s1)
li a1, 5
li a0, 0
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+4)(s1)
- mulw a0, a0, s5
+ mulw a0, a0, s2
sw a0, %lo(u)(s1)
li a1, 5
li a2, 65
li a0, 0
call check
sb s3, %lo(u+4)(s1)
- sw s10, %lo(u)(s1)
+ sw s6, %lo(u)(s1)
li a1, 5
li a2, 66
li a0, 0
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+1)(s1)
sb zero, %lo(u+2)(s1)
sb zero, %lo(u+3)(s1)
@@ -1038,7 +1067,8 @@ main: # @main
li a1, 5
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+1)(s1)
sb a0, %lo(u+2)(s1)
sb a0, %lo(u+3)(s1)
@@ -1057,12 +1087,12 @@ main: # @main
li a1, 5
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sh zero, %lo(u+2)(s1)
sh zero, %lo(u+4)(s1)
sb zero, %lo(u+6)(s1)
@@ -1070,7 +1100,8 @@ main: # @main
li a1, 5
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+6)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -1087,12 +1118,12 @@ main: # @main
li a1, 5
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+3)(s1)
sb zero, %lo(u+4)(s1)
sb zero, %lo(u+5)(s1)
@@ -1102,7 +1133,8 @@ main: # @main
li a1, 5
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+3)(s1)
sb a0, %lo(u+4)(s1)
sb a0, %lo(u+5)(s1)
@@ -1121,38 +1153,39 @@ main: # @main
li a1, 5
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sw zero, %lo(u+4)(s1)
sb zero, %lo(u+8)(s1)
li a0, 4
li a1, 5
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+8)(s1)
- mulw a0, a0, s5
+ mulw a0, a0, s2
sw a0, %lo(u+4)(s1)
li a0, 4
li a1, 5
li a2, 65
call check
sb s3, %lo(u+8)(s1)
- sw s10, %lo(u+4)(s1)
+ sw s6, %lo(u+4)(s1)
li a0, 4
li a1, 5
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+5)(s1)
sb zero, %lo(u+6)(s1)
sb zero, %lo(u+7)(s1)
@@ -1162,7 +1195,8 @@ main: # @main
li a1, 5
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+5)(s1)
sb a0, %lo(u+6)(s1)
sb a0, %lo(u+7)(s1)
@@ -1181,12 +1215,12 @@ main: # @main
li a1, 5
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+6)(s1)
sh zero, %lo(u+8)(s1)
sb zero, %lo(u+10)(s1)
@@ -1194,7 +1228,8 @@ main: # @main
li a1, 5
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+10)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -1211,12 +1246,12 @@ main: # @main
li a1, 5
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+7)(s1)
sb zero, %lo(u+8)(s1)
sb zero, %lo(u+9)(s1)
@@ -1226,7 +1261,8 @@ main: # @main
li a1, 5
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+7)(s1)
sb a0, %lo(u+8)(s1)
sb a0, %lo(u+9)(s1)
@@ -1245,20 +1281,21 @@ main: # @main
li a1, 5
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sw zero, %lo(u)(s1)
sh zero, %lo(u+4)(s1)
li a1, 6
li a0, 0
li a2, 0
call check
- lbu a0, %lo(A)(s6)
- mulw a1, a0, s5
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
+ mulw a1, a0, s2
sw a1, %lo(u)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -1268,17 +1305,17 @@ main: # @main
li a0, 0
call check
sh s7, %lo(u+4)(s1)
- sw s10, %lo(u)(s1)
+ sw s6, %lo(u)(s1)
li a1, 6
li a2, 66
li a0, 0
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+1)(s1)
sb zero, %lo(u+2)(s1)
sb zero, %lo(u+3)(s1)
@@ -1289,7 +1326,8 @@ main: # @main
li a1, 6
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+1)(s1)
sb a0, %lo(u+2)(s1)
sb a0, %lo(u+3)(s1)
@@ -1310,12 +1348,12 @@ main: # @main
li a1, 6
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sh zero, %lo(u+2)(s1)
sh zero, %lo(u+4)(s1)
sh zero, %lo(u+6)(s1)
@@ -1323,7 +1361,8 @@ main: # @main
li a1, 6
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+2)(s1)
@@ -1340,12 +1379,12 @@ main: # @main
li a1, 6
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+3)(s1)
sb zero, %lo(u+4)(s1)
sb zero, %lo(u+5)(s1)
@@ -1356,7 +1395,8 @@ main: # @main
li a1, 6
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+3)(s1)
sb a0, %lo(u+4)(s1)
sb a0, %lo(u+5)(s1)
@@ -1377,20 +1417,21 @@ main: # @main
li a1, 6
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sw zero, %lo(u+4)(s1)
sh zero, %lo(u+8)(s1)
li a0, 4
li a1, 6
li a2, 0
call check
- lbu a0, %lo(A)(s6)
- mulw a1, a0, s5
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
+ mulw a1, a0, s2
sw a1, %lo(u+4)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -1400,17 +1441,17 @@ main: # @main
li a2, 65
call check
sh s7, %lo(u+8)(s1)
- sw s10, %lo(u+4)(s1)
+ sw s6, %lo(u+4)(s1)
li a0, 4
li a1, 6
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+5)(s1)
sb zero, %lo(u+6)(s1)
sb zero, %lo(u+7)(s1)
@@ -1421,7 +1462,8 @@ main: # @main
li a1, 6
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+5)(s1)
sb a0, %lo(u+6)(s1)
sb a0, %lo(u+7)(s1)
@@ -1442,12 +1484,12 @@ main: # @main
li a1, 6
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+6)(s1)
sh zero, %lo(u+8)(s1)
sh zero, %lo(u+10)(s1)
@@ -1455,7 +1497,8 @@ main: # @main
li a1, 6
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+6)(s1)
@@ -1472,12 +1515,12 @@ main: # @main
li a1, 6
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+7)(s1)
sb zero, %lo(u+8)(s1)
sb zero, %lo(u+9)(s1)
@@ -1488,7 +1531,8 @@ main: # @main
li a1, 6
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+7)(s1)
sb a0, %lo(u+8)(s1)
sb a0, %lo(u+9)(s1)
@@ -1509,12 +1553,12 @@ main: # @main
li a1, 6
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sw zero, %lo(u)(s1)
sh zero, %lo(u+4)(s1)
sb zero, %lo(u+6)(s1)
@@ -1522,10 +1566,11 @@ main: # @main
li a0, 0
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+6)(s1)
- mulw a1, a0, s5
- sd s5, 24(sp) # 8-byte Folded Spill
+ mulw a1, a0, s2
+ sd s2, 72(sp) # 8-byte Folded Spill
sw a1, %lo(u)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -1536,18 +1581,18 @@ main: # @main
call check
sb s3, %lo(u+6)(s1)
sh s7, %lo(u+4)(s1)
- sw s10, %lo(u)(s1)
- sd s10, 8(sp) # 8-byte Folded Spill
+ sw s6, %lo(u)(s1)
+ sd s6, 32(sp) # 8-byte Folded Spill
li a1, 7
li a2, 66
li a0, 0
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+1)(s1)
sb zero, %lo(u+2)(s1)
sb zero, %lo(u+3)(s1)
@@ -1559,7 +1604,8 @@ main: # @main
li a1, 7
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+1)(s1)
sb a0, %lo(u+2)(s1)
sb a0, %lo(u+3)(s1)
@@ -1582,12 +1628,12 @@ main: # @main
li a1, 7
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+2)(s1)
sh zero, %lo(u+4)(s1)
sh zero, %lo(u+6)(s1)
@@ -1596,7 +1642,8 @@ main: # @main
li a1, 7
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+8)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -1615,12 +1662,12 @@ main: # @main
li a1, 7
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+3)(s1)
sb zero, %lo(u+4)(s1)
sb zero, %lo(u+5)(s1)
@@ -1632,7 +1679,8 @@ main: # @main
li a1, 7
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+3)(s1)
sb a0, %lo(u+4)(s1)
sb a0, %lo(u+5)(s1)
@@ -1655,12 +1703,12 @@ main: # @main
li a1, 7
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sw zero, %lo(u+4)(s1)
sh zero, %lo(u+8)(s1)
sb zero, %lo(u+10)(s1)
@@ -1668,9 +1716,10 @@ main: # @main
li a1, 7
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+10)(s1)
- mulw a1, a0, s5
+ mulw a1, a0, s2
sw a1, %lo(u+4)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -1681,17 +1730,17 @@ main: # @main
call check
sb s3, %lo(u+10)(s1)
sh s7, %lo(u+8)(s1)
- sw s10, %lo(u+4)(s1)
+ sw s6, %lo(u+4)(s1)
li a0, 4
li a1, 7
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+5)(s1)
sb zero, %lo(u+6)(s1)
sb zero, %lo(u+7)(s1)
@@ -1703,7 +1752,8 @@ main: # @main
li a1, 7
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s2, %hi(A)
sb a0, %lo(u+5)(s1)
sb a0, %lo(u+6)(s1)
sb a0, %lo(u+7)(s1)
@@ -1726,12 +1776,12 @@ main: # @main
li a1, 7
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+6)(s1)
sh zero, %lo(u+8)(s1)
sh zero, %lo(u+10)(s1)
@@ -1740,7 +1790,7 @@ main: # @main
li a1, 7
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
sb a0, %lo(u+12)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -1759,12 +1809,12 @@ main: # @main
li a1, 7
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+7)(s1)
sb zero, %lo(u+8)(s1)
sb zero, %lo(u+9)(s1)
@@ -1776,7 +1826,7 @@ main: # @main
li a1, 7
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
sb a0, %lo(u+7)(s1)
sb a0, %lo(u+8)(s1)
sb a0, %lo(u+9)(s1)
@@ -1799,20 +1849,20 @@ main: # @main
li a1, 7
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sd zero, %lo(u)(s1)
li a1, 8
li a0, 0
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
lui a1, %hi(.LCPI2_1)
ld a1, %lo(.LCPI2_1)(a1)
- sd a1, 16(sp) # 8-byte Folded Spill
+ sd a1, 40(sp) # 8-byte Folded Spill
mul a0, a0, a1
sd a0, %lo(u)(s1)
li a1, 8
@@ -1820,18 +1870,18 @@ main: # @main
li a0, 0
call check
lui a0, %hi(.LCPI2_2)
- ld s8, %lo(.LCPI2_2)(a0)
- sd s8, %lo(u)(s1)
+ ld s5, %lo(.LCPI2_2)(a0)
+ sd s5, %lo(u)(s1)
li a1, 8
li a2, 66
li a0, 0
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+7)(s1)
sb zero, %lo(u+8)(s1)
sb zero, %lo(u+5)(s1)
@@ -1844,7 +1894,7 @@ main: # @main
li a1, 8
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
sb a0, %lo(u+1)(s1)
sb a0, %lo(u+2)(s1)
sb a0, %lo(u+3)(s1)
@@ -1861,24 +1911,25 @@ main: # @main
sb s3, %lo(u+7)(s1)
sb s3, %lo(u+6)(s1)
lui a0, %hi(.LCPI2_3)
- ld s10, %lo(.LCPI2_3)(a0)
+ ld s6, %lo(.LCPI2_3)(a0)
lui a0, %hi(.LCPI2_4)
- ld s5, %lo(.LCPI2_4)(a0)
+ ld a0, %lo(.LCPI2_4)(a0)
+ sd a0, 8(sp) # 8-byte Folded Spill
sb s3, %lo(u+5)(s1)
sb s3, %lo(u+4)(s1)
- sb s10, %lo(u+3)(s1)
- sb s5, %lo(u+2)(s1)
- sb s8, %lo(u+1)(s1)
+ sb s6, %lo(u+3)(s1)
+ sb a0, %lo(u+2)(s1)
+ sb s5, %lo(u+1)(s1)
li a0, 1
li a1, 8
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+6)(s1)
sh zero, %lo(u+8)(s1)
sh zero, %lo(u+2)(s1)
@@ -1887,7 +1938,7 @@ main: # @main
li a1, 8
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+2)(s1)
@@ -1900,18 +1951,18 @@ main: # @main
call check
sh s7, %lo(u+8)(s1)
sh s7, %lo(u+6)(s1)
- sh s10, %lo(u+4)(s1)
- sh s8, %lo(u+2)(s1)
+ sh s6, %lo(u+4)(s1)
+ sh s5, %lo(u+2)(s1)
li a0, 2
li a1, 8
li a2, 66
call check
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+9)(s1)
sb zero, %lo(u+10)(s1)
sb zero, %lo(u+7)(s1)
@@ -1924,7 +1975,8 @@ main: # @main
li a1, 8
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lui a0, %hi(A)
+ lb a0, %lo(A)(a0)
sb a0, %lo(u+3)(s1)
sb a0, %lo(u+4)(s1)
sb a0, %lo(u+5)(s1)
@@ -1942,27 +1994,29 @@ main: # @main
sb s3, %lo(u+8)(s1)
sb s3, %lo(u+7)(s1)
sb s3, %lo(u+6)(s1)
- sb s10, %lo(u+5)(s1)
- sb s5, %lo(u+4)(s1)
- sb s8, %lo(u+3)(s1)
+ sb s6, %lo(u+5)(s1)
+ ld s2, 8(sp) # 8-byte Folded Reload
+ sb s2, %lo(u+4)(s1)
+ sb s5, %lo(u+3)(s1)
li a0, 3
li a1, 8
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sw zero, %lo(u+4)(s1)
sw zero, %lo(u+8)(s1)
li a0, 4
li a1, 8
li a2, 0
call check
- lbu a0, %lo(A)(s6)
- ld a1, 24(sp) # 8-byte Folded Reload
+ lui a0, %hi(A)
+ lbu a0, %lo(A)(a0)
+ ld a1, 72(sp) # 8-byte Folded Reload
mulw a0, a0, a1
sw a0, %lo(u+4)(s1)
sw a0, %lo(u+8)(s1)
@@ -1970,19 +2024,19 @@ main: # @main
li a1, 8
li a2, 65
call check
- ld a0, 8(sp) # 8-byte Folded Reload
+ ld a0, 32(sp) # 8-byte Folded Reload
sw a0, %lo(u+8)(s1)
- sw s8, %lo(u+4)(s1)
+ sw s5, %lo(u+4)(s1)
li a0, 4
li a1, 8
li a2, 66
call check
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+11)(s1)
sb zero, %lo(u+12)(s1)
sb zero, %lo(u+9)(s1)
@@ -1995,7 +2049,8 @@ main: # @main
li a1, 8
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lui a0, %hi(A)
+ lb a0, %lo(A)(a0)
sb a0, %lo(u+5)(s1)
sb a0, %lo(u+6)(s1)
sb a0, %lo(u+7)(s1)
@@ -2013,19 +2068,19 @@ main: # @main
sb s3, %lo(u+10)(s1)
sb s3, %lo(u+9)(s1)
sb s3, %lo(u+8)(s1)
- sb s10, %lo(u+7)(s1)
- sb s5, %lo(u+6)(s1)
- sb s8, %lo(u+5)(s1)
+ sb s6, %lo(u+7)(s1)
+ sb s2, %lo(u+6)(s1)
+ sb s5, %lo(u+5)(s1)
li a0, 5
li a1, 8
li a2, 66
call check
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+10)(s1)
sh zero, %lo(u+12)(s1)
sh zero, %lo(u+6)(s1)
@@ -2034,7 +2089,8 @@ main: # @main
li a1, 8
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lui s2, %hi(A)
+ lbu a0, %lo(A)(s2)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+6)(s1)
@@ -2047,18 +2103,18 @@ main: # @main
call check
sh s7, %lo(u+12)(s1)
sh s7, %lo(u+10)(s1)
- sh s10, %lo(u+8)(s1)
- sh s8, %lo(u+6)(s1)
+ sh s6, %lo(u+8)(s1)
+ sh s5, %lo(u+6)(s1)
li a0, 6
li a1, 8
li a2, 66
call check
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+13)(s1)
sb zero, %lo(u+14)(s1)
sb zero, %lo(u+11)(s1)
@@ -2071,7 +2127,8 @@ main: # @main
li a1, 8
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+7)(s1)
sb a0, %lo(u+8)(s1)
sb a0, %lo(u+9)(s1)
@@ -2089,28 +2146,29 @@ main: # @main
sb s3, %lo(u+12)(s1)
sb s3, %lo(u+11)(s1)
sb s3, %lo(u+10)(s1)
- sb s10, %lo(u+9)(s1)
- sb s5, %lo(u+8)(s1)
- sb s8, %lo(u+7)(s1)
- sd s8, 0(sp) # 8-byte Folded Spill
+ sb s6, %lo(u+9)(s1)
+ ld a0, 8(sp) # 8-byte Folded Reload
+ sb a0, %lo(u+8)(s1)
+ sb s5, %lo(u+7)(s1)
+ sd s5, 16(sp) # 8-byte Folded Spill
li a0, 7
li a1, 8
li a2, 66
call check
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sd zero, %lo(u)(s1)
sb zero, %lo(u+8)(s1)
li a1, 9
li a0, 0
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
sb a0, %lo(u+8)(s1)
- ld a1, 16(sp) # 8-byte Folded Reload
+ ld a1, 40(sp) # 8-byte Folded Reload
mul a0, a0, a1
sd a0, %lo(u)(s1)
li a1, 9
@@ -2118,29 +2176,30 @@ main: # @main
li a0, 0
call check
sb s3, %lo(u+8)(s1)
- sd s8, %lo(u)(s1)
+ sd s5, %lo(u)(s1)
li a1, 9
li a2, 66
li a0, 0
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 9
- ld s5, 32(sp) # 8-byte Folded Reload
- mv a0, s5
+ ld s2, 24(sp) # 8-byte Folded Reload
+ mv a0, s2
li a1, 0
call memset@plt
li a0, 1
li a1, 9
li a2, 0
call check
- lb a1, %lo(A)(s6)
+ lui s5, %hi(A)
+ lb a1, %lo(A)(s5)
li a2, 9
- mv a0, s5
+ mv a0, s2
call memset@plt
li a0, 1
li a1, 9
@@ -2148,18 +2207,18 @@ main: # @main
call check
li a1, 66
li a2, 9
- mv a0, s5
+ mv a0, s2
call memset@plt
li a0, 1
li a1, 9
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+2)(s1)
sh zero, %lo(u+4)(s1)
sh zero, %lo(u+6)(s1)
@@ -2169,7 +2228,8 @@ main: # @main
li a1, 9
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+10)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -2190,24 +2250,24 @@ main: # @main
li a1, 9
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 9
- ld s8, 40(sp) # 8-byte Folded Reload
- mv a0, s8
+ ld s2, 48(sp) # 8-byte Folded Reload
+ mv a0, s2
li a1, 0
call memset@plt
li a0, 3
li a1, 9
li a2, 0
call check
- lb a1, %lo(A)(s6)
+ lb a1, %lo(A)(s5)
li a2, 9
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 3
li a1, 9
@@ -2215,18 +2275,18 @@ main: # @main
call check
li a1, 66
li a2, 9
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 3
li a1, 9
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sw zero, %lo(u+4)(s1)
sw zero, %lo(u+8)(s1)
sb zero, %lo(u+12)(s1)
@@ -2234,9 +2294,9 @@ main: # @main
li a1, 9
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
sb a0, %lo(u+12)(s1)
- ld a1, 24(sp) # 8-byte Folded Reload
+ ld a1, 72(sp) # 8-byte Folded Reload
mulw a0, a0, a1
sw a0, %lo(u+4)(s1)
sw a0, %lo(u+8)(s1)
@@ -2245,31 +2305,31 @@ main: # @main
li a2, 65
call check
sb s3, %lo(u+12)(s1)
- ld a0, 8(sp) # 8-byte Folded Reload
+ ld a0, 32(sp) # 8-byte Folded Reload
sw a0, %lo(u+8)(s1)
sw a0, %lo(u+4)(s1)
li a0, 4
li a1, 9
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 9
- ld s5, 48(sp) # 8-byte Folded Reload
- mv a0, s5
+ ld s2, 56(sp) # 8-byte Folded Reload
+ mv a0, s2
li a1, 0
call memset@plt
li a0, 5
li a1, 9
li a2, 0
call check
- lb a1, %lo(A)(s6)
+ lb a1, %lo(A)(s5)
li a2, 9
- mv a0, s5
+ mv a0, s2
call memset@plt
li a0, 5
li a1, 9
@@ -2277,18 +2337,18 @@ main: # @main
call check
li a1, 66
li a2, 9
- mv a0, s5
+ mv a0, s2
call memset@plt
li a0, 5
li a1, 9
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+6)(s1)
sh zero, %lo(u+8)(s1)
sh zero, %lo(u+10)(s1)
@@ -2298,7 +2358,8 @@ main: # @main
li a1, 9
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lui s2, %hi(A)
+ lbu a0, %lo(A)(s2)
sb a0, %lo(u+14)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -2319,24 +2380,25 @@ main: # @main
li a1, 9
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 9
- ld s10, 56(sp) # 8-byte Folded Reload
- mv a0, s10
+ ld s6, 64(sp) # 8-byte Folded Reload
+ mv a0, s6
li a1, 0
call memset@plt
li a0, 7
li a1, 9
li a2, 0
call check
- lb a1, %lo(A)(s6)
+ lb a1, %lo(A)(s2)
+ lui s5, %hi(A)
li a2, 9
- mv a0, s10
+ mv a0, s6
call memset@plt
li a0, 7
li a1, 9
@@ -2344,27 +2406,26 @@ main: # @main
call check
li a1, 66
li a2, 9
- mv a0, s10
+ mv a0, s6
call memset@plt
li a0, 7
li a1, 9
li a2, 66
call check
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sd zero, %lo(u)(s1)
sh zero, %lo(u+8)(s1)
li a1, 10
li a0, 0
li a2, 0
call check
- lui s6, %hi(A)
- lbu a0, %lo(A)(s6)
- ld s5, 16(sp) # 8-byte Folded Reload
- mul a1, a0, s5
+ lbu a0, %lo(A)(s5)
+ ld a1, 40(sp) # 8-byte Folded Reload
+ mul a1, a0, a1
sd a1, %lo(u)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -2374,31 +2435,30 @@ main: # @main
li a0, 0
call check
sh s7, %lo(u+8)(s1)
- ld a0, 0(sp) # 8-byte Folded Reload
+ ld a0, 16(sp) # 8-byte Folded Reload
sd a0, %lo(u)(s1)
li a1, 10
li a2, 66
li a0, 0
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 10
- ld s8, 32(sp) # 8-byte Folded Reload
- mv a0, s8
+ ld s6, 24(sp) # 8-byte Folded Reload
+ mv a0, s6
li a1, 0
call memset@plt
li a0, 1
li a1, 10
li a2, 0
call check
- lb a1, %lo(A)(s6)
- lui s6, %hi(A)
+ lb a1, %lo(A)(s5)
li a2, 10
- mv a0, s8
+ mv a0, s6
call memset@plt
li a0, 1
li a1, 10
@@ -2406,18 +2466,18 @@ main: # @main
call check
li a1, 66
li a2, 10
- mv a0, s8
+ mv a0, s6
call memset@plt
li a0, 1
li a1, 10
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+2)(s1)
sh zero, %lo(u+4)(s1)
sh zero, %lo(u+6)(s1)
@@ -2427,7 +2487,7 @@ main: # @main
li a1, 10
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+2)(s1)
@@ -2448,24 +2508,24 @@ main: # @main
li a1, 10
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 10
- ld s10, 40(sp) # 8-byte Folded Reload
- mv a0, s10
+ ld s6, 48(sp) # 8-byte Folded Reload
+ mv a0, s6
li a1, 0
call memset@plt
li a0, 3
li a1, 10
li a2, 0
call check
- lb a1, %lo(A)(s6)
+ lb a1, %lo(A)(s5)
li a2, 10
- mv a0, s10
+ mv a0, s6
call memset@plt
li a0, 3
li a1, 10
@@ -2473,18 +2533,18 @@ main: # @main
call check
li a1, 66
li a2, 10
- mv a0, s10
+ mv a0, s6
call memset@plt
li a0, 3
li a1, 10
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sw zero, %lo(u+4)(s1)
sw zero, %lo(u+8)(s1)
sh zero, %lo(u+12)(s1)
@@ -2492,8 +2552,8 @@ main: # @main
li a1, 10
li a2, 0
call check
- lbu a0, %lo(A)(s6)
- ld a1, 24(sp) # 8-byte Folded Reload
+ lbu a0, %lo(A)(s5)
+ ld a1, 72(sp) # 8-byte Folded Reload
mulw a1, a0, a1
sw a1, %lo(u+4)(s1)
sw a1, %lo(u+8)(s1)
@@ -2505,31 +2565,31 @@ main: # @main
li a2, 65
call check
sh s7, %lo(u+12)(s1)
- ld s10, 8(sp) # 8-byte Folded Reload
- sw s10, %lo(u+8)(s1)
- sw s10, %lo(u+4)(s1)
+ ld s6, 32(sp) # 8-byte Folded Reload
+ sw s6, %lo(u+8)(s1)
+ sw s6, %lo(u+4)(s1)
li a0, 4
li a1, 10
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 10
- ld s8, 48(sp) # 8-byte Folded Reload
- mv a0, s8
+ ld s2, 56(sp) # 8-byte Folded Reload
+ mv a0, s2
li a1, 0
call memset@plt
li a0, 5
li a1, 10
li a2, 0
call check
- lb a1, %lo(A)(s6)
+ lb a1, %lo(A)(s5)
li a2, 10
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 5
li a1, 10
@@ -2537,18 +2597,18 @@ main: # @main
call check
li a1, 66
li a2, 10
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 5
li a1, 10
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+6)(s1)
sh zero, %lo(u+8)(s1)
sh zero, %lo(u+10)(s1)
@@ -2558,7 +2618,7 @@ main: # @main
li a1, 10
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+6)(s1)
@@ -2579,24 +2639,24 @@ main: # @main
li a1, 10
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 10
- ld s8, 56(sp) # 8-byte Folded Reload
- mv a0, s8
+ ld s2, 64(sp) # 8-byte Folded Reload
+ mv a0, s2
li a1, 0
call memset@plt
li a0, 7
li a1, 10
li a2, 0
call check
- lb a1, %lo(A)(s6)
+ lb a1, %lo(A)(s5)
li a2, 10
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 7
li a1, 10
@@ -2604,17 +2664,17 @@ main: # @main
call check
li a1, 66
li a2, 10
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 7
li a1, 10
li a2, 66
call check
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sd zero, %lo(u)(s1)
sh zero, %lo(u+8)(s1)
sb zero, %lo(u+10)(s1)
@@ -2622,9 +2682,10 @@ main: # @main
li a0, 0
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
sb a0, %lo(u+10)(s1)
- mul a1, a0, s5
+ ld a1, 40(sp) # 8-byte Folded Reload
+ mul a1, a0, a1
sd a1, %lo(u)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -2635,30 +2696,30 @@ main: # @main
call check
sb s3, %lo(u+10)(s1)
sh s7, %lo(u+8)(s1)
- ld a0, 0(sp) # 8-byte Folded Reload
+ ld a0, 16(sp) # 8-byte Folded Reload
sd a0, %lo(u)(s1)
li a1, 11
li a2, 66
li a0, 0
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 11
- ld s5, 32(sp) # 8-byte Folded Reload
- mv a0, s5
+ ld s2, 24(sp) # 8-byte Folded Reload
+ mv a0, s2
li a1, 0
call memset@plt
li a0, 1
li a1, 11
li a2, 0
call check
- lb a1, %lo(A)(s6)
+ lb a1, %lo(A)(s5)
li a2, 11
- mv a0, s5
+ mv a0, s2
call memset@plt
li a0, 1
li a1, 11
@@ -2666,18 +2727,18 @@ main: # @main
call check
li a1, 66
li a2, 11
- mv a0, s5
+ mv a0, s2
call memset@plt
li a0, 1
li a1, 11
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+2)(s1)
sh zero, %lo(u+4)(s1)
sh zero, %lo(u+6)(s1)
@@ -2688,7 +2749,7 @@ main: # @main
li a1, 11
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
sb a0, %lo(u+12)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -2711,24 +2772,24 @@ main: # @main
li a1, 11
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 11
- ld s8, 40(sp) # 8-byte Folded Reload
- mv a0, s8
+ ld s2, 48(sp) # 8-byte Folded Reload
+ mv a0, s2
li a1, 0
call memset@plt
li a0, 3
li a1, 11
li a2, 0
call check
- lb a1, %lo(A)(s6)
+ lb a1, %lo(A)(s5)
li a2, 11
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 3
li a1, 11
@@ -2736,18 +2797,18 @@ main: # @main
call check
li a1, 66
li a2, 11
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 3
li a1, 11
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sw zero, %lo(u+4)(s1)
sw zero, %lo(u+8)(s1)
sh zero, %lo(u+12)(s1)
@@ -2756,10 +2817,10 @@ main: # @main
li a1, 11
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
sb a0, %lo(u+14)(s1)
- ld s5, 24(sp) # 8-byte Folded Reload
- mulw a1, a0, s5
+ ld a1, 72(sp) # 8-byte Folded Reload
+ mulw a1, a0, a1
sw a1, %lo(u+4)(s1)
sw a1, %lo(u+8)(s1)
slli a1, a0, 8
@@ -2771,30 +2832,30 @@ main: # @main
call check
sb s3, %lo(u+14)(s1)
sh s7, %lo(u+12)(s1)
- sw s10, %lo(u+8)(s1)
- sw s10, %lo(u+4)(s1)
+ sw s6, %lo(u+8)(s1)
+ sw s6, %lo(u+4)(s1)
li a0, 4
li a1, 11
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 11
- ld s8, 48(sp) # 8-byte Folded Reload
- mv a0, s8
+ ld s2, 56(sp) # 8-byte Folded Reload
+ mv a0, s2
li a1, 0
call memset@plt
li a0, 5
li a1, 11
li a2, 0
call check
- lb a1, %lo(A)(s6)
+ lb a1, %lo(A)(s5)
li a2, 11
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 5
li a1, 11
@@ -2802,30 +2863,30 @@ main: # @main
call check
li a1, 66
li a2, 11
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 5
li a1, 11
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sd s11, 16(s9)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sd s10, 16(s8)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
sh zero, %lo(u+6)(s1)
sh zero, %lo(u+8)(s1)
sh zero, %lo(u+10)(s1)
sh zero, %lo(u+12)(s1)
sh zero, %lo(u+14)(s1)
- sb zero, 16(s9)
+ sb zero, 16(s8)
li a0, 6
li a1, 11
li a2, 0
call check
- lbu a0, %lo(A)(s6)
- sb a0, 16(s9)
+ lbu a0, %lo(A)(s5)
+ sb a0, 16(s8)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+6)(s1)
@@ -2837,7 +2898,7 @@ main: # @main
li a1, 11
li a2, 65
call check
- sb s3, 16(s9)
+ sb s3, 16(s8)
sh s7, %lo(u+14)(s1)
sh s7, %lo(u+12)(s1)
sh s7, %lo(u+10)(s1)
@@ -2847,24 +2908,24 @@ main: # @main
li a1, 11
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 11
- ld s8, 56(sp) # 8-byte Folded Reload
- mv a0, s8
+ ld s2, 64(sp) # 8-byte Folded Reload
+ mv a0, s2
li a1, 0
call memset@plt
li a0, 7
li a1, 11
li a2, 0
call check
- lb a1, %lo(A)(s6)
+ lb a1, %lo(A)(s5)
li a2, 11
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 7
li a1, 11
@@ -2872,60 +2933,59 @@ main: # @main
call check
li a1, 66
li a2, 11
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 7
li a1, 11
li a2, 66
call check
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sd zero, %lo(u)(s1)
sw zero, %lo(u+8)(s1)
li a1, 12
li a0, 0
li a2, 0
call check
- lui s8, %hi(A)
- lbu a0, %lo(A)(s8)
- ld a1, 16(sp) # 8-byte Folded Reload
- mul a1, a0, a1
- sd a1, %lo(u)(s1)
- mulw a0, a0, s5
+ lui s2, %hi(A)
+ lbu a0, %lo(A)(s2)
+ ld a1, 40(sp) # 8-byte Folded Reload
+ mul a0, a0, a1
+ sd a0, %lo(u)(s1)
sw a0, %lo(u+8)(s1)
li a1, 12
li a2, 65
li a0, 0
call check
- sw s10, %lo(u+8)(s1)
- ld a0, 0(sp) # 8-byte Folded Reload
+ ld a0, 16(sp) # 8-byte Folded Reload
+ sw a0, %lo(u+8)(s1)
sd a0, %lo(u)(s1)
li a1, 12
li a2, 66
li a0, 0
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 12
- ld s6, 32(sp) # 8-byte Folded Reload
- mv a0, s6
+ ld s5, 24(sp) # 8-byte Folded Reload
+ mv a0, s5
li a1, 0
call memset@plt
li a0, 1
li a1, 12
li a2, 0
call check
- lb a1, %lo(A)(s8)
- lui s10, %hi(A)
+ lb a1, %lo(A)(s2)
+ lui s6, %hi(A)
li a2, 12
- mv a0, s6
+ mv a0, s5
call memset@plt
li a0, 1
li a1, 12
@@ -2933,18 +2993,18 @@ main: # @main
call check
li a1, 66
li a2, 12
- mv a0, s6
+ mv a0, s5
call memset@plt
li a0, 1
li a1, 12
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+2)(s1)
sh zero, %lo(u+4)(s1)
sh zero, %lo(u+6)(s1)
@@ -2955,7 +3015,7 @@ main: # @main
li a1, 12
li a2, 0
call check
- lbu a0, %lo(A)(s10)
+ lbu a0, %lo(A)(s6)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+2)(s1)
@@ -2978,24 +3038,24 @@ main: # @main
li a1, 12
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 12
- ld s8, 40(sp) # 8-byte Folded Reload
- mv a0, s8
+ ld s2, 48(sp) # 8-byte Folded Reload
+ mv a0, s2
li a1, 0
call memset@plt
li a0, 3
li a1, 12
li a2, 0
call check
- lb a1, %lo(A)(s10)
+ lb a1, %lo(A)(s6)
li a2, 12
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 3
li a1, 12
@@ -3003,18 +3063,18 @@ main: # @main
call check
li a1, 66
li a2, 12
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 3
li a1, 12
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sw zero, %lo(u+4)(s1)
sw zero, %lo(u+8)(s1)
sw zero, %lo(u+12)(s1)
@@ -3022,10 +3082,10 @@ main: # @main
li a1, 12
li a2, 0
call check
- lui s6, %hi(A)
- lbu a0, %lo(A)(s6)
- mulw a0, a0, s5
- mv s8, s5
+ lui s2, %hi(A)
+ lbu a0, %lo(A)(s2)
+ ld a1, 72(sp) # 8-byte Folded Reload
+ mulw a0, a0, a1
sw a0, %lo(u+4)(s1)
sw a0, %lo(u+8)(s1)
sw a0, %lo(u+12)(s1)
@@ -3033,33 +3093,33 @@ main: # @main
li a1, 12
li a2, 65
call check
- ld s10, 8(sp) # 8-byte Folded Reload
- sw s10, %lo(u+12)(s1)
- sw s10, %lo(u+8)(s1)
- sw s10, %lo(u+4)(s1)
+ ld a0, 32(sp) # 8-byte Folded Reload
+ sw a0, %lo(u+12)(s1)
+ sw a0, %lo(u+8)(s1)
+ sw a0, %lo(u+4)(s1)
li a0, 4
li a1, 12
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 12
- ld s5, 48(sp) # 8-byte Folded Reload
- mv a0, s5
+ ld s6, 56(sp) # 8-byte Folded Reload
+ mv a0, s6
li a1, 0
call memset@plt
li a0, 5
li a1, 12
li a2, 0
call check
- lb a1, %lo(A)(s6)
- lui s6, %hi(A)
+ lb a1, %lo(A)(s2)
+ lui s2, %hi(A)
li a2, 12
- mv a0, s5
+ mv a0, s6
call memset@plt
li a0, 5
li a1, 12
@@ -3067,29 +3127,29 @@ main: # @main
call check
li a1, 66
li a2, 12
- mv a0, s5
+ mv a0, s6
call memset@plt
li a0, 5
li a1, 12
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sd s11, 16(s9)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sd s10, 16(s8)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
sh zero, %lo(u+6)(s1)
sh zero, %lo(u+8)(s1)
sh zero, %lo(u+10)(s1)
sh zero, %lo(u+12)(s1)
sh zero, %lo(u+14)(s1)
- sh zero, 16(s9)
+ sh zero, 16(s8)
li a0, 6
li a1, 12
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+6)(s1)
@@ -3097,12 +3157,12 @@ main: # @main
sh a0, %lo(u+10)(s1)
sh a0, %lo(u+12)(s1)
sh a0, %lo(u+14)(s1)
- sh a0, 16(s9)
+ sh a0, 16(s8)
li a0, 6
li a1, 12
li a2, 65
call check
- sh s7, 16(s9)
+ sh s7, 16(s8)
sh s7, %lo(u+14)(s1)
sh s7, %lo(u+12)(s1)
sh s7, %lo(u+10)(s1)
@@ -3112,24 +3172,24 @@ main: # @main
li a1, 12
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 12
- ld s5, 56(sp) # 8-byte Folded Reload
- mv a0, s5
+ ld s6, 64(sp) # 8-byte Folded Reload
+ mv a0, s6
li a1, 0
call memset@plt
li a0, 7
li a1, 12
li a2, 0
call check
- lb a1, %lo(A)(s6)
+ lb a1, %lo(A)(s2)
li a2, 12
- mv a0, s5
+ mv a0, s6
call memset@plt
li a0, 7
li a1, 12
@@ -3137,17 +3197,17 @@ main: # @main
call check
li a1, 66
li a2, 12
- mv a0, s5
+ mv a0, s6
call memset@plt
li a0, 7
li a1, 12
li a2, 66
call check
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sd zero, %lo(u)(s1)
sw zero, %lo(u+8)(s1)
sb zero, %lo(u+12)(s1)
@@ -3155,45 +3215,43 @@ main: # @main
li a0, 0
li a2, 0
call check
- lui s5, %hi(A)
- lbu a0, %lo(A)(s5)
+ lui s6, %hi(A)
+ lbu a0, %lo(A)(s6)
sb a0, %lo(u+12)(s1)
- ld a1, 16(sp) # 8-byte Folded Reload
- mul a1, a0, a1
- sd a1, %lo(u)(s1)
- mulw a0, a0, s8
+ ld a1, 40(sp) # 8-byte Folded Reload
+ mul a0, a0, a1
+ sd a0, %lo(u)(s1)
sw a0, %lo(u+8)(s1)
li a1, 13
li a2, 65
li a0, 0
call check
sb s3, %lo(u+12)(s1)
- sw s10, %lo(u+8)(s1)
- ld a0, 0(sp) # 8-byte Folded Reload
+ ld a0, 16(sp) # 8-byte Folded Reload
+ sw a0, %lo(u+8)(s1)
sd a0, %lo(u)(s1)
li a1, 13
li a2, 66
li a0, 0
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 13
- ld s6, 32(sp) # 8-byte Folded Reload
- mv a0, s6
+ mv a0, s5
li a1, 0
call memset@plt
li a0, 1
li a1, 13
li a2, 0
call check
- lb a1, %lo(A)(s5)
- lui s8, %hi(A)
+ lb a1, %lo(A)(s6)
+ lui s6, %hi(A)
li a2, 13
- mv a0, s6
+ mv a0, s5
call memset@plt
li a0, 1
li a1, 13
@@ -3201,18 +3259,18 @@ main: # @main
call check
li a1, 66
li a2, 13
- mv a0, s6
+ mv a0, s5
call memset@plt
li a0, 1
li a1, 13
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+2)(s1)
sh zero, %lo(u+4)(s1)
sh zero, %lo(u+6)(s1)
@@ -3224,7 +3282,7 @@ main: # @main
li a1, 13
li a2, 0
call check
- lbu a0, %lo(A)(s8)
+ lbu a0, %lo(A)(s6)
sb a0, %lo(u+14)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -3249,24 +3307,24 @@ main: # @main
li a1, 13
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 13
- ld s5, 40(sp) # 8-byte Folded Reload
- mv a0, s5
+ ld s2, 48(sp) # 8-byte Folded Reload
+ mv a0, s2
li a1, 0
call memset@plt
li a0, 3
li a1, 13
li a2, 0
call check
- lb a1, %lo(A)(s8)
+ lb a1, %lo(A)(s6)
li a2, 13
- mv a0, s5
+ mv a0, s2
call memset@plt
li a0, 3
li a1, 13
@@ -3274,29 +3332,29 @@ main: # @main
call check
li a1, 66
li a2, 13
- mv a0, s5
+ mv a0, s2
call memset@plt
li a0, 3
li a1, 13
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sd s11, 16(s9)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sd s10, 16(s8)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
sw zero, %lo(u+4)(s1)
sw zero, %lo(u+8)(s1)
sw zero, %lo(u+12)(s1)
- sb zero, 16(s9)
+ sb zero, 16(s8)
li a0, 4
li a1, 13
li a2, 0
call check
- lbu a0, %lo(A)(s8)
- sb a0, 16(s9)
- ld a1, 24(sp) # 8-byte Folded Reload
+ lbu a0, %lo(A)(s6)
+ sb a0, 16(s8)
+ ld a1, 72(sp) # 8-byte Folded Reload
mulw a0, a0, a1
sw a0, %lo(u+4)(s1)
sw a0, %lo(u+8)(s1)
@@ -3305,32 +3363,33 @@ main: # @main
li a1, 13
li a2, 65
call check
- sb s3, 16(s9)
- sw s10, %lo(u+12)(s1)
- sw s10, %lo(u+8)(s1)
- sw s10, %lo(u+4)(s1)
+ sb s3, 16(s8)
+ ld a0, 32(sp) # 8-byte Folded Reload
+ sw a0, %lo(u+12)(s1)
+ sw a0, %lo(u+8)(s1)
+ sw a0, %lo(u+4)(s1)
li a0, 4
li a1, 13
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 13
- ld s5, 48(sp) # 8-byte Folded Reload
- mv a0, s5
+ ld s2, 56(sp) # 8-byte Folded Reload
+ mv a0, s2
li a1, 0
call memset@plt
li a0, 5
li a1, 13
li a2, 0
call check
- lb a1, %lo(A)(s8)
+ lb a1, %lo(A)(s6)
li a2, 13
- mv a0, s5
+ mv a0, s2
call memset@plt
li a0, 5
li a1, 13
@@ -3338,31 +3397,31 @@ main: # @main
call check
li a1, 66
li a2, 13
- mv a0, s5
+ mv a0, s2
call memset@plt
li a0, 5
li a1, 13
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sd s11, 16(s9)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sd s10, 16(s8)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
sh zero, %lo(u+6)(s1)
sh zero, %lo(u+8)(s1)
sh zero, %lo(u+10)(s1)
sh zero, %lo(u+12)(s1)
sh zero, %lo(u+14)(s1)
- sh zero, 16(s9)
- sb zero, 18(s9)
+ sh zero, 16(s8)
+ sb zero, 18(s8)
li a0, 6
li a1, 13
li a2, 0
call check
- lbu a0, %lo(A)(s8)
- sb a0, 18(s9)
+ lbu a0, %lo(A)(s6)
+ sb a0, 18(s8)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+6)(s1)
@@ -3370,13 +3429,13 @@ main: # @main
sh a0, %lo(u+10)(s1)
sh a0, %lo(u+12)(s1)
sh a0, %lo(u+14)(s1)
- sh a0, 16(s9)
+ sh a0, 16(s8)
li a0, 6
li a1, 13
li a2, 65
call check
- sb s3, 18(s9)
- sh s7, 16(s9)
+ sb s3, 18(s8)
+ sh s7, 16(s8)
sh s7, %lo(u+14)(s1)
sh s7, %lo(u+12)(s1)
sh s7, %lo(u+10)(s1)
@@ -3386,18 +3445,16 @@ main: # @main
li a1, 13
li a2, 66
call check
- sb s0, 30(s9)
+ sb s0, 30(s8)
mv s5, s4
- sh s4, 28(s9)
- mv s8, s2
- sw s2, 24(s9)
- mv s3, s9
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- mv s2, s11
- sd s11, %lo(u)(s1)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ mv s2, s10
+ sd s10, %lo(u)(s1)
li a2, 13
- ld s1, 56(sp) # 8-byte Folded Reload
+ ld s1, 64(sp) # 8-byte Folded Reload
mv a0, s1
li a1, 0
call memset@plt
@@ -3422,44 +3479,42 @@ main: # @main
li a1, 13
li a2, 66
call check
- li a0, -1
- lbu a1, %lo(A)(s4)
- sd a1, 56(sp) # 8-byte Folded Spill
- li s10, 0
+ lbu a0, %lo(A)(s4)
+ sd a0, 72(sp) # 8-byte Folded Spill
+ li s6, 0
lui s4, %hi(u)
.LBB2_1: # %for.body423
# =>This Loop Header: Depth=1
# Child Loop BB2_3 Depth 2
# Child Loop BB2_29 Depth 2
# Child Loop BB2_56 Depth 2
- mv s6, a0
- slli a0, a0, 32
+ slli a0, s9, 32
srli a0, a0, 32
- addi s11, a0, 1
- mv s9, s3
- sb s0, 30(s3)
- sh s5, 28(s3)
- sw s8, 24(s3)
- sd s2, 16(s3)
+ addi s10, a0, 1
+ sb s0, 30(s8)
+ sh s5, 28(s8)
+ sw s2, 24(s8)
+ sd s2, 16(s8)
lui a0, %hi(u)
sd s2, %lo(u+8)(a0)
sd s2, %lo(u)(a0)
- add s1, s3, s10
+ add s1, s8, s6
li a2, 14
mv a0, s1
li a1, 0
call memset@plt
- ld a0, 64(sp) # 8-byte Folded Reload
- add s7, s10, a0
- beqz s10, .LBB2_5
+ ld a0, 80(sp) # 8-byte Folded Reload
+ add s7, s6, a0
+ mv a0, s8
+ beqz s6, .LBB2_5
# %bb.2: # %for.body.preheader.i
# in Loop: Header=BB2_1 Depth=1
- ld a0, 64(sp) # 8-byte Folded Reload
+ ld a0, 80(sp) # 8-byte Folded Reload
and a0, s7, a0
addi a1, s4, %lo(u)
add a0, a0, a1
- addi s9, a0, 1
- mv a2, s11
+ addi a0, a0, 1
+ mv a2, s10
.LBB2_3: # %for.body.i
# Parent Loop BB2_1 Depth=1
# => This Inner Loop Header: Depth=2
@@ -3472,107 +3527,107 @@ main: # @main
bnez a2, .LBB2_3
.LBB2_5: # %for.cond3.preheader.i
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 0(s9)
+ lbu a1, 0(a0)
bnez a1, .LBB2_166
# %bb.6: # %for.inc12.i
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 1(s9)
+ lbu a1, 1(a0)
bnez a1, .LBB2_166
# %bb.7: # %for.inc12.i.1
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 2(s9)
+ lbu a1, 2(a0)
bnez a1, .LBB2_166
# %bb.8: # %for.inc12.i.2
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 3(s9)
+ lbu a1, 3(a0)
bnez a1, .LBB2_166
# %bb.9: # %for.inc12.i.3
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 4(s9)
+ lbu a1, 4(a0)
bnez a1, .LBB2_166
# %bb.10: # %for.inc12.i.4
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 5(s9)
+ lbu a1, 5(a0)
bnez a1, .LBB2_166
# %bb.11: # %for.inc12.i.5
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 6(s9)
+ lbu a1, 6(a0)
bnez a1, .LBB2_166
# %bb.12: # %for.inc12.i.6
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 7(s9)
+ lbu a1, 7(a0)
bnez a1, .LBB2_166
# %bb.13: # %for.inc12.i.7
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 8(s9)
+ lbu a1, 8(a0)
bnez a1, .LBB2_166
# %bb.14: # %for.inc12.i.8
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 9(s9)
+ lbu a1, 9(a0)
bnez a1, .LBB2_166
# %bb.15: # %for.inc12.i.9
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 10(s9)
+ lbu a1, 10(a0)
bnez a1, .LBB2_166
# %bb.16: # %for.inc12.i.10
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 11(s9)
+ lbu a1, 11(a0)
bnez a1, .LBB2_166
# %bb.17: # %for.inc12.i.11
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 12(s9)
+ lbu a1, 12(a0)
bnez a1, .LBB2_166
# %bb.18: # %for.inc12.i.12
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 13(s9)
+ lbu a1, 13(a0)
bnez a1, .LBB2_166
# %bb.19: # %for.inc12.i.13
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 14(s9)
+ lbu a1, 14(a0)
bne a1, s0, .LBB2_166
# %bb.20: # %for.inc26.i
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 15(s9)
+ lbu a1, 15(a0)
bne a1, s0, .LBB2_166
# %bb.21: # %for.inc26.1.i
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 16(s9)
+ lbu a1, 16(a0)
bne a1, s0, .LBB2_166
# %bb.22: # %for.inc26.2.i
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 17(s9)
+ lbu a1, 17(a0)
bne a1, s0, .LBB2_166
# %bb.23: # %for.inc26.3.i
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 18(s9)
+ lbu a1, 18(a0)
bne a1, s0, .LBB2_166
# %bb.24: # %for.inc26.4.i
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 19(s9)
+ lbu a1, 19(a0)
bne a1, s0, .LBB2_166
# %bb.25: # %for.inc26.5.i
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 20(s9)
+ lbu a1, 20(a0)
bne a1, s0, .LBB2_166
# %bb.26: # %for.inc26.6.i
# in Loop: Header=BB2_1 Depth=1
- lbu a0, 21(s9)
+ lbu a0, 21(a0)
bne a0, s0, .LBB2_166
# %bb.27: # %check.exit
# in Loop: Header=BB2_1 Depth=1
li a2, 14
mv a0, s1
- ld a1, 56(sp) # 8-byte Folded Reload
+ ld a1, 72(sp) # 8-byte Folded Reload
call memset@plt
- beqz s10, .LBB2_32
+ beqz s6, .LBB2_32
# %bb.28: # %for.body.preheader.i212
# in Loop: Header=BB2_1 Depth=1
- ld a0, 64(sp) # 8-byte Folded Reload
+ ld a0, 80(sp) # 8-byte Folded Reload
and a0, s7, a0
addi a1, s4, %lo(u)
add a0, a0, a1
addi a0, a0, 1
- mv a2, s11
+ mv a2, s10
.LBB2_29: # %for.body.i218
# Parent Loop BB2_1 Depth=1
# => This Inner Loop Header: Depth=2
@@ -3586,66 +3641,64 @@ main: # @main
# %bb.31: # %for.cond3.preheader.i214
# in Loop: Header=BB2_1 Depth=1
lbu a1, 0(a0)
- li a2, 65
- beq a1, a2, .LBB2_33
+ beq a1, s11, .LBB2_33
j .LBB2_166
.LBB2_32: # in Loop: Header=BB2_1 Depth=1
addi a0, s4, %lo(u)
lbu a1, 0(a0)
- li a2, 65
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
.LBB2_33: # %for.inc12.i234
# in Loop: Header=BB2_1 Depth=1
lbu a1, 1(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.34: # %for.inc12.i234.1
# in Loop: Header=BB2_1 Depth=1
lbu a1, 2(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.35: # %for.inc12.i234.2
# in Loop: Header=BB2_1 Depth=1
lbu a1, 3(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.36: # %for.inc12.i234.3
# in Loop: Header=BB2_1 Depth=1
lbu a1, 4(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.37: # %for.inc12.i234.4
# in Loop: Header=BB2_1 Depth=1
lbu a1, 5(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.38: # %for.inc12.i234.5
# in Loop: Header=BB2_1 Depth=1
lbu a1, 6(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.39: # %for.inc12.i234.6
# in Loop: Header=BB2_1 Depth=1
lbu a1, 7(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.40: # %for.inc12.i234.7
# in Loop: Header=BB2_1 Depth=1
lbu a1, 8(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.41: # %for.inc12.i234.8
# in Loop: Header=BB2_1 Depth=1
lbu a1, 9(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.42: # %for.inc12.i234.9
# in Loop: Header=BB2_1 Depth=1
lbu a1, 10(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.43: # %for.inc12.i234.10
# in Loop: Header=BB2_1 Depth=1
lbu a1, 11(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.44: # %for.inc12.i234.11
# in Loop: Header=BB2_1 Depth=1
lbu a1, 12(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.45: # %for.inc12.i234.12
# in Loop: Header=BB2_1 Depth=1
lbu a1, 13(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.46: # %for.inc12.i234.13
# in Loop: Header=BB2_1 Depth=1
lbu a1, 14(a0)
@@ -3684,10 +3737,10 @@ main: # @main
li a2, 14
mv a0, s1
call memset@plt
- beqz s10, .LBB2_59
+ beqz s6, .LBB2_59
# %bb.55: # %for.body.preheader.i261
# in Loop: Header=BB2_1 Depth=1
- ld a0, 64(sp) # 8-byte Folded Reload
+ ld a0, 80(sp) # 8-byte Folded Reload
and a0, s7, a0
addi a1, s4, %lo(u)
add a0, a0, a1
@@ -3699,72 +3752,70 @@ main: # @main
bne a2, s0, .LBB2_166
# %bb.57: # %for.inc.i271
# in Loop: Header=BB2_56 Depth=2
- addi s11, s11, -1
+ addi s10, s10, -1
addi a1, a1, 1
- bnez s11, .LBB2_56
+ bnez s10, .LBB2_56
# %bb.58: # %for.cond3.preheader.i263
# in Loop: Header=BB2_1 Depth=1
lbu a1, 0(a0)
- li a2, 66
- beq a1, a2, .LBB2_60
+ beq a1, s3, .LBB2_60
j .LBB2_166
.LBB2_59: # in Loop: Header=BB2_1 Depth=1
addi a0, s4, %lo(u)
lbu a1, 0(a0)
- li a2, 66
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
.LBB2_60: # %for.inc12.i283
# in Loop: Header=BB2_1 Depth=1
lbu a1, 1(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.61: # %for.inc12.i283.1
# in Loop: Header=BB2_1 Depth=1
lbu a1, 2(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.62: # %for.inc12.i283.2
# in Loop: Header=BB2_1 Depth=1
lbu a1, 3(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.63: # %for.inc12.i283.3
# in Loop: Header=BB2_1 Depth=1
lbu a1, 4(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.64: # %for.inc12.i283.4
# in Loop: Header=BB2_1 Depth=1
lbu a1, 5(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.65: # %for.inc12.i283.5
# in Loop: Header=BB2_1 Depth=1
lbu a1, 6(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.66: # %for.inc12.i283.6
# in Loop: Header=BB2_1 Depth=1
lbu a1, 7(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.67: # %for.inc12.i283.7
# in Loop: Header=BB2_1 Depth=1
lbu a1, 8(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.68: # %for.inc12.i283.8
# in Loop: Header=BB2_1 Depth=1
lbu a1, 9(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.69: # %for.inc12.i283.9
# in Loop: Header=BB2_1 Depth=1
lbu a1, 10(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.70: # %for.inc12.i283.10
# in Loop: Header=BB2_1 Depth=1
lbu a1, 11(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.71: # %for.inc12.i283.11
# in Loop: Header=BB2_1 Depth=1
lbu a1, 12(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.72: # %for.inc12.i283.12
# in Loop: Header=BB2_1 Depth=1
lbu a1, 13(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.73: # %for.inc12.i283.13
# in Loop: Header=BB2_1 Depth=1
lbu a1, 14(a0)
@@ -3799,11 +3850,10 @@ main: # @main
bne a0, s0, .LBB2_166
# %bb.81: # %for.cond419
# in Loop: Header=BB2_1 Depth=1
- addi s10, s10, 1
- mv a0, s6
- addiw a0, s6, 1
- li a1, 8
- bne s10, a1, .LBB2_1
+ addi s6, s6, 1
+ addiw s9, s9, 1
+ li a0, 8
+ bne s6, a0, .LBB2_1
# %bb.82: # %for.body456.preheader
li s0, 0
li s6, -1
@@ -3812,13 +3862,10 @@ main: # @main
li s1, 97
lui a0, 6
addiw s4, a0, 353
- lui a0, 398870
- addiw a0, a0, 353
- sd a0, 48(sp) # 8-byte Folded Spill
lui a0, %hi(.LCPI2_0)
- ld s10, %lo(.LCPI2_0)(a0)
- li s11, 65
- li s5, 66
+ ld s9, %lo(.LCPI2_0)(a0)
+ li s10, 65
+ li s11, 66
.LBB2_83: # %for.body456
# =>This Loop Header: Depth=1
# Child Loop BB2_85 Depth 2
@@ -3826,30 +3873,29 @@ main: # @main
# Child Loop BB2_139 Depth 2
slli a0, s6, 32
srli a0, a0, 32
- addi s8, a0, 1
+ addi s5, a0, 1
sb s1, 30(s7)
sh s4, 28(s7)
- ld a0, 48(sp) # 8-byte Folded Reload
- sw a0, 24(s7)
- sd s10, 16(s7)
- sd s10, %lo(u+8)(s2)
- sd s10, %lo(u)(s2)
+ sw s9, 24(s7)
+ sd s9, 16(s7)
+ sd s9, %lo(u+8)(s2)
+ sd s9, %lo(u)(s2)
add s3, s7, s0
li a2, 15
mv a0, s3
li a1, 0
call memset@plt
- ld a0, 64(sp) # 8-byte Folded Reload
- add s9, s0, a0
+ ld a0, 80(sp) # 8-byte Folded Reload
+ add s8, s0, a0
mv a0, s7
beqz s0, .LBB2_87
# %bb.84: # %for.body.preheader.i310
# in Loop: Header=BB2_83 Depth=1
- ld a0, 64(sp) # 8-byte Folded Reload
- and a0, s9, a0
+ ld a0, 80(sp) # 8-byte Folded Reload
+ and a0, s8, a0
add a0, a0, s7
addi a0, a0, 1
- mv a1, s8
+ mv a1, s5
mv a2, s7
.LBB2_85: # %for.body.i316
# Parent Loop BB2_83 Depth=1
@@ -3957,17 +4003,17 @@ main: # @main
# in Loop: Header=BB2_83 Depth=1
li a2, 15
mv a0, s3
- ld a1, 56(sp) # 8-byte Folded Reload
+ ld a1, 72(sp) # 8-byte Folded Reload
call memset@plt
mv a0, s7
beqz s0, .LBB2_114
# %bb.111: # %for.body.preheader.i359
# in Loop: Header=BB2_83 Depth=1
- ld a0, 64(sp) # 8-byte Folded Reload
- and a0, s9, a0
+ ld a0, 80(sp) # 8-byte Folded Reload
+ and a0, s8, a0
add a0, a0, s7
addi a0, a0, 1
- mv a1, s8
+ mv a1, s5
mv a2, s7
.LBB2_112: # %for.body.i365
# Parent Loop BB2_83 Depth=1
@@ -3982,63 +4028,63 @@ main: # @main
.LBB2_114: # %for.cond3.preheader.i361
# in Loop: Header=BB2_83 Depth=1
lbu a1, 0(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.115: # %for.inc12.i381
# in Loop: Header=BB2_83 Depth=1
lbu a1, 1(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.116: # %for.inc12.i381.1
# in Loop: Header=BB2_83 Depth=1
lbu a1, 2(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.117: # %for.inc12.i381.2
# in Loop: Header=BB2_83 Depth=1
lbu a1, 3(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.118: # %for.inc12.i381.3
# in Loop: Header=BB2_83 Depth=1
lbu a1, 4(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.119: # %for.inc12.i381.4
# in Loop: Header=BB2_83 Depth=1
lbu a1, 5(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.120: # %for.inc12.i381.5
# in Loop: Header=BB2_83 Depth=1
lbu a1, 6(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.121: # %for.inc12.i381.6
# in Loop: Header=BB2_83 Depth=1
lbu a1, 7(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.122: # %for.inc12.i381.7
# in Loop: Header=BB2_83 Depth=1
lbu a1, 8(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.123: # %for.inc12.i381.8
# in Loop: Header=BB2_83 Depth=1
lbu a1, 9(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.124: # %for.inc12.i381.9
# in Loop: Header=BB2_83 Depth=1
lbu a1, 10(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.125: # %for.inc12.i381.10
# in Loop: Header=BB2_83 Depth=1
lbu a1, 11(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.126: # %for.inc12.i381.11
# in Loop: Header=BB2_83 Depth=1
lbu a1, 12(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.127: # %for.inc12.i381.12
# in Loop: Header=BB2_83 Depth=1
lbu a1, 13(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.128: # %for.inc12.i381.13
# in Loop: Header=BB2_83 Depth=1
lbu a1, 14(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.129: # %for.inc12.i381.14
# in Loop: Header=BB2_83 Depth=1
lbu a1, 15(a0)
@@ -4081,8 +4127,8 @@ main: # @main
beqz s0, .LBB2_141
# %bb.138: # %for.body.preheader.i408
# in Loop: Header=BB2_83 Depth=1
- ld a0, 64(sp) # 8-byte Folded Reload
- and a0, s9, a0
+ ld a0, 80(sp) # 8-byte Folded Reload
+ and a0, s8, a0
add a0, a0, s7
addi a0, a0, 1
mv a1, s7
@@ -4093,69 +4139,69 @@ main: # @main
bne a2, s1, .LBB2_166
# %bb.140: # %for.inc.i418
# in Loop: Header=BB2_139 Depth=2
- addi s8, s8, -1
+ addi s5, s5, -1
addi a1, a1, 1
- bnez s8, .LBB2_139
+ bnez s5, .LBB2_139
.LBB2_141: # %for.cond3.preheader.i410
# in Loop: Header=BB2_83 Depth=1
lbu a1, 0(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.142: # %for.inc12.i430
# in Loop: Header=BB2_83 Depth=1
lbu a1, 1(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.143: # %for.inc12.i430.1
# in Loop: Header=BB2_83 Depth=1
lbu a1, 2(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.144: # %for.inc12.i430.2
# in Loop: Header=BB2_83 Depth=1
lbu a1, 3(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.145: # %for.inc12.i430.3
# in Loop: Header=BB2_83 Depth=1
lbu a1, 4(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.146: # %for.inc12.i430.4
# in Loop: Header=BB2_83 Depth=1
lbu a1, 5(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.147: # %for.inc12.i430.5
# in Loop: Header=BB2_83 Depth=1
lbu a1, 6(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.148: # %for.inc12.i430.6
# in Loop: Header=BB2_83 Depth=1
lbu a1, 7(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.149: # %for.inc12.i430.7
# in Loop: Header=BB2_83 Depth=1
lbu a1, 8(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.150: # %for.inc12.i430.8
# in Loop: Header=BB2_83 Depth=1
lbu a1, 9(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.151: # %for.inc12.i430.9
# in Loop: Header=BB2_83 Depth=1
lbu a1, 10(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.152: # %for.inc12.i430.10
# in Loop: Header=BB2_83 Depth=1
lbu a1, 11(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.153: # %for.inc12.i430.11
# in Loop: Header=BB2_83 Depth=1
lbu a1, 12(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.154: # %for.inc12.i430.12
# in Loop: Header=BB2_83 Depth=1
lbu a1, 13(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.155: # %for.inc12.i430.13
# in Loop: Header=BB2_83 Depth=1
lbu a1, 14(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.156: # %for.inc12.i430.14
# in Loop: Header=BB2_83 Depth=1
lbu a1, 15(a0)
diff --git a/output_rv64imafdc_lp64_O3/pr53645.s b/output_rv64imafdc_lp64_O3/pr53645.s
index 56bd435ece..7c352a0b5d 100644
--- a/output_rv64imafdc_lp64_O3/pr53645.s
+++ b/output_rv64imafdc_lp64_O3/pr53645.s
@@ -188,7 +188,7 @@ sq1428: # @sq1428
sr1428: # @sr1428
# %bb.0: # %entry
lw a2, 4(a1)
- lwu a3, 8(a1)
+ lw a3, 8(a1)
lw a1, 12(a1)
slli a4, a2, 1
srli a4, a4, 62
@@ -200,7 +200,7 @@ sr1428: # @sr1428
add a4, a4, a1
andi a4, a4, -8
subw a1, a1, a4
- srli a4, a3, 31
+ srliw a4, a3, 31
add a4, a4, a3
andi a4, a4, -2
subw a3, a3, a4
@@ -254,36 +254,44 @@ uq3333: # @uq3333
.type ur3333,@function
ur3333: # @ur3333
# %bb.0: # %entry
- lwu a2, 0(a1)
- lui a3, %hi(.LCPI9_0)
- ld a3, %lo(.LCPI9_0)(a3)
- lwu a6, 12(a1)
- lwu a5, 8(a1)
- lwu a1, 4(a1)
- mulhu a4, a2, a3
- srli a7, a4, 1
- andi a4, a4, -2
- addw a4, a4, a7
- subw a7, a2, a4
- mulhu a4, a1, a3
- srli a2, a4, 1
- andi a4, a4, -2
- addw a2, a2, a4
- subw a1, a1, a2
- mulhu a2, a5, a3
- srli a4, a2, 1
- andi a2, a2, -2
- addw a2, a2, a4
- subw a2, a5, a2
- mulhu a3, a6, a3
+ lw t0, 12(a1)
+ lw t1, 8(a1)
+ slli a4, t0, 32
+ lw a5, 4(a1)
+ srli a6, a4, 32
+ slli a4, t1, 32
+ srli a7, a4, 32
+ slli a4, a5, 32
+ lw a1, 0(a1)
+ lui a2, %hi(.LCPI9_0)
+ ld a2, %lo(.LCPI9_0)(a2)
+ srli t2, a4, 32
+ slli a3, a1, 32
+ srli a3, a3, 32
+ mulhu a3, a3, a2
srli a4, a3, 1
andi a3, a3, -2
addw a3, a3, a4
- subw a3, a6, a3
- sw a3, 12(a0)
- sw a2, 8(a0)
- sw a1, 4(a0)
- sw a7, 0(a0)
+ subw a1, a1, a3
+ mulhu a3, t2, a2
+ srli a4, a3, 1
+ andi a3, a3, -2
+ addw a3, a3, a4
+ subw a3, a5, a3
+ mulhu a4, a7, a2
+ srli a5, a4, 1
+ andi a4, a4, -2
+ addw a4, a4, a5
+ subw a4, t1, a4
+ mulhu a2, a6, a2
+ srli a5, a2, 1
+ andi a2, a2, -2
+ addw a2, a2, a5
+ subw a2, t0, a2
+ sw a2, 12(a0)
+ sw a4, 8(a0)
+ sw a3, 4(a0)
+ sw a1, 0(a0)
ret
.Lfunc_end9:
.size ur3333, .Lfunc_end9-ur3333
@@ -420,36 +428,44 @@ uq6565: # @uq6565
.type ur6565,@function
ur6565: # @ur6565
# %bb.0: # %entry
- lwu a2, 4(a1)
- lui a3, %hi(.LCPI13_0)
- ld a3, %lo(.LCPI13_0)(a3)
- lwu a6, 8(a1)
- lwu a7, 0(a1)
- lwu a1, 12(a1)
- mulhu a4, a2, a3
- srli a5, a4, 2
- andi a4, a4, -4
- addw a4, a4, a5
- subw a2, a2, a4
- mulhu a3, a1, a3
+ lw t0, 8(a1)
+ lw t1, 0(a1)
+ slli a4, t0, 32
+ lw a5, 12(a1)
+ srli a6, a4, 32
+ slli a4, t1, 32
+ srli a7, a4, 32
+ slli a4, a5, 32
+ lw a1, 4(a1)
+ lui a2, %hi(.LCPI13_0)
+ ld a2, %lo(.LCPI13_0)(a2)
+ srli t2, a4, 32
+ slli a3, a1, 32
+ srli a3, a3, 32
+ mulhu a3, a3, a2
srli a4, a3, 2
- lui a5, %hi(.LCPI13_1)
- ld a5, %lo(.LCPI13_1)(a5)
andi a3, a3, -4
addw a3, a3, a4
subw a1, a1, a3
- mulhu a3, a7, a5
+ mulhu a2, t2, a2
+ srli a3, a2, 2
+ lui a4, %hi(.LCPI13_1)
+ ld a4, %lo(.LCPI13_1)(a4)
+ andi a2, a2, -4
+ addw a2, a2, a3
+ subw a2, a5, a2
+ mulhu a3, a7, a4
srli a3, a3, 2
- li a4, 6
- mulw a3, a3, a4
- subw a3, a7, a3
- mulhu a5, a6, a5
- srli a5, a5, 2
- mulw a4, a5, a4
- subw a4, a6, a4
- sw a1, 12(a0)
+ li a5, 6
+ mulw a3, a3, a5
+ subw a3, t1, a3
+ mulhu a4, a6, a4
+ srli a4, a4, 2
+ mulw a4, a4, a5
+ subw a4, t0, a4
+ sw a2, 12(a0)
sw a4, 8(a0)
- sw a2, 4(a0)
+ sw a1, 4(a0)
sw a3, 0(a0)
ret
.Lfunc_end13:
@@ -592,48 +608,50 @@ uq1414146: # @uq1414146
.section .sdata,"aw",@progbits
.p2align 3 # -- Begin function ur1414146
.LCPI17_0:
- .quad 5270498306774157605 # 0x4924924924924925
-.LCPI17_1:
.quad -6148914691236517205 # 0xaaaaaaaaaaaaaaab
+.LCPI17_1:
+ .quad 5270498306774157605 # 0x4924924924924925
.text
.globl ur1414146
.p2align 1
.type ur1414146,@function
ur1414146: # @ur1414146
# %bb.0: # %entry
- lwu a6, 12(a1)
- lwu a3, 0(a1)
- lui a4, %hi(.LCPI17_0)
- ld a4, %lo(.LCPI17_0)(a4)
- lwu a5, 8(a1)
- lwu a1, 4(a1)
- srli a2, a3, 1
- mulhu a2, a2, a4
- srli a2, a2, 1
- li a7, 14
+ lw a6, 8(a1)
+ lw a3, 4(a1)
+ lw a4, 12(a1)
+ lui a5, %hi(.LCPI17_0)
+ ld a5, %lo(.LCPI17_0)(a5)
+ lw a1, 0(a1)
+ slli a2, a4, 32
+ srli a2, a2, 32
+ mulhu a2, a2, a5
+ srli a2, a2, 2
+ li a7, 6
+ lui a5, %hi(.LCPI17_1)
+ ld a5, %lo(.LCPI17_1)(a5)
mulw a2, a2, a7
- subw a2, a3, a2
- srli a3, a1, 1
- mulhu a3, a3, a4
- srli a3, a3, 1
- mulw a3, a3, a7
- subw a1, a1, a3
- srli a3, a5, 1
- mulhu a3, a3, a4
- lui a4, %hi(.LCPI17_1)
- ld a4, %lo(.LCPI17_1)(a4)
- srli a3, a3, 1
- mulw a3, a3, a7
- subw a3, a5, a3
- mulhu a4, a6, a4
- srli a4, a4, 2
- li a5, 6
- mulw a4, a4, a5
- subw a4, a6, a4
- sw a4, 12(a0)
- sw a3, 8(a0)
- sw a1, 4(a0)
- sw a2, 0(a0)
+ subw a7, a4, a2
+ srliw a4, a1, 1
+ mulhu a4, a4, a5
+ srli a4, a4, 1
+ li a2, 14
+ mulw a4, a4, a2
+ subw a1, a1, a4
+ srliw a4, a3, 1
+ mulhu a4, a4, a5
+ srli a4, a4, 1
+ mulw a4, a4, a2
+ subw a3, a3, a4
+ srliw a4, a6, 1
+ mulhu a4, a4, a5
+ srli a4, a4, 1
+ mulw a2, a4, a2
+ subw a2, a6, a2
+ sw a2, 8(a0)
+ sw a3, 4(a0)
+ sw a1, 0(a0)
+ sw a7, 12(a0)
ret
.Lfunc_end17:
.size ur1414146, .Lfunc_end17-ur1414146
@@ -788,48 +806,56 @@ uq7777: # @uq7777
.type ur7777,@function
ur7777: # @ur7777
# %bb.0: # %entry
- lwu a2, 0(a1)
- lui a3, %hi(.LCPI21_0)
- ld a3, %lo(.LCPI21_0)(a3)
- lwu a6, 12(a1)
- lwu a7, 8(a1)
- lwu a1, 4(a1)
- mulhu a4, a2, a3
- sub a5, a2, a4
- srli a5, a5, 1
- add a4, a4, a5
- srli a4, a4, 2
- slliw a5, a4, 3
- subw a4, a4, a5
- addw a2, a2, a4
- mulhu a4, a1, a3
- sub a5, a1, a4
+ lw a6, 12(a1)
+ lw a7, 8(a1)
+ slli a4, a6, 32
+ lw t2, 4(a1)
+ srli t0, a4, 32
+ slli a2, a7, 32
+ srli t1, a2, 32
+ slli a3, t2, 32
+ lw a1, 0(a1)
+ lui a4, %hi(.LCPI21_0)
+ ld a4, %lo(.LCPI21_0)(a4)
+ srli a3, a3, 32
+ slli a2, a1, 32
+ srli a2, a2, 32
+ mulhu a5, a2, a4
+ sub a2, a2, a5
+ srli a2, a2, 1
+ add a2, a2, a5
+ srli a2, a2, 2
+ slliw a5, a2, 3
+ subw a2, a2, a5
+ addw a1, a1, a2
+ mulhu a2, a3, a4
+ sub a3, a3, a2
+ srli a3, a3, 1
+ add a2, a2, a3
+ srli a2, a2, 2
+ slliw a3, a2, 3
+ subw a2, a2, a3
+ addw a2, t2, a2
+ mulhu a3, t1, a4
+ sub a5, t1, a3
srli a5, a5, 1
- add a4, a4, a5
- srli a4, a4, 2
- slliw a5, a4, 3
- subw a4, a4, a5
- addw a1, a1, a4
- mulhu a4, a7, a3
- sub a5, a7, a4
+ add a3, a3, a5
+ srli a3, a3, 2
+ slliw a5, a3, 3
+ subw a3, a3, a5
+ addw a3, a7, a3
+ mulhu a4, t0, a4
+ sub a5, t0, a4
srli a5, a5, 1
add a4, a4, a5
srli a4, a4, 2
slliw a5, a4, 3
subw a4, a4, a5
- addw a4, a7, a4
- mulhu a3, a6, a3
- sub a5, a6, a3
- srli a5, a5, 1
- add a3, a3, a5
- srli a3, a3, 2
- slliw a5, a3, 3
- subw a3, a3, a5
- addw a3, a6, a3
- sw a3, 12(a0)
- sw a4, 8(a0)
- sw a1, 4(a0)
- sw a2, 0(a0)
+ addw a4, a6, a4
+ sw a4, 12(a0)
+ sw a3, 8(a0)
+ sw a2, 4(a0)
+ sw a1, 0(a0)
ret
.Lfunc_end21:
.size ur7777, .Lfunc_end21-ur7777
@@ -931,43 +957,37 @@ sr7777: # @sr7777
.type main,@function
main: # @main
# %bb.0: # %entry
- addi sp, sp, -144
- sd ra, 136(sp) # 8-byte Folded Spill
- sd s0, 128(sp) # 8-byte Folded Spill
- sd s1, 120(sp) # 8-byte Folded Spill
- sd s2, 112(sp) # 8-byte Folded Spill
- sd s3, 104(sp) # 8-byte Folded Spill
- sd s4, 96(sp) # 8-byte Folded Spill
- sd s5, 88(sp) # 8-byte Folded Spill
- sd s6, 80(sp) # 8-byte Folded Spill
- sd s7, 72(sp) # 8-byte Folded Spill
- sd s8, 64(sp) # 8-byte Folded Spill
- sd s9, 56(sp) # 8-byte Folded Spill
- sd s10, 48(sp) # 8-byte Folded Spill
- sd s11, 40(sp) # 8-byte Folded Spill
+ addi sp, sp, -128
+ sd ra, 120(sp) # 8-byte Folded Spill
+ sd s0, 112(sp) # 8-byte Folded Spill
+ sd s1, 104(sp) # 8-byte Folded Spill
+ sd s2, 96(sp) # 8-byte Folded Spill
+ sd s3, 88(sp) # 8-byte Folded Spill
+ sd s4, 80(sp) # 8-byte Folded Spill
+ sd s5, 72(sp) # 8-byte Folded Spill
+ sd s6, 64(sp) # 8-byte Folded Spill
+ sd s7, 56(sp) # 8-byte Folded Spill
+ sd s8, 48(sp) # 8-byte Folded Spill
+ sd s9, 40(sp) # 8-byte Folded Spill
li a0, 0
li s3, 1
lui a1, %hi(u)
addi s2, a1, %lo(u)
- addi s1, sp, 16
- lui a1, 171
- addiw a1, a1, -1365
- slli a1, a1, 12
- addi s4, a1, -1365
+ addi s4, sp, 16
lui a1, 699051
addiw a1, a1, -1365
- slli s5, a1, 32
+ slli s1, a1, 32
lui a1, 838861
addiw a1, a1, -819
- slli s6, a1, 32
- li s7, 6
+ slli s5, a1, 32
+ li s6, 6
lui a1, 299593
slli a1, a1, 1
- addi s8, a1, 1171
- li s9, 14
+ addi s7, a1, 1171
+ li s8, 14
lui a1, 149797
- addiw s10, a1, -1755
- slli s11, s10, 32
+ addiw a1, a1, -1755
+ slli s9, a1, 32
.LBB24_1: # %for.body
# =>This Inner Loop Header: Depth=1
slli a0, a0, 4
@@ -975,9 +995,9 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq4444
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- srli a0, a0, 2
+ srliw a0, a0, 2
bne a1, a0, .LBB24_101
# %bb.2: # %lor.lhs.false
# in Loop: Header=BB24_1 Depth=1
@@ -989,9 +1009,9 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a0, a0, 2
+ srliw a0, a0, 2
bne a1, a0, .LBB24_101
# %bb.4: # %lor.lhs.false19
# in Loop: Header=BB24_1 Depth=1
@@ -1006,7 +1026,7 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur4444
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
andi a0, a0, 3
bne a1, a0, .LBB24_101
@@ -1020,7 +1040,7 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
andi a0, a0, 3
bne a1, a0, .LBB24_101
@@ -1050,9 +1070,9 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a0, a0, 1
+ srliw a0, a0, 1
bne a1, a0, .LBB24_101
# %bb.12: # %lor.lhs.false90
# in Loop: Header=BB24_1 Depth=1
@@ -1079,7 +1099,7 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
andi a0, a0, 1
bne a1, a0, .LBB24_101
@@ -1096,9 +1116,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq3333
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.18: # %lor.lhs.false145
@@ -1106,16 +1127,17 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a0, a0, 32
- mulhu a0, a0, s5
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.19: # %if.end154
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.20: # %lor.lhs.false162
@@ -1123,7 +1145,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a0, a0, 32
- mulhu a0, a0, s5
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.21: # %if.end171
@@ -1133,9 +1155,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur3333
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1146,7 +1169,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s5
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1156,9 +1179,10 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1169,7 +1193,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s5
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1182,9 +1206,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq6565
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.26: # %lor.lhs.false217
@@ -1192,16 +1217,17 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a0, a0, 32
- mulhu a0, a0, s6
+ mulhu a0, a0, s5
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.27: # %if.end226
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.28: # %lor.lhs.false234
@@ -1209,7 +1235,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a0, a0, 32
- mulhu a0, a0, s6
+ mulhu a0, a0, s5
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.29: # %if.end243
@@ -1219,11 +1245,12 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur6565
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 34
- mulw a2, a2, s7
+ mulw a2, a2, s6
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.30: # %lor.lhs.false253
@@ -1231,7 +1258,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s6
+ mulhu a2, a2, s5
srli a2, a2, 34
slliw a3, a2, 2
addw a2, a2, a3
@@ -1241,11 +1268,12 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 34
- mulw a2, a2, s7
+ mulw a2, a2, s6
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.32: # %lor.lhs.false270
@@ -1253,7 +1281,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s6
+ mulhu a2, a2, s5
srli a2, a2, 34
slliw a3, a2, 2
addw a2, a2, a3
@@ -1266,10 +1294,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq1414146
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- srli a0, a0, 1
- mul a0, a0, s8
+ srliw a0, a0, 1
+ mul a0, a0, s7
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.34: # %lor.lhs.false289
@@ -1277,17 +1305,17 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a0, a0, 32
- mulhu a0, a0, s5
+ mulhu a0, a0, s1
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.35: # %if.end298
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a0, a0, 1
- mul a0, a0, s8
+ srliw a0, a0, 1
+ mul a0, a0, s7
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.36: # %lor.lhs.false306
@@ -1295,7 +1323,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
srliw a0, a0, 1
- mul a0, a0, s8
+ mul a0, a0, s7
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.37: # %if.end315
@@ -1305,12 +1333,12 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur1414146
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- srli a2, a0, 1
- mul a2, a2, s8
+ srliw a2, a0, 1
+ mul a2, a2, s7
srli a2, a2, 34
- mulw a2, a2, s9
+ mulw a2, a2, s8
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.38: # %lor.lhs.false325
@@ -1318,21 +1346,21 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s5
+ mulhu a2, a2, s1
srli a2, a2, 34
- mulw a2, a2, s7
+ mulw a2, a2, s6
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.39: # %if.end334
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a2, a0, 1
- mul a2, a2, s8
+ srliw a2, a0, 1
+ mul a2, a2, s7
srli a2, a2, 34
- mulw a2, a2, s9
+ mulw a2, a2, s8
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.40: # %lor.lhs.false342
@@ -1340,9 +1368,9 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
srliw a2, a0, 1
- mul a2, a2, s8
+ mul a2, a2, s7
srli a2, a2, 34
- mulw a2, a2, s9
+ mulw a2, a2, s8
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.41: # %if.end351
@@ -1352,9 +1380,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq7777
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1366,7 +1395,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1377,9 +1406,10 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1391,7 +1421,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1405,9 +1435,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur7777
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1422,7 +1453,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1436,9 +1467,10 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1453,7 +1485,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1505,8 +1537,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 12(s0)
lw a1, 12(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
addw a0, a0, a2
sraiw a0, a0, 2
bne a1, a0, .LBB24_101
@@ -1525,8 +1557,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
addw a0, a0, a2
sraiw a0, a0, 2
bne a1, a0, .LBB24_101
@@ -1549,8 +1581,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 12(s0)
lw a1, 12(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
add a2, a2, a0
andi a2, a2, -4
subw a0, a0, a2
@@ -1571,8 +1603,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
add a2, a2, a0
andi a2, a2, -4
subw a0, a0, a2
@@ -1591,8 +1623,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 12(s0)
lw a1, 12(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 29
+ slli a2, a0, 1
+ srli a2, a2, 61
addw a0, a0, a2
sraiw a0, a0, 3
bne a1, a0, .LBB24_101
@@ -1600,9 +1632,9 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 8(sp)
- srli a2, a0, 31
+ srliw a2, a0, 31
addw a0, a0, a2
sraiw a0, a0, 1
bne a1, a0, .LBB24_101
@@ -1610,8 +1642,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
addw a0, a0, a2
sraiw a0, a0, 2
bne a1, a0, .LBB24_101
@@ -1638,9 +1670,9 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 8(sp)
- srli a2, a0, 31
+ srliw a2, a0, 31
add a2, a2, a0
andi a2, a2, -2
subw a0, a0, a2
@@ -1649,8 +1681,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
add a2, a2, a0
andi a2, a2, -4
subw a0, a0, a2
@@ -2079,20 +2111,18 @@ main: # @main
bnez a1, .LBB24_51
# %bb.100: # %for.end863
li a0, 0
- ld ra, 136(sp) # 8-byte Folded Reload
- ld s0, 128(sp) # 8-byte Folded Reload
- ld s1, 120(sp) # 8-byte Folded Reload
- ld s2, 112(sp) # 8-byte Folded Reload
- ld s3, 104(sp) # 8-byte Folded Reload
- ld s4, 96(sp) # 8-byte Folded Reload
- ld s5, 88(sp) # 8-byte Folded Reload
- ld s6, 80(sp) # 8-byte Folded Reload
- ld s7, 72(sp) # 8-byte Folded Reload
- ld s8, 64(sp) # 8-byte Folded Reload
- ld s9, 56(sp) # 8-byte Folded Reload
- ld s10, 48(sp) # 8-byte Folded Reload
- ld s11, 40(sp) # 8-byte Folded Reload
- addi sp, sp, 144
+ ld ra, 120(sp) # 8-byte Folded Reload
+ ld s0, 112(sp) # 8-byte Folded Reload
+ ld s1, 104(sp) # 8-byte Folded Reload
+ ld s2, 96(sp) # 8-byte Folded Reload
+ ld s3, 88(sp) # 8-byte Folded Reload
+ ld s4, 80(sp) # 8-byte Folded Reload
+ ld s5, 72(sp) # 8-byte Folded Reload
+ ld s6, 64(sp) # 8-byte Folded Reload
+ ld s7, 56(sp) # 8-byte Folded Reload
+ ld s8, 48(sp) # 8-byte Folded Reload
+ ld s9, 40(sp) # 8-byte Folded Reload
+ addi sp, sp, 128
ret
.LBB24_101: # %if.then
call abort
diff --git a/output_rv64imafdc_lp64_Os/pr53645.s b/output_rv64imafdc_lp64_Os/pr53645.s
index 56bd435ece..7c352a0b5d 100644
--- a/output_rv64imafdc_lp64_Os/pr53645.s
+++ b/output_rv64imafdc_lp64_Os/pr53645.s
@@ -188,7 +188,7 @@ sq1428: # @sq1428
sr1428: # @sr1428
# %bb.0: # %entry
lw a2, 4(a1)
- lwu a3, 8(a1)
+ lw a3, 8(a1)
lw a1, 12(a1)
slli a4, a2, 1
srli a4, a4, 62
@@ -200,7 +200,7 @@ sr1428: # @sr1428
add a4, a4, a1
andi a4, a4, -8
subw a1, a1, a4
- srli a4, a3, 31
+ srliw a4, a3, 31
add a4, a4, a3
andi a4, a4, -2
subw a3, a3, a4
@@ -254,36 +254,44 @@ uq3333: # @uq3333
.type ur3333,@function
ur3333: # @ur3333
# %bb.0: # %entry
- lwu a2, 0(a1)
- lui a3, %hi(.LCPI9_0)
- ld a3, %lo(.LCPI9_0)(a3)
- lwu a6, 12(a1)
- lwu a5, 8(a1)
- lwu a1, 4(a1)
- mulhu a4, a2, a3
- srli a7, a4, 1
- andi a4, a4, -2
- addw a4, a4, a7
- subw a7, a2, a4
- mulhu a4, a1, a3
- srli a2, a4, 1
- andi a4, a4, -2
- addw a2, a2, a4
- subw a1, a1, a2
- mulhu a2, a5, a3
- srli a4, a2, 1
- andi a2, a2, -2
- addw a2, a2, a4
- subw a2, a5, a2
- mulhu a3, a6, a3
+ lw t0, 12(a1)
+ lw t1, 8(a1)
+ slli a4, t0, 32
+ lw a5, 4(a1)
+ srli a6, a4, 32
+ slli a4, t1, 32
+ srli a7, a4, 32
+ slli a4, a5, 32
+ lw a1, 0(a1)
+ lui a2, %hi(.LCPI9_0)
+ ld a2, %lo(.LCPI9_0)(a2)
+ srli t2, a4, 32
+ slli a3, a1, 32
+ srli a3, a3, 32
+ mulhu a3, a3, a2
srli a4, a3, 1
andi a3, a3, -2
addw a3, a3, a4
- subw a3, a6, a3
- sw a3, 12(a0)
- sw a2, 8(a0)
- sw a1, 4(a0)
- sw a7, 0(a0)
+ subw a1, a1, a3
+ mulhu a3, t2, a2
+ srli a4, a3, 1
+ andi a3, a3, -2
+ addw a3, a3, a4
+ subw a3, a5, a3
+ mulhu a4, a7, a2
+ srli a5, a4, 1
+ andi a4, a4, -2
+ addw a4, a4, a5
+ subw a4, t1, a4
+ mulhu a2, a6, a2
+ srli a5, a2, 1
+ andi a2, a2, -2
+ addw a2, a2, a5
+ subw a2, t0, a2
+ sw a2, 12(a0)
+ sw a4, 8(a0)
+ sw a3, 4(a0)
+ sw a1, 0(a0)
ret
.Lfunc_end9:
.size ur3333, .Lfunc_end9-ur3333
@@ -420,36 +428,44 @@ uq6565: # @uq6565
.type ur6565,@function
ur6565: # @ur6565
# %bb.0: # %entry
- lwu a2, 4(a1)
- lui a3, %hi(.LCPI13_0)
- ld a3, %lo(.LCPI13_0)(a3)
- lwu a6, 8(a1)
- lwu a7, 0(a1)
- lwu a1, 12(a1)
- mulhu a4, a2, a3
- srli a5, a4, 2
- andi a4, a4, -4
- addw a4, a4, a5
- subw a2, a2, a4
- mulhu a3, a1, a3
+ lw t0, 8(a1)
+ lw t1, 0(a1)
+ slli a4, t0, 32
+ lw a5, 12(a1)
+ srli a6, a4, 32
+ slli a4, t1, 32
+ srli a7, a4, 32
+ slli a4, a5, 32
+ lw a1, 4(a1)
+ lui a2, %hi(.LCPI13_0)
+ ld a2, %lo(.LCPI13_0)(a2)
+ srli t2, a4, 32
+ slli a3, a1, 32
+ srli a3, a3, 32
+ mulhu a3, a3, a2
srli a4, a3, 2
- lui a5, %hi(.LCPI13_1)
- ld a5, %lo(.LCPI13_1)(a5)
andi a3, a3, -4
addw a3, a3, a4
subw a1, a1, a3
- mulhu a3, a7, a5
+ mulhu a2, t2, a2
+ srli a3, a2, 2
+ lui a4, %hi(.LCPI13_1)
+ ld a4, %lo(.LCPI13_1)(a4)
+ andi a2, a2, -4
+ addw a2, a2, a3
+ subw a2, a5, a2
+ mulhu a3, a7, a4
srli a3, a3, 2
- li a4, 6
- mulw a3, a3, a4
- subw a3, a7, a3
- mulhu a5, a6, a5
- srli a5, a5, 2
- mulw a4, a5, a4
- subw a4, a6, a4
- sw a1, 12(a0)
+ li a5, 6
+ mulw a3, a3, a5
+ subw a3, t1, a3
+ mulhu a4, a6, a4
+ srli a4, a4, 2
+ mulw a4, a4, a5
+ subw a4, t0, a4
+ sw a2, 12(a0)
sw a4, 8(a0)
- sw a2, 4(a0)
+ sw a1, 4(a0)
sw a3, 0(a0)
ret
.Lfunc_end13:
@@ -592,48 +608,50 @@ uq1414146: # @uq1414146
.section .sdata,"aw",@progbits
.p2align 3 # -- Begin function ur1414146
.LCPI17_0:
- .quad 5270498306774157605 # 0x4924924924924925
-.LCPI17_1:
.quad -6148914691236517205 # 0xaaaaaaaaaaaaaaab
+.LCPI17_1:
+ .quad 5270498306774157605 # 0x4924924924924925
.text
.globl ur1414146
.p2align 1
.type ur1414146,@function
ur1414146: # @ur1414146
# %bb.0: # %entry
- lwu a6, 12(a1)
- lwu a3, 0(a1)
- lui a4, %hi(.LCPI17_0)
- ld a4, %lo(.LCPI17_0)(a4)
- lwu a5, 8(a1)
- lwu a1, 4(a1)
- srli a2, a3, 1
- mulhu a2, a2, a4
- srli a2, a2, 1
- li a7, 14
+ lw a6, 8(a1)
+ lw a3, 4(a1)
+ lw a4, 12(a1)
+ lui a5, %hi(.LCPI17_0)
+ ld a5, %lo(.LCPI17_0)(a5)
+ lw a1, 0(a1)
+ slli a2, a4, 32
+ srli a2, a2, 32
+ mulhu a2, a2, a5
+ srli a2, a2, 2
+ li a7, 6
+ lui a5, %hi(.LCPI17_1)
+ ld a5, %lo(.LCPI17_1)(a5)
mulw a2, a2, a7
- subw a2, a3, a2
- srli a3, a1, 1
- mulhu a3, a3, a4
- srli a3, a3, 1
- mulw a3, a3, a7
- subw a1, a1, a3
- srli a3, a5, 1
- mulhu a3, a3, a4
- lui a4, %hi(.LCPI17_1)
- ld a4, %lo(.LCPI17_1)(a4)
- srli a3, a3, 1
- mulw a3, a3, a7
- subw a3, a5, a3
- mulhu a4, a6, a4
- srli a4, a4, 2
- li a5, 6
- mulw a4, a4, a5
- subw a4, a6, a4
- sw a4, 12(a0)
- sw a3, 8(a0)
- sw a1, 4(a0)
- sw a2, 0(a0)
+ subw a7, a4, a2
+ srliw a4, a1, 1
+ mulhu a4, a4, a5
+ srli a4, a4, 1
+ li a2, 14
+ mulw a4, a4, a2
+ subw a1, a1, a4
+ srliw a4, a3, 1
+ mulhu a4, a4, a5
+ srli a4, a4, 1
+ mulw a4, a4, a2
+ subw a3, a3, a4
+ srliw a4, a6, 1
+ mulhu a4, a4, a5
+ srli a4, a4, 1
+ mulw a2, a4, a2
+ subw a2, a6, a2
+ sw a2, 8(a0)
+ sw a3, 4(a0)
+ sw a1, 0(a0)
+ sw a7, 12(a0)
ret
.Lfunc_end17:
.size ur1414146, .Lfunc_end17-ur1414146
@@ -788,48 +806,56 @@ uq7777: # @uq7777
.type ur7777,@function
ur7777: # @ur7777
# %bb.0: # %entry
- lwu a2, 0(a1)
- lui a3, %hi(.LCPI21_0)
- ld a3, %lo(.LCPI21_0)(a3)
- lwu a6, 12(a1)
- lwu a7, 8(a1)
- lwu a1, 4(a1)
- mulhu a4, a2, a3
- sub a5, a2, a4
- srli a5, a5, 1
- add a4, a4, a5
- srli a4, a4, 2
- slliw a5, a4, 3
- subw a4, a4, a5
- addw a2, a2, a4
- mulhu a4, a1, a3
- sub a5, a1, a4
+ lw a6, 12(a1)
+ lw a7, 8(a1)
+ slli a4, a6, 32
+ lw t2, 4(a1)
+ srli t0, a4, 32
+ slli a2, a7, 32
+ srli t1, a2, 32
+ slli a3, t2, 32
+ lw a1, 0(a1)
+ lui a4, %hi(.LCPI21_0)
+ ld a4, %lo(.LCPI21_0)(a4)
+ srli a3, a3, 32
+ slli a2, a1, 32
+ srli a2, a2, 32
+ mulhu a5, a2, a4
+ sub a2, a2, a5
+ srli a2, a2, 1
+ add a2, a2, a5
+ srli a2, a2, 2
+ slliw a5, a2, 3
+ subw a2, a2, a5
+ addw a1, a1, a2
+ mulhu a2, a3, a4
+ sub a3, a3, a2
+ srli a3, a3, 1
+ add a2, a2, a3
+ srli a2, a2, 2
+ slliw a3, a2, 3
+ subw a2, a2, a3
+ addw a2, t2, a2
+ mulhu a3, t1, a4
+ sub a5, t1, a3
srli a5, a5, 1
- add a4, a4, a5
- srli a4, a4, 2
- slliw a5, a4, 3
- subw a4, a4, a5
- addw a1, a1, a4
- mulhu a4, a7, a3
- sub a5, a7, a4
+ add a3, a3, a5
+ srli a3, a3, 2
+ slliw a5, a3, 3
+ subw a3, a3, a5
+ addw a3, a7, a3
+ mulhu a4, t0, a4
+ sub a5, t0, a4
srli a5, a5, 1
add a4, a4, a5
srli a4, a4, 2
slliw a5, a4, 3
subw a4, a4, a5
- addw a4, a7, a4
- mulhu a3, a6, a3
- sub a5, a6, a3
- srli a5, a5, 1
- add a3, a3, a5
- srli a3, a3, 2
- slliw a5, a3, 3
- subw a3, a3, a5
- addw a3, a6, a3
- sw a3, 12(a0)
- sw a4, 8(a0)
- sw a1, 4(a0)
- sw a2, 0(a0)
+ addw a4, a6, a4
+ sw a4, 12(a0)
+ sw a3, 8(a0)
+ sw a2, 4(a0)
+ sw a1, 0(a0)
ret
.Lfunc_end21:
.size ur7777, .Lfunc_end21-ur7777
@@ -931,43 +957,37 @@ sr7777: # @sr7777
.type main,@function
main: # @main
# %bb.0: # %entry
- addi sp, sp, -144
- sd ra, 136(sp) # 8-byte Folded Spill
- sd s0, 128(sp) # 8-byte Folded Spill
- sd s1, 120(sp) # 8-byte Folded Spill
- sd s2, 112(sp) # 8-byte Folded Spill
- sd s3, 104(sp) # 8-byte Folded Spill
- sd s4, 96(sp) # 8-byte Folded Spill
- sd s5, 88(sp) # 8-byte Folded Spill
- sd s6, 80(sp) # 8-byte Folded Spill
- sd s7, 72(sp) # 8-byte Folded Spill
- sd s8, 64(sp) # 8-byte Folded Spill
- sd s9, 56(sp) # 8-byte Folded Spill
- sd s10, 48(sp) # 8-byte Folded Spill
- sd s11, 40(sp) # 8-byte Folded Spill
+ addi sp, sp, -128
+ sd ra, 120(sp) # 8-byte Folded Spill
+ sd s0, 112(sp) # 8-byte Folded Spill
+ sd s1, 104(sp) # 8-byte Folded Spill
+ sd s2, 96(sp) # 8-byte Folded Spill
+ sd s3, 88(sp) # 8-byte Folded Spill
+ sd s4, 80(sp) # 8-byte Folded Spill
+ sd s5, 72(sp) # 8-byte Folded Spill
+ sd s6, 64(sp) # 8-byte Folded Spill
+ sd s7, 56(sp) # 8-byte Folded Spill
+ sd s8, 48(sp) # 8-byte Folded Spill
+ sd s9, 40(sp) # 8-byte Folded Spill
li a0, 0
li s3, 1
lui a1, %hi(u)
addi s2, a1, %lo(u)
- addi s1, sp, 16
- lui a1, 171
- addiw a1, a1, -1365
- slli a1, a1, 12
- addi s4, a1, -1365
+ addi s4, sp, 16
lui a1, 699051
addiw a1, a1, -1365
- slli s5, a1, 32
+ slli s1, a1, 32
lui a1, 838861
addiw a1, a1, -819
- slli s6, a1, 32
- li s7, 6
+ slli s5, a1, 32
+ li s6, 6
lui a1, 299593
slli a1, a1, 1
- addi s8, a1, 1171
- li s9, 14
+ addi s7, a1, 1171
+ li s8, 14
lui a1, 149797
- addiw s10, a1, -1755
- slli s11, s10, 32
+ addiw a1, a1, -1755
+ slli s9, a1, 32
.LBB24_1: # %for.body
# =>This Inner Loop Header: Depth=1
slli a0, a0, 4
@@ -975,9 +995,9 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq4444
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- srli a0, a0, 2
+ srliw a0, a0, 2
bne a1, a0, .LBB24_101
# %bb.2: # %lor.lhs.false
# in Loop: Header=BB24_1 Depth=1
@@ -989,9 +1009,9 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a0, a0, 2
+ srliw a0, a0, 2
bne a1, a0, .LBB24_101
# %bb.4: # %lor.lhs.false19
# in Loop: Header=BB24_1 Depth=1
@@ -1006,7 +1026,7 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur4444
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
andi a0, a0, 3
bne a1, a0, .LBB24_101
@@ -1020,7 +1040,7 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
andi a0, a0, 3
bne a1, a0, .LBB24_101
@@ -1050,9 +1070,9 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a0, a0, 1
+ srliw a0, a0, 1
bne a1, a0, .LBB24_101
# %bb.12: # %lor.lhs.false90
# in Loop: Header=BB24_1 Depth=1
@@ -1079,7 +1099,7 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
andi a0, a0, 1
bne a1, a0, .LBB24_101
@@ -1096,9 +1116,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq3333
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.18: # %lor.lhs.false145
@@ -1106,16 +1127,17 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a0, a0, 32
- mulhu a0, a0, s5
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.19: # %if.end154
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.20: # %lor.lhs.false162
@@ -1123,7 +1145,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a0, a0, 32
- mulhu a0, a0, s5
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.21: # %if.end171
@@ -1133,9 +1155,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur3333
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1146,7 +1169,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s5
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1156,9 +1179,10 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1169,7 +1193,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s5
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1182,9 +1206,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq6565
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.26: # %lor.lhs.false217
@@ -1192,16 +1217,17 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a0, a0, 32
- mulhu a0, a0, s6
+ mulhu a0, a0, s5
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.27: # %if.end226
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.28: # %lor.lhs.false234
@@ -1209,7 +1235,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a0, a0, 32
- mulhu a0, a0, s6
+ mulhu a0, a0, s5
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.29: # %if.end243
@@ -1219,11 +1245,12 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur6565
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 34
- mulw a2, a2, s7
+ mulw a2, a2, s6
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.30: # %lor.lhs.false253
@@ -1231,7 +1258,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s6
+ mulhu a2, a2, s5
srli a2, a2, 34
slliw a3, a2, 2
addw a2, a2, a3
@@ -1241,11 +1268,12 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 34
- mulw a2, a2, s7
+ mulw a2, a2, s6
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.32: # %lor.lhs.false270
@@ -1253,7 +1281,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s6
+ mulhu a2, a2, s5
srli a2, a2, 34
slliw a3, a2, 2
addw a2, a2, a3
@@ -1266,10 +1294,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq1414146
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- srli a0, a0, 1
- mul a0, a0, s8
+ srliw a0, a0, 1
+ mul a0, a0, s7
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.34: # %lor.lhs.false289
@@ -1277,17 +1305,17 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a0, a0, 32
- mulhu a0, a0, s5
+ mulhu a0, a0, s1
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.35: # %if.end298
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a0, a0, 1
- mul a0, a0, s8
+ srliw a0, a0, 1
+ mul a0, a0, s7
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.36: # %lor.lhs.false306
@@ -1295,7 +1323,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
srliw a0, a0, 1
- mul a0, a0, s8
+ mul a0, a0, s7
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.37: # %if.end315
@@ -1305,12 +1333,12 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur1414146
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- srli a2, a0, 1
- mul a2, a2, s8
+ srliw a2, a0, 1
+ mul a2, a2, s7
srli a2, a2, 34
- mulw a2, a2, s9
+ mulw a2, a2, s8
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.38: # %lor.lhs.false325
@@ -1318,21 +1346,21 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s5
+ mulhu a2, a2, s1
srli a2, a2, 34
- mulw a2, a2, s7
+ mulw a2, a2, s6
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.39: # %if.end334
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a2, a0, 1
- mul a2, a2, s8
+ srliw a2, a0, 1
+ mul a2, a2, s7
srli a2, a2, 34
- mulw a2, a2, s9
+ mulw a2, a2, s8
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.40: # %lor.lhs.false342
@@ -1340,9 +1368,9 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
srliw a2, a0, 1
- mul a2, a2, s8
+ mul a2, a2, s7
srli a2, a2, 34
- mulw a2, a2, s9
+ mulw a2, a2, s8
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.41: # %if.end351
@@ -1352,9 +1380,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq7777
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1366,7 +1395,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1377,9 +1406,10 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1391,7 +1421,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1405,9 +1435,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur7777
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1422,7 +1453,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1436,9 +1467,10 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1453,7 +1485,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1505,8 +1537,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 12(s0)
lw a1, 12(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
addw a0, a0, a2
sraiw a0, a0, 2
bne a1, a0, .LBB24_101
@@ -1525,8 +1557,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
addw a0, a0, a2
sraiw a0, a0, 2
bne a1, a0, .LBB24_101
@@ -1549,8 +1581,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 12(s0)
lw a1, 12(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
add a2, a2, a0
andi a2, a2, -4
subw a0, a0, a2
@@ -1571,8 +1603,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
add a2, a2, a0
andi a2, a2, -4
subw a0, a0, a2
@@ -1591,8 +1623,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 12(s0)
lw a1, 12(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 29
+ slli a2, a0, 1
+ srli a2, a2, 61
addw a0, a0, a2
sraiw a0, a0, 3
bne a1, a0, .LBB24_101
@@ -1600,9 +1632,9 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 8(sp)
- srli a2, a0, 31
+ srliw a2, a0, 31
addw a0, a0, a2
sraiw a0, a0, 1
bne a1, a0, .LBB24_101
@@ -1610,8 +1642,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
addw a0, a0, a2
sraiw a0, a0, 2
bne a1, a0, .LBB24_101
@@ -1638,9 +1670,9 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 8(sp)
- srli a2, a0, 31
+ srliw a2, a0, 31
add a2, a2, a0
andi a2, a2, -2
subw a0, a0, a2
@@ -1649,8 +1681,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
add a2, a2, a0
andi a2, a2, -4
subw a0, a0, a2
@@ -2079,20 +2111,18 @@ main: # @main
bnez a1, .LBB24_51
# %bb.100: # %for.end863
li a0, 0
- ld ra, 136(sp) # 8-byte Folded Reload
- ld s0, 128(sp) # 8-byte Folded Reload
- ld s1, 120(sp) # 8-byte Folded Reload
- ld s2, 112(sp) # 8-byte Folded Reload
- ld s3, 104(sp) # 8-byte Folded Reload
- ld s4, 96(sp) # 8-byte Folded Reload
- ld s5, 88(sp) # 8-byte Folded Reload
- ld s6, 80(sp) # 8-byte Folded Reload
- ld s7, 72(sp) # 8-byte Folded Reload
- ld s8, 64(sp) # 8-byte Folded Reload
- ld s9, 56(sp) # 8-byte Folded Reload
- ld s10, 48(sp) # 8-byte Folded Reload
- ld s11, 40(sp) # 8-byte Folded Reload
- addi sp, sp, 144
+ ld ra, 120(sp) # 8-byte Folded Reload
+ ld s0, 112(sp) # 8-byte Folded Reload
+ ld s1, 104(sp) # 8-byte Folded Reload
+ ld s2, 96(sp) # 8-byte Folded Reload
+ ld s3, 88(sp) # 8-byte Folded Reload
+ ld s4, 80(sp) # 8-byte Folded Reload
+ ld s5, 72(sp) # 8-byte Folded Reload
+ ld s6, 64(sp) # 8-byte Folded Reload
+ ld s7, 56(sp) # 8-byte Folded Reload
+ ld s8, 48(sp) # 8-byte Folded Reload
+ ld s9, 40(sp) # 8-byte Folded Reload
+ addi sp, sp, 128
ret
.LBB24_101: # %if.then
call abort
diff --git a/output_rv64imafdc_lp64d_O0/mode-dependent-address.s b/output_rv64imafdc_lp64d_O0/mode-dependent-address.s
index 843bb8a10b..19bff2e901 100644
--- a/output_rv64imafdc_lp64d_O0/mode-dependent-address.s
+++ b/output_rv64imafdc_lp64d_O0/mode-dependent-address.s
@@ -114,10 +114,11 @@ main: # @main
j .LBB1_2
.LBB1_2: # %for.body
# in Loop: Header=BB1_1 Depth=1
- lw a0, -24(s0)
+ lwu a0, -24(s0)
+ sext.w a2, a0
lui a1, %hi(arg4)
addi a1, a1, %lo(arg4)
- add a1, a1, a0
+ add a1, a1, a2
sb a0, 0(a1)
lw a2, -24(s0)
lui a1, %hi(arg1)
diff --git a/output_rv64imafdc_lp64d_O0/pr53645.s b/output_rv64imafdc_lp64d_O0/pr53645.s
index 9f6f143909..854ac29016 100644
--- a/output_rv64imafdc_lp64d_O0/pr53645.s
+++ b/output_rv64imafdc_lp64d_O0/pr53645.s
@@ -1372,12 +1372,12 @@ main: # @main
lw a2, -100(s0)
slli a2, a2, 4
add a1, a1, a2
- lwu a1, 0(a1)
- lui a2, 171
- addiw a2, a2, -1365
- slli a2, a2, 12
- addi a2, a2, -1365
- mul a2, a1, a2
+ lw a1, 0(a1)
+ slli a2, a1, 32
+ lui a3, 699051
+ addiw a3, a3, -1365
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a3, a2, 33
slliw a2, a3, 1
addw a2, a2, a3
@@ -1392,12 +1392,12 @@ main: # @main
lui a1, %hi(u)
addi a1, a1, %lo(u)
add a1, a1, a2
- lwu a1, 12(a1)
- lui a2, 171
- addiw a2, a2, -1365
- slli a2, a2, 12
- addi a2, a2, -1365
- mul a2, a1, a2
+ lw a1, 12(a1)
+ slli a2, a1, 32
+ lui a3, 699051
+ addiw a3, a3, -1365
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a3, a2, 33
slliw a2, a3, 1
addw a2, a2, a3
@@ -1417,12 +1417,12 @@ main: # @main
addi a1, a1, %lo(u)
slli a2, a2, 4
add a1, a1, a2
- lwu a1, 8(a1)
- lui a2, 171
- addiw a2, a2, -1365
- slli a2, a2, 12
- addi a2, a2, -1365
- mul a2, a1, a2
+ lw a1, 8(a1)
+ slli a2, a1, 32
+ lui a3, 699051
+ addiw a3, a3, -1365
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a3, a2, 33
slliw a2, a3, 1
addw a2, a2, a3
@@ -1437,12 +1437,12 @@ main: # @main
lui a1, %hi(u)
addi a1, a1, %lo(u)
add a1, a1, a2
- lwu a1, 4(a1)
- lui a2, 171
- addiw a2, a2, -1365
- slli a2, a2, 12
- addi a2, a2, -1365
- mul a2, a1, a2
+ lw a1, 4(a1)
+ slli a2, a1, 32
+ lui a3, 699051
+ addiw a3, a3, -1365
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a3, a2, 33
slliw a2, a3, 1
addw a2, a2, a3
@@ -1552,12 +1552,12 @@ main: # @main
lw a2, -100(s0)
slli a2, a2, 4
add a1, a1, a2
- lwu a1, 0(a1)
- lui a2, 171
- addiw a2, a2, -1365
- slli a2, a2, 12
- addi a2, a2, -1365
- mul a2, a1, a2
+ lw a1, 0(a1)
+ slli a2, a1, 32
+ lui a3, 699051
+ addiw a3, a3, -1365
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a2, a2, 34
li a3, 6
mulw a2, a2, a3
@@ -1572,12 +1572,12 @@ main: # @main
lui a1, %hi(u)
addi a1, a1, %lo(u)
add a1, a1, a2
- lwu a1, 12(a1)
- lui a2, 205
- addiw a2, a2, -819
- slli a2, a2, 12
- addi a2, a2, -819
- mul a2, a1, a2
+ lw a1, 12(a1)
+ slli a2, a1, 32
+ lui a3, 838861
+ addiw a3, a3, -819
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a3, a2, 34
slliw a2, a3, 2
addw a2, a2, a3
@@ -1597,12 +1597,12 @@ main: # @main
addi a1, a1, %lo(u)
slli a2, a2, 4
add a1, a1, a2
- lwu a1, 8(a1)
- lui a2, 171
- addiw a2, a2, -1365
- slli a2, a2, 12
- addi a2, a2, -1365
- mul a2, a1, a2
+ lw a1, 8(a1)
+ slli a2, a1, 32
+ lui a3, 699051
+ addiw a3, a3, -1365
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a2, a2, 34
li a3, 6
mulw a2, a2, a3
@@ -1617,12 +1617,12 @@ main: # @main
lui a1, %hi(u)
addi a1, a1, %lo(u)
add a1, a1, a2
- lwu a1, 4(a1)
- lui a2, 205
- addiw a2, a2, -819
- slli a2, a2, 12
- addi a2, a2, -819
- mul a2, a1, a2
+ lw a1, 4(a1)
+ slli a2, a1, 32
+ lui a3, 838861
+ addiw a3, a3, -819
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a3, a2, 34
slliw a2, a3, 2
addw a2, a2, a3
@@ -1732,8 +1732,8 @@ main: # @main
lw a2, -100(s0)
slli a2, a2, 4
add a1, a1, a2
- lwu a1, 0(a1)
- srli a2, a1, 1
+ lw a1, 0(a1)
+ srliw a2, a1, 1
lui a3, 299593
slli a3, a3, 1
addi a3, a3, 1171
@@ -1752,12 +1752,12 @@ main: # @main
lui a1, %hi(u)
addi a1, a1, %lo(u)
add a1, a1, a2
- lwu a1, 12(a1)
- lui a2, 171
- addiw a2, a2, -1365
- slli a2, a2, 12
- addi a2, a2, -1365
- mul a2, a1, a2
+ lw a1, 12(a1)
+ slli a2, a1, 32
+ lui a3, 699051
+ addiw a3, a3, -1365
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a2, a2, 34
li a3, 6
mulw a2, a2, a3
@@ -1777,8 +1777,8 @@ main: # @main
addi a1, a1, %lo(u)
slli a2, a2, 4
add a1, a1, a2
- lwu a1, 8(a1)
- srli a2, a1, 1
+ lw a1, 8(a1)
+ srliw a2, a1, 1
lui a3, 299593
slli a3, a3, 1
addi a3, a3, 1171
@@ -1797,8 +1797,8 @@ main: # @main
lui a1, %hi(u)
addi a1, a1, %lo(u)
add a1, a1, a2
- lwu a1, 4(a1)
- srli a2, a1, 1
+ lw a1, 4(a1)
+ srliw a2, a1, 1
lui a3, 299593
slli a3, a3, 1
addi a3, a3, 1171
@@ -1828,10 +1828,12 @@ main: # @main
lw a2, -100(s0)
slli a2, a2, 4
add a1, a1, a2
- lwu a1, 0(a1)
- lui a2, 149797
- addiw a2, a2, -1755
- mul a2, a1, a2
+ lw a1, 0(a1)
+ slli a2, a1, 32
+ lui a3, 149797
+ addiw a3, a3, -1755
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a2, a2, 32
subw a1, a1, a2
srliw a1, a1, 1
@@ -1847,10 +1849,12 @@ main: # @main
lui a1, %hi(u)
addi a1, a1, %lo(u)
add a1, a1, a2
- lwu a1, 12(a1)
- lui a2, 149797
- addiw a2, a2, -1755
- mul a2, a1, a2
+ lw a1, 12(a1)
+ slli a2, a1, 32
+ lui a3, 149797
+ addiw a3, a3, -1755
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a2, a2, 32
subw a1, a1, a2
srliw a1, a1, 1
@@ -1871,10 +1875,12 @@ main: # @main
addi a1, a1, %lo(u)
slli a2, a2, 4
add a1, a1, a2
- lwu a1, 8(a1)
- lui a2, 149797
- addiw a2, a2, -1755
- mul a2, a1, a2
+ lw a1, 8(a1)
+ slli a2, a1, 32
+ lui a3, 149797
+ addiw a3, a3, -1755
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a2, a2, 32
subw a1, a1, a2
srliw a1, a1, 1
@@ -1890,10 +1896,12 @@ main: # @main
lui a1, %hi(u)
addi a1, a1, %lo(u)
add a1, a1, a2
- lwu a1, 4(a1)
- lui a2, 149797
- addiw a2, a2, -1755
- mul a2, a1, a2
+ lw a1, 4(a1)
+ slli a2, a1, 32
+ lui a3, 149797
+ addiw a3, a3, -1755
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a2, a2, 32
subw a1, a1, a2
srliw a1, a1, 1
@@ -1920,10 +1928,12 @@ main: # @main
lw a2, -100(s0)
slli a2, a2, 4
add a1, a1, a2
- lwu a1, 0(a1)
- lui a2, 149797
- addiw a2, a2, -1755
- mul a2, a1, a2
+ lw a1, 0(a1)
+ slli a2, a1, 32
+ lui a3, 149797
+ addiw a3, a3, -1755
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a3, a2, 32
subw a2, a1, a3
srliw a2, a2, 1
@@ -1942,10 +1952,12 @@ main: # @main
lui a1, %hi(u)
addi a1, a1, %lo(u)
add a1, a1, a2
- lwu a1, 12(a1)
- lui a2, 149797
- addiw a2, a2, -1755
- mul a2, a1, a2
+ lw a1, 12(a1)
+ slli a2, a1, 32
+ lui a3, 149797
+ addiw a3, a3, -1755
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a3, a2, 32
subw a2, a1, a3
srliw a2, a2, 1
@@ -1969,10 +1981,12 @@ main: # @main
addi a1, a1, %lo(u)
slli a2, a2, 4
add a1, a1, a2
- lwu a1, 8(a1)
- lui a2, 149797
- addiw a2, a2, -1755
- mul a2, a1, a2
+ lw a1, 8(a1)
+ slli a2, a1, 32
+ lui a3, 149797
+ addiw a3, a3, -1755
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a3, a2, 32
subw a2, a1, a3
srliw a2, a2, 1
@@ -1991,10 +2005,12 @@ main: # @main
lui a1, %hi(u)
addi a1, a1, %lo(u)
add a1, a1, a2
- lwu a1, 4(a1)
- lui a2, 149797
- addiw a2, a2, -1755
- mul a2, a1, a2
+ lw a1, 4(a1)
+ slli a2, a1, 32
+ lui a3, 149797
+ addiw a3, a3, -1755
+ slli a3, a3, 32
+ mulhu a2, a2, a3
srli a3, a2, 32
subw a2, a1, a3
srliw a2, a2, 1
@@ -2231,8 +2247,8 @@ main: # @main
addi a1, a1, %lo(s)
slli a2, a2, 4
add a1, a1, a2
- lwu a1, 8(a1)
- srli a2, a1, 31
+ lw a1, 8(a1)
+ srliw a2, a1, 31
addw a1, a1, a2
sraiw a1, a1, 1
bne a0, a1, .LBB24_95
@@ -2297,8 +2313,8 @@ main: # @main
addi a1, a1, %lo(s)
slli a2, a2, 4
add a1, a1, a2
- lwu a1, 8(a1)
- srli a2, a1, 31
+ lw a1, 8(a1)
+ srliw a2, a1, 31
add a2, a2, a1
andi a2, a2, -2
subw a1, a1, a2
diff --git a/output_rv64imafdc_lp64d_O1/pr23135.s b/output_rv64imafdc_lp64d_O1/pr23135.s
index 9d13784c07..8167879d43 100644
--- a/output_rv64imafdc_lp64d_O1/pr23135.s
+++ b/output_rv64imafdc_lp64d_O1/pr23135.s
@@ -33,164 +33,179 @@ main: # @main
sd s3, 24(sp) # 8-byte Folded Spill
sd s4, 16(sp) # 8-byte Folded Spill
sd s5, 8(sp) # 8-byte Folded Spill
+ sd s6, 0(sp) # 8-byte Folded Spill
lui a0, %hi(i)
lw a4, %lo(i)(a0)
lw a5, %lo(i+4)(a0)
lui a0, %hi(j)
- lw a2, %lo(j)(a0)
- lw a3, %lo(j+4)(a0)
- add a1, a2, a4
- add s1, a3, a5
- lui a0, %hi(res)
- sw s1, %lo(res+4)(a0)
- xori s0, a1, 160
- xori s1, s1, 113
- or s1, s1, s0
- sext.w s1, s1
- sw a1, %lo(res)(a0)
- bnez s1, .LBB1_12
+ lw s0, %lo(j+4)(a0)
+ lw s1, %lo(j)(a0)
+ addw a1, s0, a5
+ addw s4, s1, a4
+ lui a2, %hi(res)
+ sw s4, %lo(res)(a2)
+ sw a1, %lo(res+4)(a2)
+ lw a3, %lo(res)(a2)
+ lw a0, %lo(res+4)(a2)
+ xori a3, a3, 160
+ xori a0, a0, 113
+ or a0, a0, a3
+ bnez a0, .LBB1_12
# %bb.1: # %verify.exit
- mul a1, a3, a5
- mul s1, a2, a4
- sw s1, %lo(res)(a0)
- xori s1, s1, 1500
- xori s0, a1, 1300
- or s1, s1, s0
- sext.w s1, s1
- sw a1, %lo(res+4)(a0)
- bnez s1, .LBB1_12
+ mulw s5, s0, a5
+ mulw s3, s1, a4
+ sw s3, %lo(res)(a2)
+ sw s5, %lo(res+4)(a2)
+ lw a0, %lo(res)(a2)
+ lw a2, %lo(res+4)(a2)
+ xori a0, a0, 1500
+ xori a2, a2, 1300
+ or a0, a0, a2
+ bnez a0, .LBB1_12
# %bb.2: # %verify.exit27
- divw s3, a5, a3
- divw a1, a4, a2
- lui s1, %hi(res)
- sw a1, %lo(res)(s1)
- xori s0, a1, 15
- xori a0, s3, 7
- or a0, a0, s0
- sw s3, %lo(res+4)(s1)
+ divw t2, a5, s0
+ divw t3, a4, s1
+ lui a2, %hi(res)
+ sw t3, %lo(res)(a2)
+ sw t2, %lo(res+4)(a2)
+ lw a0, %lo(res)(a2)
+ lw a3, %lo(res+4)(a2)
+ xori a0, a0, 15
+ xori a3, a3, 7
+ or a0, a0, a3
bnez a0, .LBB1_12
# %bb.3: # %verify.exit32
- and t3, a3, a5
- and t2, a2, a4
- xori a0, t2, 2
- xori s0, t3, 4
- or a0, a0, s0
- sw t2, %lo(res)(s1)
- sw t3, %lo(res+4)(s1)
+ and a7, s0, a5
+ and a6, s1, a4
+ sw a6, %lo(res)(a2)
+ sw a7, %lo(res+4)(a2)
+ lw a0, %lo(res)(a2)
+ lw a2, %lo(res+4)(a2)
+ xori a0, a0, 2
+ xori a2, a2, 4
+ or a0, a0, a2
bnez a0, .LBB1_12
# %bb.4: # %verify.exit37
- or a6, a3, a5
- or a7, a2, a4
- lui s1, %hi(res)
- sw a7, %lo(res)(s1)
- xori a0, a7, 158
- xori s0, a6, 109
- or a0, a0, s0
- sw a6, %lo(res+4)(s1)
+ or t0, s0, a5
+ or t1, s1, a4
+ lui a2, %hi(res)
+ sw t1, %lo(res)(a2)
+ sw t0, %lo(res+4)(a2)
+ lw a0, %lo(res)(a2)
+ lw a3, %lo(res+4)(a2)
+ xori a0, a0, 158
+ xori a3, a3, 109
+ or a0, a0, a3
bnez a0, .LBB1_12
# %bb.5: # %verify.exit42
- xor t1, a3, a5
- xor t0, a2, a4
- xori a0, t0, 156
- xori s0, t1, 105
- or a0, a0, s0
- sw t0, %lo(res)(s1)
- sw t1, %lo(res+4)(s1)
+ xor t5, s0, a5
+ xor t4, s1, a4
+ sw t4, %lo(res)(a2)
+ sw t5, %lo(res+4)(a2)
+ lw a0, %lo(res)(a2)
+ lw a2, %lo(res+4)(a2)
+ xori a0, a0, 156
+ xori a2, a2, 105
+ or a0, a0, a2
bnez a0, .LBB1_12
# %bb.6: # %verify.exit47
- negw t4, a5
- negw t5, a4
- lui s1, %hi(res)
- sw t5, %lo(res)(s1)
- xori a0, t5, -150
- xori s0, t4, -100
- or a0, a0, s0
- sw t4, %lo(res+4)(s1)
+ negw t6, a5
+ negw s0, a4
+ lui a2, %hi(res)
+ sw s0, %lo(res)(a2)
+ sw t6, %lo(res+4)(a2)
+ lw a0, %lo(res)(a2)
+ lw a3, %lo(res+4)(a2)
+ xori a0, a0, -150
+ xori a3, a3, -100
+ or a0, a0, a3
bnez a0, .LBB1_12
# %bb.7: # %verify.exit52
- not t6, a5
- xori a0, a4, 150
- xori s0, a5, 100
- or a0, a0, s0
- not s0, a4
- sw s0, %lo(res)(s1)
- sw t6, %lo(res+4)(s1)
+ not s2, a5
+ not s1, a4
+ sw s1, %lo(res)(a2)
+ sw s2, %lo(res+4)(a2)
+ lw a0, %lo(res)(a2)
+ lw a2, %lo(res+4)(a2)
+ xori a0, a0, -151
+ xori a2, a2, -101
+ or a0, a0, a2
bnez a0, .LBB1_12
# %bb.8: # %verify.exit57
- addw s2, a3, a5
- addw s4, a2, a4
- mulw s5, a2, a4
- mulw a3, a3, a5
- subw a0, s0, a4
- subw a4, t6, a5
- add a4, a4, a3
- add a0, a0, s5
- add a0, a0, s4
- add a4, a4, s2
- add a4, a4, t3
- add a0, a0, t2
- add a0, a0, a7
- add a4, a4, a6
- add s1, a4, t1
- add a0, a0, t0
- lui a5, %hi(k)
- sw a0, %lo(k)(a5)
- lui a4, %hi(res)
- sw a0, %lo(res)(a4)
- xori a0, a0, 1675
- xori a2, s1, 1430
- or a0, a0, a2
- sw s1, %lo(k+4)(a5)
- sext.w a0, a0
- sw s1, %lo(res+4)(a4)
+ subw a0, s1, a4
+ subw a2, s2, a5
+ addw a2, a2, s5
+ addw a0, a0, s3
+ addw a0, a0, s4
+ addw a2, a2, a1
+ addw a2, a2, a7
+ addw a0, a0, a6
+ addw a0, a0, t1
+ addw a2, a2, t0
+ addw a2, a2, t5
+ addw a0, a0, t4
+ lui a5, %hi(res)
+ sw a0, %lo(res)(a5)
+ sw a2, %lo(res+4)(a5)
+ lw a3, %lo(res)(a5)
+ lw a4, %lo(res+4)(a5)
+ lui s6, %hi(k)
+ sw a0, %lo(k)(s6)
+ xori a0, a3, 1675
+ xori a3, a4, 1430
+ or a0, a0, a3
+ sw a2, %lo(k+4)(s6)
bnez a0, .LBB1_12
# %bb.9: # %verify.exit62
- mulw a0, s0, t5
- mulw a2, t6, t4
- mul a2, a2, a3
- mul a0, a0, s5
- mul a0, a0, s4
- mul a2, a2, s2
- mul a2, a2, t3
- mul a0, a0, t2
- mul a0, a0, a7
- mul a2, a2, a6
- mul a2, a2, t1
- mul a0, a0, t0
- sw a0, %lo(k)(a5)
- sw a2, %lo(k+4)(a5)
- sw a0, %lo(res)(a4)
- lui a5, 355583
- xor a0, a0, a5
- lui a5, 662935
- addiw a5, a5, -704
- xor a5, a5, a2
- or a0, a0, a5
- sext.w a0, a0
- sw a2, %lo(res+4)(a4)
+ mulw a0, s1, s0
+ mulw a2, s2, t6
+ mulw a2, a2, s5
+ mulw a0, a0, s3
+ mulw a0, a0, s4
+ mulw a2, a2, a1
+ mulw a2, a2, a7
+ mulw a0, a0, a6
+ mulw a0, a0, t1
+ mulw a2, a2, t0
+ mulw a2, a2, t5
+ mulw a0, a0, t4
+ sw a0, %lo(k)(s6)
+ sw a0, %lo(res)(a5)
+ lw a0, %lo(res)(a5)
+ sw a2, %lo(res+4)(a5)
+ lw a3, %lo(res+4)(a5)
+ lui a4, 355583
+ xor a0, a0, a4
+ lui a4, 662935
+ addiw a4, a4, -704
+ xor a3, a3, a4
+ or a0, a0, a3
+ sw a2, %lo(k+4)(s6)
bnez a0, .LBB1_12
# %bb.10: # %verify.exit67
- divw a0, s2, a3
- divw a2, s4, s5
- divw a1, a2, a1
- divw a0, a0, s3
- divw a0, a0, t3
- divw a1, a1, t2
- divw a1, a1, a7
- divw a0, a0, a6
- divw a0, a0, t1
- divw a1, a1, t0
- divw a1, a1, t5
- divw a0, a0, t4
- divw a0, a0, t6
+ divw a0, a1, s5
+ divw a1, s4, s3
+ divw a1, a1, t3
+ divw a0, a0, t2
+ divw a0, a0, a7
+ divw a1, a1, a6
+ divw a1, a1, t1
+ divw a0, a0, t0
+ divw a0, a0, t5
+ divw a1, a1, t4
divw a1, a1, s0
- lui a2, %hi(k)
- sw a1, %lo(k)(a2)
- sw a0, %lo(k+4)(a2)
+ divw a0, a0, t6
+ divw a0, a0, s2
+ divw a1, a1, s1
lui a2, %hi(res)
sw a1, %lo(res)(a2)
- or a1, a1, a0
sw a0, %lo(res+4)(a2)
+ lw a3, %lo(res)(a2)
+ lw a2, %lo(res+4)(a2)
+ lui a4, %hi(k)
+ sw a1, %lo(k)(a4)
+ or a1, a2, a3
+ sw a0, %lo(k+4)(a4)
bnez a1, .LBB1_12
# %bb.11: # %verify.exit72
li a0, 0
diff --git a/output_rv64imafdc_lp64d_O1/pr53645.s b/output_rv64imafdc_lp64d_O1/pr53645.s
index 9bc27bccb5..8fbf5b1879 100644
--- a/output_rv64imafdc_lp64d_O1/pr53645.s
+++ b/output_rv64imafdc_lp64d_O1/pr53645.s
@@ -188,7 +188,7 @@ sq1428: # @sq1428
sr1428: # @sr1428
# %bb.0: # %entry
lw a2, 4(a1)
- lwu a3, 8(a1)
+ lw a3, 8(a1)
lw a1, 12(a1)
slli a4, a2, 1
srli a4, a4, 62
@@ -200,7 +200,7 @@ sr1428: # @sr1428
add a4, a4, a1
andi a4, a4, -8
subw a1, a1, a4
- srli a4, a3, 31
+ srliw a4, a3, 31
add a4, a4, a3
andi a4, a4, -2
subw a3, a3, a4
@@ -254,36 +254,44 @@ uq3333: # @uq3333
.type ur3333,@function
ur3333: # @ur3333
# %bb.0: # %entry
- lwu a2, 0(a1)
- lui a3, %hi(.LCPI9_0)
- ld a3, %lo(.LCPI9_0)(a3)
- lwu a6, 12(a1)
- lwu a5, 8(a1)
- lwu a1, 4(a1)
- mulhu a4, a2, a3
- srli a7, a4, 1
- andi a4, a4, -2
- addw a4, a4, a7
- subw a7, a2, a4
- mulhu a4, a1, a3
- srli a2, a4, 1
- andi a4, a4, -2
- addw a2, a2, a4
- subw a1, a1, a2
- mulhu a2, a5, a3
- srli a4, a2, 1
- andi a2, a2, -2
- addw a2, a2, a4
- subw a2, a5, a2
- mulhu a3, a6, a3
+ lw t0, 12(a1)
+ lw t1, 8(a1)
+ slli a4, t0, 32
+ lw a5, 4(a1)
+ srli a6, a4, 32
+ slli a4, t1, 32
+ srli a7, a4, 32
+ slli a4, a5, 32
+ lw a1, 0(a1)
+ lui a2, %hi(.LCPI9_0)
+ ld a2, %lo(.LCPI9_0)(a2)
+ srli t2, a4, 32
+ slli a3, a1, 32
+ srli a3, a3, 32
+ mulhu a3, a3, a2
srli a4, a3, 1
andi a3, a3, -2
addw a3, a3, a4
- subw a3, a6, a3
- sw a3, 12(a0)
- sw a2, 8(a0)
- sw a1, 4(a0)
- sw a7, 0(a0)
+ subw a1, a1, a3
+ mulhu a3, t2, a2
+ srli a4, a3, 1
+ andi a3, a3, -2
+ addw a3, a3, a4
+ subw a3, a5, a3
+ mulhu a4, a7, a2
+ srli a5, a4, 1
+ andi a4, a4, -2
+ addw a4, a4, a5
+ subw a4, t1, a4
+ mulhu a2, a6, a2
+ srli a5, a2, 1
+ andi a2, a2, -2
+ addw a2, a2, a5
+ subw a2, t0, a2
+ sw a2, 12(a0)
+ sw a4, 8(a0)
+ sw a3, 4(a0)
+ sw a1, 0(a0)
ret
.Lfunc_end9:
.size ur3333, .Lfunc_end9-ur3333
@@ -420,36 +428,44 @@ uq6565: # @uq6565
.type ur6565,@function
ur6565: # @ur6565
# %bb.0: # %entry
- lwu a2, 4(a1)
- lui a3, %hi(.LCPI13_0)
- ld a3, %lo(.LCPI13_0)(a3)
- lwu a6, 8(a1)
- lwu a7, 0(a1)
- lwu a1, 12(a1)
- mulhu a4, a2, a3
- srli a5, a4, 2
- andi a4, a4, -4
- addw a4, a4, a5
- subw a2, a2, a4
- mulhu a3, a1, a3
+ lw t0, 8(a1)
+ lw t1, 0(a1)
+ slli a4, t0, 32
+ lw a5, 12(a1)
+ srli a6, a4, 32
+ slli a4, t1, 32
+ srli a7, a4, 32
+ slli a4, a5, 32
+ lw a1, 4(a1)
+ lui a2, %hi(.LCPI13_0)
+ ld a2, %lo(.LCPI13_0)(a2)
+ srli t2, a4, 32
+ slli a3, a1, 32
+ srli a3, a3, 32
+ mulhu a3, a3, a2
srli a4, a3, 2
- lui a5, %hi(.LCPI13_1)
- ld a5, %lo(.LCPI13_1)(a5)
andi a3, a3, -4
addw a3, a3, a4
subw a1, a1, a3
- mulhu a3, a7, a5
+ mulhu a2, t2, a2
+ srli a3, a2, 2
+ lui a4, %hi(.LCPI13_1)
+ ld a4, %lo(.LCPI13_1)(a4)
+ andi a2, a2, -4
+ addw a2, a2, a3
+ subw a2, a5, a2
+ mulhu a3, a7, a4
srli a3, a3, 2
- li a4, 6
- mulw a3, a3, a4
- subw a3, a7, a3
- mulhu a5, a6, a5
- srli a5, a5, 2
- mulw a4, a5, a4
- subw a4, a6, a4
- sw a1, 12(a0)
+ li a5, 6
+ mulw a3, a3, a5
+ subw a3, t1, a3
+ mulhu a4, a6, a4
+ srli a4, a4, 2
+ mulw a4, a4, a5
+ subw a4, t0, a4
+ sw a2, 12(a0)
sw a4, 8(a0)
- sw a2, 4(a0)
+ sw a1, 4(a0)
sw a3, 0(a0)
ret
.Lfunc_end13:
@@ -592,48 +608,50 @@ uq1414146: # @uq1414146
.section .sdata,"aw",@progbits
.p2align 3 # -- Begin function ur1414146
.LCPI17_0:
- .quad 5270498306774157605 # 0x4924924924924925
-.LCPI17_1:
.quad -6148914691236517205 # 0xaaaaaaaaaaaaaaab
+.LCPI17_1:
+ .quad 5270498306774157605 # 0x4924924924924925
.text
.globl ur1414146
.p2align 1
.type ur1414146,@function
ur1414146: # @ur1414146
# %bb.0: # %entry
- lwu a6, 12(a1)
- lwu a3, 0(a1)
- lui a4, %hi(.LCPI17_0)
- ld a4, %lo(.LCPI17_0)(a4)
- lwu a5, 8(a1)
- lwu a1, 4(a1)
- srli a2, a3, 1
- mulhu a2, a2, a4
- srli a2, a2, 1
- li a7, 14
+ lw a6, 8(a1)
+ lw a3, 4(a1)
+ lw a4, 12(a1)
+ lui a5, %hi(.LCPI17_0)
+ ld a5, %lo(.LCPI17_0)(a5)
+ lw a1, 0(a1)
+ slli a2, a4, 32
+ srli a2, a2, 32
+ mulhu a2, a2, a5
+ srli a2, a2, 2
+ li a7, 6
+ lui a5, %hi(.LCPI17_1)
+ ld a5, %lo(.LCPI17_1)(a5)
mulw a2, a2, a7
- subw a2, a3, a2
- srli a3, a1, 1
- mulhu a3, a3, a4
- srli a3, a3, 1
- mulw a3, a3, a7
- subw a1, a1, a3
- srli a3, a5, 1
- mulhu a3, a3, a4
- lui a4, %hi(.LCPI17_1)
- ld a4, %lo(.LCPI17_1)(a4)
- srli a3, a3, 1
- mulw a3, a3, a7
- subw a3, a5, a3
- mulhu a4, a6, a4
- srli a4, a4, 2
- li a5, 6
- mulw a4, a4, a5
- subw a4, a6, a4
- sw a4, 12(a0)
- sw a3, 8(a0)
- sw a1, 4(a0)
- sw a2, 0(a0)
+ subw a7, a4, a2
+ srliw a4, a1, 1
+ mulhu a4, a4, a5
+ srli a4, a4, 1
+ li a2, 14
+ mulw a4, a4, a2
+ subw a1, a1, a4
+ srliw a4, a3, 1
+ mulhu a4, a4, a5
+ srli a4, a4, 1
+ mulw a4, a4, a2
+ subw a3, a3, a4
+ srliw a4, a6, 1
+ mulhu a4, a4, a5
+ srli a4, a4, 1
+ mulw a2, a4, a2
+ subw a2, a6, a2
+ sw a2, 8(a0)
+ sw a3, 4(a0)
+ sw a1, 0(a0)
+ sw a7, 12(a0)
ret
.Lfunc_end17:
.size ur1414146, .Lfunc_end17-ur1414146
@@ -788,48 +806,56 @@ uq7777: # @uq7777
.type ur7777,@function
ur7777: # @ur7777
# %bb.0: # %entry
- lwu a2, 0(a1)
- lui a3, %hi(.LCPI21_0)
- ld a3, %lo(.LCPI21_0)(a3)
- lwu a6, 12(a1)
- lwu a7, 8(a1)
- lwu a1, 4(a1)
- mulhu a4, a2, a3
- sub a5, a2, a4
- srli a5, a5, 1
- add a4, a4, a5
- srli a4, a4, 2
- slliw a5, a4, 3
- subw a4, a4, a5
- addw a2, a2, a4
- mulhu a4, a1, a3
- sub a5, a1, a4
+ lw a6, 12(a1)
+ lw a7, 8(a1)
+ slli a4, a6, 32
+ lw t2, 4(a1)
+ srli t0, a4, 32
+ slli a2, a7, 32
+ srli t1, a2, 32
+ slli a3, t2, 32
+ lw a1, 0(a1)
+ lui a4, %hi(.LCPI21_0)
+ ld a4, %lo(.LCPI21_0)(a4)
+ srli a3, a3, 32
+ slli a2, a1, 32
+ srli a2, a2, 32
+ mulhu a5, a2, a4
+ sub a2, a2, a5
+ srli a2, a2, 1
+ add a2, a2, a5
+ srli a2, a2, 2
+ slliw a5, a2, 3
+ subw a2, a2, a5
+ addw a1, a1, a2
+ mulhu a2, a3, a4
+ sub a3, a3, a2
+ srli a3, a3, 1
+ add a2, a2, a3
+ srli a2, a2, 2
+ slliw a3, a2, 3
+ subw a2, a2, a3
+ addw a2, t2, a2
+ mulhu a3, t1, a4
+ sub a5, t1, a3
srli a5, a5, 1
- add a4, a4, a5
- srli a4, a4, 2
- slliw a5, a4, 3
- subw a4, a4, a5
- addw a1, a1, a4
- mulhu a4, a7, a3
- sub a5, a7, a4
+ add a3, a3, a5
+ srli a3, a3, 2
+ slliw a5, a3, 3
+ subw a3, a3, a5
+ addw a3, a7, a3
+ mulhu a4, t0, a4
+ sub a5, t0, a4
srli a5, a5, 1
add a4, a4, a5
srli a4, a4, 2
slliw a5, a4, 3
subw a4, a4, a5
- addw a4, a7, a4
- mulhu a3, a6, a3
- sub a5, a6, a3
- srli a5, a5, 1
- add a3, a3, a5
- srli a3, a3, 2
- slliw a5, a3, 3
- subw a3, a3, a5
- addw a3, a6, a3
- sw a3, 12(a0)
- sw a4, 8(a0)
- sw a1, 4(a0)
- sw a2, 0(a0)
+ addw a4, a6, a4
+ sw a4, 12(a0)
+ sw a3, 8(a0)
+ sw a2, 4(a0)
+ sw a1, 0(a0)
ret
.Lfunc_end21:
.size ur7777, .Lfunc_end21-ur7777
@@ -931,51 +957,47 @@ sr7777: # @sr7777
.type main,@function
main: # @main
# %bb.0: # %entry
- addi sp, sp, -144
- sd ra, 136(sp) # 8-byte Folded Spill
- sd s0, 128(sp) # 8-byte Folded Spill
- sd s1, 120(sp) # 8-byte Folded Spill
- sd s2, 112(sp) # 8-byte Folded Spill
- sd s3, 104(sp) # 8-byte Folded Spill
- sd s4, 96(sp) # 8-byte Folded Spill
- sd s5, 88(sp) # 8-byte Folded Spill
- sd s6, 80(sp) # 8-byte Folded Spill
- sd s7, 72(sp) # 8-byte Folded Spill
- sd s8, 64(sp) # 8-byte Folded Spill
- sd s9, 56(sp) # 8-byte Folded Spill
- sd s10, 48(sp) # 8-byte Folded Spill
- sd s11, 40(sp) # 8-byte Folded Spill
+ addi sp, sp, -128
+ sd ra, 120(sp) # 8-byte Folded Spill
+ sd s0, 112(sp) # 8-byte Folded Spill
+ sd s1, 104(sp) # 8-byte Folded Spill
+ sd s2, 96(sp) # 8-byte Folded Spill
+ sd s3, 88(sp) # 8-byte Folded Spill
+ sd s4, 80(sp) # 8-byte Folded Spill
+ sd s5, 72(sp) # 8-byte Folded Spill
+ sd s6, 64(sp) # 8-byte Folded Spill
+ sd s7, 56(sp) # 8-byte Folded Spill
+ sd s8, 48(sp) # 8-byte Folded Spill
+ sd s9, 40(sp) # 8-byte Folded Spill
+ sd s10, 32(sp) # 8-byte Folded Spill
li s3, 0
lui a0, %hi(u)
addi s2, a0, %lo(u)
- addi s1, sp, 16
- lui a0, 171
- addiw a0, a0, -1365
- slli a0, a0, 12
- addi s4, a0, -1365
+ addi s4, sp, 16
lui a0, 699051
addiw a0, a0, -1365
- slli s5, a0, 32
+ slli s1, a0, 32
lui a0, 838861
addiw a0, a0, -819
- slli s6, a0, 32
- li s7, 6
+ slli s5, a0, 32
+ li s6, 6
lui a0, 299593
slli a0, a0, 1
- addi s8, a0, 1171
- li s9, 14
+ addi s7, a0, 1171
+ li s8, 14
lui a0, 149797
- addiw s10, a0, -1755
- slli s11, s10, 32
+ addiw a0, a0, -1755
+ slli s9, a0, 32
+ li s10, 16
.LBB24_1: # %for.body
# =>This Inner Loop Header: Depth=1
add s0, s2, s3
addi a0, sp, 16
mv a1, s0
call uq4444
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- srli a0, a0, 2
+ srliw a0, a0, 2
bne a1, a0, .LBB24_101
# %bb.2: # %lor.lhs.false
# in Loop: Header=BB24_1 Depth=1
@@ -987,9 +1009,9 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a0, a0, 2
+ srliw a0, a0, 2
bne a1, a0, .LBB24_101
# %bb.4: # %lor.lhs.false19
# in Loop: Header=BB24_1 Depth=1
@@ -1004,7 +1026,7 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur4444
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
andi a0, a0, 3
bne a1, a0, .LBB24_101
@@ -1018,7 +1040,7 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
andi a0, a0, 3
bne a1, a0, .LBB24_101
@@ -1048,9 +1070,9 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a0, a0, 1
+ srliw a0, a0, 1
bne a1, a0, .LBB24_101
# %bb.12: # %lor.lhs.false90
# in Loop: Header=BB24_1 Depth=1
@@ -1077,7 +1099,7 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
andi a0, a0, 1
bne a1, a0, .LBB24_101
@@ -1094,9 +1116,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq3333
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.18: # %lor.lhs.false145
@@ -1104,16 +1127,17 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a0, a0, 32
- mulhu a0, a0, s5
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.19: # %if.end154
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.20: # %lor.lhs.false162
@@ -1121,7 +1145,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a0, a0, 32
- mulhu a0, a0, s5
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.21: # %if.end171
@@ -1131,9 +1155,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur3333
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1144,7 +1169,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s5
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1154,9 +1179,10 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1167,7 +1193,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s5
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1180,9 +1206,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq6565
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.26: # %lor.lhs.false217
@@ -1190,16 +1217,17 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a0, a0, 32
- mulhu a0, a0, s6
+ mulhu a0, a0, s5
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.27: # %if.end226
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.28: # %lor.lhs.false234
@@ -1207,7 +1235,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a0, a0, 32
- mulhu a0, a0, s6
+ mulhu a0, a0, s5
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.29: # %if.end243
@@ -1217,11 +1245,12 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur6565
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 34
- mulw a2, a2, s7
+ mulw a2, a2, s6
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.30: # %lor.lhs.false253
@@ -1229,7 +1258,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s6
+ mulhu a2, a2, s5
srli a2, a2, 34
slliw a3, a2, 2
addw a2, a2, a3
@@ -1239,11 +1268,12 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 34
- mulw a2, a2, s7
+ mulw a2, a2, s6
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.32: # %lor.lhs.false270
@@ -1251,7 +1281,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s6
+ mulhu a2, a2, s5
srli a2, a2, 34
slliw a3, a2, 2
addw a2, a2, a3
@@ -1264,10 +1294,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq1414146
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- srli a0, a0, 1
- mul a0, a0, s8
+ srliw a0, a0, 1
+ mul a0, a0, s7
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.34: # %lor.lhs.false289
@@ -1275,17 +1305,17 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a0, a0, 32
- mulhu a0, a0, s5
+ mulhu a0, a0, s1
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.35: # %if.end298
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a0, a0, 1
- mul a0, a0, s8
+ srliw a0, a0, 1
+ mul a0, a0, s7
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.36: # %lor.lhs.false306
@@ -1293,7 +1323,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
srliw a0, a0, 1
- mul a0, a0, s8
+ mul a0, a0, s7
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.37: # %if.end315
@@ -1303,12 +1333,12 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur1414146
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- srli a2, a0, 1
- mul a2, a2, s8
+ srliw a2, a0, 1
+ mul a2, a2, s7
srli a2, a2, 34
- mulw a2, a2, s9
+ mulw a2, a2, s8
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.38: # %lor.lhs.false325
@@ -1316,21 +1346,21 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s5
+ mulhu a2, a2, s1
srli a2, a2, 34
- mulw a2, a2, s7
+ mulw a2, a2, s6
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.39: # %if.end334
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a2, a0, 1
- mul a2, a2, s8
+ srliw a2, a0, 1
+ mul a2, a2, s7
srli a2, a2, 34
- mulw a2, a2, s9
+ mulw a2, a2, s8
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.40: # %lor.lhs.false342
@@ -1338,9 +1368,9 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
srliw a2, a0, 1
- mul a2, a2, s8
+ mul a2, a2, s7
srli a2, a2, 34
- mulw a2, a2, s9
+ mulw a2, a2, s8
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.41: # %if.end351
@@ -1350,9 +1380,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq7777
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1364,7 +1395,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1375,9 +1406,10 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1389,7 +1421,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1403,9 +1435,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur7777
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1420,7 +1453,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1434,9 +1467,10 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1451,7 +1485,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1466,8 +1500,7 @@ main: # @main
#APP
#NO_APP
addi s3, s3, 16
- li a0, 16
- beq s3, a0, .LBB24_1
+ beq s3, s10, .LBB24_1
# %bb.50: # %for.body428.preheader
li s3, 0
lui a0, %hi(s)
@@ -1501,8 +1534,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 12(s0)
lw a1, 12(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
addw a0, a0, a2
sraiw a0, a0, 2
bne a1, a0, .LBB24_101
@@ -1521,8 +1554,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
addw a0, a0, a2
sraiw a0, a0, 2
bne a1, a0, .LBB24_101
@@ -1545,8 +1578,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 12(s0)
lw a1, 12(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
add a2, a2, a0
andi a2, a2, -4
subw a0, a0, a2
@@ -1567,8 +1600,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
add a2, a2, a0
andi a2, a2, -4
subw a0, a0, a2
@@ -1587,8 +1620,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 12(s0)
lw a1, 12(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 29
+ slli a2, a0, 1
+ srli a2, a2, 61
addw a0, a0, a2
sraiw a0, a0, 3
bne a1, a0, .LBB24_101
@@ -1596,9 +1629,9 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 8(sp)
- srli a2, a0, 31
+ srliw a2, a0, 31
addw a0, a0, a2
sraiw a0, a0, 1
bne a1, a0, .LBB24_101
@@ -1606,8 +1639,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
addw a0, a0, a2
sraiw a0, a0, 2
bne a1, a0, .LBB24_101
@@ -1634,9 +1667,9 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 8(sp)
- srli a2, a0, 31
+ srliw a2, a0, 31
add a2, a2, a0
andi a2, a2, -2
subw a0, a0, a2
@@ -1645,8 +1678,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
add a2, a2, a0
andi a2, a2, -4
subw a0, a0, a2
@@ -2073,20 +2106,19 @@ main: # @main
beq s3, s10, .LBB24_51
# %bb.100: # %for.end863
li a0, 0
- ld ra, 136(sp) # 8-byte Folded Reload
- ld s0, 128(sp) # 8-byte Folded Reload
- ld s1, 120(sp) # 8-byte Folded Reload
- ld s2, 112(sp) # 8-byte Folded Reload
- ld s3, 104(sp) # 8-byte Folded Reload
- ld s4, 96(sp) # 8-byte Folded Reload
- ld s5, 88(sp) # 8-byte Folded Reload
- ld s6, 80(sp) # 8-byte Folded Reload
- ld s7, 72(sp) # 8-byte Folded Reload
- ld s8, 64(sp) # 8-byte Folded Reload
- ld s9, 56(sp) # 8-byte Folded Reload
- ld s10, 48(sp) # 8-byte Folded Reload
- ld s11, 40(sp) # 8-byte Folded Reload
- addi sp, sp, 144
+ ld ra, 120(sp) # 8-byte Folded Reload
+ ld s0, 112(sp) # 8-byte Folded Reload
+ ld s1, 104(sp) # 8-byte Folded Reload
+ ld s2, 96(sp) # 8-byte Folded Reload
+ ld s3, 88(sp) # 8-byte Folded Reload
+ ld s4, 80(sp) # 8-byte Folded Reload
+ ld s5, 72(sp) # 8-byte Folded Reload
+ ld s6, 64(sp) # 8-byte Folded Reload
+ ld s7, 56(sp) # 8-byte Folded Reload
+ ld s8, 48(sp) # 8-byte Folded Reload
+ ld s9, 40(sp) # 8-byte Folded Reload
+ ld s10, 32(sp) # 8-byte Folded Reload
+ addi sp, sp, 128
ret
.LBB24_101: # %if.then
call abort
diff --git a/output_rv64imafdc_lp64d_O2/loop-5.s b/output_rv64imafdc_lp64d_O2/loop-5.s
index 4c4398adfe..a5bdfb93ff 100644
--- a/output_rv64imafdc_lp64d_O2/loop-5.s
+++ b/output_rv64imafdc_lp64d_O2/loop-5.s
@@ -9,15 +9,16 @@ main: # @main
# %bb.0: # %entry
addi sp, sp, -16
sd ra, 8(sp) # 8-byte Folded Spill
- lui a3, %hi(t)
- lwu a2, %lo(t)(a3)
- sext.w a0, a2
+ lui a2, %hi(t)
+ lw a0, %lo(t)(a2)
li a1, 4
bge a0, a1, .LBB0_9
# %bb.1: # %ap.exit.i
+ slli a1, a0, 32
+ srli a3, a1, 32
addiw a1, a0, 1
- sw a1, %lo(t)(a3)
- slli a2, a2, 2
+ sw a1, %lo(t)(a2)
+ slli a2, a3, 2
lui a3, %hi(a)
addi a3, a3, %lo(a)
add a2, a2, a3
diff --git a/output_rv64imafdc_lp64d_O2/pr53645.s b/output_rv64imafdc_lp64d_O2/pr53645.s
index 56bd435ece..7c352a0b5d 100644
--- a/output_rv64imafdc_lp64d_O2/pr53645.s
+++ b/output_rv64imafdc_lp64d_O2/pr53645.s
@@ -188,7 +188,7 @@ sq1428: # @sq1428
sr1428: # @sr1428
# %bb.0: # %entry
lw a2, 4(a1)
- lwu a3, 8(a1)
+ lw a3, 8(a1)
lw a1, 12(a1)
slli a4, a2, 1
srli a4, a4, 62
@@ -200,7 +200,7 @@ sr1428: # @sr1428
add a4, a4, a1
andi a4, a4, -8
subw a1, a1, a4
- srli a4, a3, 31
+ srliw a4, a3, 31
add a4, a4, a3
andi a4, a4, -2
subw a3, a3, a4
@@ -254,36 +254,44 @@ uq3333: # @uq3333
.type ur3333,@function
ur3333: # @ur3333
# %bb.0: # %entry
- lwu a2, 0(a1)
- lui a3, %hi(.LCPI9_0)
- ld a3, %lo(.LCPI9_0)(a3)
- lwu a6, 12(a1)
- lwu a5, 8(a1)
- lwu a1, 4(a1)
- mulhu a4, a2, a3
- srli a7, a4, 1
- andi a4, a4, -2
- addw a4, a4, a7
- subw a7, a2, a4
- mulhu a4, a1, a3
- srli a2, a4, 1
- andi a4, a4, -2
- addw a2, a2, a4
- subw a1, a1, a2
- mulhu a2, a5, a3
- srli a4, a2, 1
- andi a2, a2, -2
- addw a2, a2, a4
- subw a2, a5, a2
- mulhu a3, a6, a3
+ lw t0, 12(a1)
+ lw t1, 8(a1)
+ slli a4, t0, 32
+ lw a5, 4(a1)
+ srli a6, a4, 32
+ slli a4, t1, 32
+ srli a7, a4, 32
+ slli a4, a5, 32
+ lw a1, 0(a1)
+ lui a2, %hi(.LCPI9_0)
+ ld a2, %lo(.LCPI9_0)(a2)
+ srli t2, a4, 32
+ slli a3, a1, 32
+ srli a3, a3, 32
+ mulhu a3, a3, a2
srli a4, a3, 1
andi a3, a3, -2
addw a3, a3, a4
- subw a3, a6, a3
- sw a3, 12(a0)
- sw a2, 8(a0)
- sw a1, 4(a0)
- sw a7, 0(a0)
+ subw a1, a1, a3
+ mulhu a3, t2, a2
+ srli a4, a3, 1
+ andi a3, a3, -2
+ addw a3, a3, a4
+ subw a3, a5, a3
+ mulhu a4, a7, a2
+ srli a5, a4, 1
+ andi a4, a4, -2
+ addw a4, a4, a5
+ subw a4, t1, a4
+ mulhu a2, a6, a2
+ srli a5, a2, 1
+ andi a2, a2, -2
+ addw a2, a2, a5
+ subw a2, t0, a2
+ sw a2, 12(a0)
+ sw a4, 8(a0)
+ sw a3, 4(a0)
+ sw a1, 0(a0)
ret
.Lfunc_end9:
.size ur3333, .Lfunc_end9-ur3333
@@ -420,36 +428,44 @@ uq6565: # @uq6565
.type ur6565,@function
ur6565: # @ur6565
# %bb.0: # %entry
- lwu a2, 4(a1)
- lui a3, %hi(.LCPI13_0)
- ld a3, %lo(.LCPI13_0)(a3)
- lwu a6, 8(a1)
- lwu a7, 0(a1)
- lwu a1, 12(a1)
- mulhu a4, a2, a3
- srli a5, a4, 2
- andi a4, a4, -4
- addw a4, a4, a5
- subw a2, a2, a4
- mulhu a3, a1, a3
+ lw t0, 8(a1)
+ lw t1, 0(a1)
+ slli a4, t0, 32
+ lw a5, 12(a1)
+ srli a6, a4, 32
+ slli a4, t1, 32
+ srli a7, a4, 32
+ slli a4, a5, 32
+ lw a1, 4(a1)
+ lui a2, %hi(.LCPI13_0)
+ ld a2, %lo(.LCPI13_0)(a2)
+ srli t2, a4, 32
+ slli a3, a1, 32
+ srli a3, a3, 32
+ mulhu a3, a3, a2
srli a4, a3, 2
- lui a5, %hi(.LCPI13_1)
- ld a5, %lo(.LCPI13_1)(a5)
andi a3, a3, -4
addw a3, a3, a4
subw a1, a1, a3
- mulhu a3, a7, a5
+ mulhu a2, t2, a2
+ srli a3, a2, 2
+ lui a4, %hi(.LCPI13_1)
+ ld a4, %lo(.LCPI13_1)(a4)
+ andi a2, a2, -4
+ addw a2, a2, a3
+ subw a2, a5, a2
+ mulhu a3, a7, a4
srli a3, a3, 2
- li a4, 6
- mulw a3, a3, a4
- subw a3, a7, a3
- mulhu a5, a6, a5
- srli a5, a5, 2
- mulw a4, a5, a4
- subw a4, a6, a4
- sw a1, 12(a0)
+ li a5, 6
+ mulw a3, a3, a5
+ subw a3, t1, a3
+ mulhu a4, a6, a4
+ srli a4, a4, 2
+ mulw a4, a4, a5
+ subw a4, t0, a4
+ sw a2, 12(a0)
sw a4, 8(a0)
- sw a2, 4(a0)
+ sw a1, 4(a0)
sw a3, 0(a0)
ret
.Lfunc_end13:
@@ -592,48 +608,50 @@ uq1414146: # @uq1414146
.section .sdata,"aw",@progbits
.p2align 3 # -- Begin function ur1414146
.LCPI17_0:
- .quad 5270498306774157605 # 0x4924924924924925
-.LCPI17_1:
.quad -6148914691236517205 # 0xaaaaaaaaaaaaaaab
+.LCPI17_1:
+ .quad 5270498306774157605 # 0x4924924924924925
.text
.globl ur1414146
.p2align 1
.type ur1414146,@function
ur1414146: # @ur1414146
# %bb.0: # %entry
- lwu a6, 12(a1)
- lwu a3, 0(a1)
- lui a4, %hi(.LCPI17_0)
- ld a4, %lo(.LCPI17_0)(a4)
- lwu a5, 8(a1)
- lwu a1, 4(a1)
- srli a2, a3, 1
- mulhu a2, a2, a4
- srli a2, a2, 1
- li a7, 14
+ lw a6, 8(a1)
+ lw a3, 4(a1)
+ lw a4, 12(a1)
+ lui a5, %hi(.LCPI17_0)
+ ld a5, %lo(.LCPI17_0)(a5)
+ lw a1, 0(a1)
+ slli a2, a4, 32
+ srli a2, a2, 32
+ mulhu a2, a2, a5
+ srli a2, a2, 2
+ li a7, 6
+ lui a5, %hi(.LCPI17_1)
+ ld a5, %lo(.LCPI17_1)(a5)
mulw a2, a2, a7
- subw a2, a3, a2
- srli a3, a1, 1
- mulhu a3, a3, a4
- srli a3, a3, 1
- mulw a3, a3, a7
- subw a1, a1, a3
- srli a3, a5, 1
- mulhu a3, a3, a4
- lui a4, %hi(.LCPI17_1)
- ld a4, %lo(.LCPI17_1)(a4)
- srli a3, a3, 1
- mulw a3, a3, a7
- subw a3, a5, a3
- mulhu a4, a6, a4
- srli a4, a4, 2
- li a5, 6
- mulw a4, a4, a5
- subw a4, a6, a4
- sw a4, 12(a0)
- sw a3, 8(a0)
- sw a1, 4(a0)
- sw a2, 0(a0)
+ subw a7, a4, a2
+ srliw a4, a1, 1
+ mulhu a4, a4, a5
+ srli a4, a4, 1
+ li a2, 14
+ mulw a4, a4, a2
+ subw a1, a1, a4
+ srliw a4, a3, 1
+ mulhu a4, a4, a5
+ srli a4, a4, 1
+ mulw a4, a4, a2
+ subw a3, a3, a4
+ srliw a4, a6, 1
+ mulhu a4, a4, a5
+ srli a4, a4, 1
+ mulw a2, a4, a2
+ subw a2, a6, a2
+ sw a2, 8(a0)
+ sw a3, 4(a0)
+ sw a1, 0(a0)
+ sw a7, 12(a0)
ret
.Lfunc_end17:
.size ur1414146, .Lfunc_end17-ur1414146
@@ -788,48 +806,56 @@ uq7777: # @uq7777
.type ur7777,@function
ur7777: # @ur7777
# %bb.0: # %entry
- lwu a2, 0(a1)
- lui a3, %hi(.LCPI21_0)
- ld a3, %lo(.LCPI21_0)(a3)
- lwu a6, 12(a1)
- lwu a7, 8(a1)
- lwu a1, 4(a1)
- mulhu a4, a2, a3
- sub a5, a2, a4
- srli a5, a5, 1
- add a4, a4, a5
- srli a4, a4, 2
- slliw a5, a4, 3
- subw a4, a4, a5
- addw a2, a2, a4
- mulhu a4, a1, a3
- sub a5, a1, a4
+ lw a6, 12(a1)
+ lw a7, 8(a1)
+ slli a4, a6, 32
+ lw t2, 4(a1)
+ srli t0, a4, 32
+ slli a2, a7, 32
+ srli t1, a2, 32
+ slli a3, t2, 32
+ lw a1, 0(a1)
+ lui a4, %hi(.LCPI21_0)
+ ld a4, %lo(.LCPI21_0)(a4)
+ srli a3, a3, 32
+ slli a2, a1, 32
+ srli a2, a2, 32
+ mulhu a5, a2, a4
+ sub a2, a2, a5
+ srli a2, a2, 1
+ add a2, a2, a5
+ srli a2, a2, 2
+ slliw a5, a2, 3
+ subw a2, a2, a5
+ addw a1, a1, a2
+ mulhu a2, a3, a4
+ sub a3, a3, a2
+ srli a3, a3, 1
+ add a2, a2, a3
+ srli a2, a2, 2
+ slliw a3, a2, 3
+ subw a2, a2, a3
+ addw a2, t2, a2
+ mulhu a3, t1, a4
+ sub a5, t1, a3
srli a5, a5, 1
- add a4, a4, a5
- srli a4, a4, 2
- slliw a5, a4, 3
- subw a4, a4, a5
- addw a1, a1, a4
- mulhu a4, a7, a3
- sub a5, a7, a4
+ add a3, a3, a5
+ srli a3, a3, 2
+ slliw a5, a3, 3
+ subw a3, a3, a5
+ addw a3, a7, a3
+ mulhu a4, t0, a4
+ sub a5, t0, a4
srli a5, a5, 1
add a4, a4, a5
srli a4, a4, 2
slliw a5, a4, 3
subw a4, a4, a5
- addw a4, a7, a4
- mulhu a3, a6, a3
- sub a5, a6, a3
- srli a5, a5, 1
- add a3, a3, a5
- srli a3, a3, 2
- slliw a5, a3, 3
- subw a3, a3, a5
- addw a3, a6, a3
- sw a3, 12(a0)
- sw a4, 8(a0)
- sw a1, 4(a0)
- sw a2, 0(a0)
+ addw a4, a6, a4
+ sw a4, 12(a0)
+ sw a3, 8(a0)
+ sw a2, 4(a0)
+ sw a1, 0(a0)
ret
.Lfunc_end21:
.size ur7777, .Lfunc_end21-ur7777
@@ -931,43 +957,37 @@ sr7777: # @sr7777
.type main,@function
main: # @main
# %bb.0: # %entry
- addi sp, sp, -144
- sd ra, 136(sp) # 8-byte Folded Spill
- sd s0, 128(sp) # 8-byte Folded Spill
- sd s1, 120(sp) # 8-byte Folded Spill
- sd s2, 112(sp) # 8-byte Folded Spill
- sd s3, 104(sp) # 8-byte Folded Spill
- sd s4, 96(sp) # 8-byte Folded Spill
- sd s5, 88(sp) # 8-byte Folded Spill
- sd s6, 80(sp) # 8-byte Folded Spill
- sd s7, 72(sp) # 8-byte Folded Spill
- sd s8, 64(sp) # 8-byte Folded Spill
- sd s9, 56(sp) # 8-byte Folded Spill
- sd s10, 48(sp) # 8-byte Folded Spill
- sd s11, 40(sp) # 8-byte Folded Spill
+ addi sp, sp, -128
+ sd ra, 120(sp) # 8-byte Folded Spill
+ sd s0, 112(sp) # 8-byte Folded Spill
+ sd s1, 104(sp) # 8-byte Folded Spill
+ sd s2, 96(sp) # 8-byte Folded Spill
+ sd s3, 88(sp) # 8-byte Folded Spill
+ sd s4, 80(sp) # 8-byte Folded Spill
+ sd s5, 72(sp) # 8-byte Folded Spill
+ sd s6, 64(sp) # 8-byte Folded Spill
+ sd s7, 56(sp) # 8-byte Folded Spill
+ sd s8, 48(sp) # 8-byte Folded Spill
+ sd s9, 40(sp) # 8-byte Folded Spill
li a0, 0
li s3, 1
lui a1, %hi(u)
addi s2, a1, %lo(u)
- addi s1, sp, 16
- lui a1, 171
- addiw a1, a1, -1365
- slli a1, a1, 12
- addi s4, a1, -1365
+ addi s4, sp, 16
lui a1, 699051
addiw a1, a1, -1365
- slli s5, a1, 32
+ slli s1, a1, 32
lui a1, 838861
addiw a1, a1, -819
- slli s6, a1, 32
- li s7, 6
+ slli s5, a1, 32
+ li s6, 6
lui a1, 299593
slli a1, a1, 1
- addi s8, a1, 1171
- li s9, 14
+ addi s7, a1, 1171
+ li s8, 14
lui a1, 149797
- addiw s10, a1, -1755
- slli s11, s10, 32
+ addiw a1, a1, -1755
+ slli s9, a1, 32
.LBB24_1: # %for.body
# =>This Inner Loop Header: Depth=1
slli a0, a0, 4
@@ -975,9 +995,9 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq4444
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- srli a0, a0, 2
+ srliw a0, a0, 2
bne a1, a0, .LBB24_101
# %bb.2: # %lor.lhs.false
# in Loop: Header=BB24_1 Depth=1
@@ -989,9 +1009,9 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a0, a0, 2
+ srliw a0, a0, 2
bne a1, a0, .LBB24_101
# %bb.4: # %lor.lhs.false19
# in Loop: Header=BB24_1 Depth=1
@@ -1006,7 +1026,7 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur4444
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
andi a0, a0, 3
bne a1, a0, .LBB24_101
@@ -1020,7 +1040,7 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
andi a0, a0, 3
bne a1, a0, .LBB24_101
@@ -1050,9 +1070,9 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a0, a0, 1
+ srliw a0, a0, 1
bne a1, a0, .LBB24_101
# %bb.12: # %lor.lhs.false90
# in Loop: Header=BB24_1 Depth=1
@@ -1079,7 +1099,7 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
andi a0, a0, 1
bne a1, a0, .LBB24_101
@@ -1096,9 +1116,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq3333
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.18: # %lor.lhs.false145
@@ -1106,16 +1127,17 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a0, a0, 32
- mulhu a0, a0, s5
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.19: # %if.end154
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.20: # %lor.lhs.false162
@@ -1123,7 +1145,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a0, a0, 32
- mulhu a0, a0, s5
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.21: # %if.end171
@@ -1133,9 +1155,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur3333
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1146,7 +1169,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s5
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1156,9 +1179,10 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1169,7 +1193,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s5
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1182,9 +1206,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq6565
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.26: # %lor.lhs.false217
@@ -1192,16 +1217,17 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a0, a0, 32
- mulhu a0, a0, s6
+ mulhu a0, a0, s5
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.27: # %if.end226
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.28: # %lor.lhs.false234
@@ -1209,7 +1235,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a0, a0, 32
- mulhu a0, a0, s6
+ mulhu a0, a0, s5
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.29: # %if.end243
@@ -1219,11 +1245,12 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur6565
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 34
- mulw a2, a2, s7
+ mulw a2, a2, s6
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.30: # %lor.lhs.false253
@@ -1231,7 +1258,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s6
+ mulhu a2, a2, s5
srli a2, a2, 34
slliw a3, a2, 2
addw a2, a2, a3
@@ -1241,11 +1268,12 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 34
- mulw a2, a2, s7
+ mulw a2, a2, s6
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.32: # %lor.lhs.false270
@@ -1253,7 +1281,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s6
+ mulhu a2, a2, s5
srli a2, a2, 34
slliw a3, a2, 2
addw a2, a2, a3
@@ -1266,10 +1294,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq1414146
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- srli a0, a0, 1
- mul a0, a0, s8
+ srliw a0, a0, 1
+ mul a0, a0, s7
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.34: # %lor.lhs.false289
@@ -1277,17 +1305,17 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a0, a0, 32
- mulhu a0, a0, s5
+ mulhu a0, a0, s1
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.35: # %if.end298
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a0, a0, 1
- mul a0, a0, s8
+ srliw a0, a0, 1
+ mul a0, a0, s7
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.36: # %lor.lhs.false306
@@ -1295,7 +1323,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
srliw a0, a0, 1
- mul a0, a0, s8
+ mul a0, a0, s7
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.37: # %if.end315
@@ -1305,12 +1333,12 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur1414146
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- srli a2, a0, 1
- mul a2, a2, s8
+ srliw a2, a0, 1
+ mul a2, a2, s7
srli a2, a2, 34
- mulw a2, a2, s9
+ mulw a2, a2, s8
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.38: # %lor.lhs.false325
@@ -1318,21 +1346,21 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s5
+ mulhu a2, a2, s1
srli a2, a2, 34
- mulw a2, a2, s7
+ mulw a2, a2, s6
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.39: # %if.end334
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a2, a0, 1
- mul a2, a2, s8
+ srliw a2, a0, 1
+ mul a2, a2, s7
srli a2, a2, 34
- mulw a2, a2, s9
+ mulw a2, a2, s8
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.40: # %lor.lhs.false342
@@ -1340,9 +1368,9 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
srliw a2, a0, 1
- mul a2, a2, s8
+ mul a2, a2, s7
srli a2, a2, 34
- mulw a2, a2, s9
+ mulw a2, a2, s8
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.41: # %if.end351
@@ -1352,9 +1380,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq7777
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1366,7 +1395,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1377,9 +1406,10 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1391,7 +1421,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1405,9 +1435,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur7777
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1422,7 +1453,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1436,9 +1467,10 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1453,7 +1485,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1505,8 +1537,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 12(s0)
lw a1, 12(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
addw a0, a0, a2
sraiw a0, a0, 2
bne a1, a0, .LBB24_101
@@ -1525,8 +1557,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
addw a0, a0, a2
sraiw a0, a0, 2
bne a1, a0, .LBB24_101
@@ -1549,8 +1581,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 12(s0)
lw a1, 12(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
add a2, a2, a0
andi a2, a2, -4
subw a0, a0, a2
@@ -1571,8 +1603,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
add a2, a2, a0
andi a2, a2, -4
subw a0, a0, a2
@@ -1591,8 +1623,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 12(s0)
lw a1, 12(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 29
+ slli a2, a0, 1
+ srli a2, a2, 61
addw a0, a0, a2
sraiw a0, a0, 3
bne a1, a0, .LBB24_101
@@ -1600,9 +1632,9 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 8(sp)
- srli a2, a0, 31
+ srliw a2, a0, 31
addw a0, a0, a2
sraiw a0, a0, 1
bne a1, a0, .LBB24_101
@@ -1610,8 +1642,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
addw a0, a0, a2
sraiw a0, a0, 2
bne a1, a0, .LBB24_101
@@ -1638,9 +1670,9 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 8(sp)
- srli a2, a0, 31
+ srliw a2, a0, 31
add a2, a2, a0
andi a2, a2, -2
subw a0, a0, a2
@@ -1649,8 +1681,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
add a2, a2, a0
andi a2, a2, -4
subw a0, a0, a2
@@ -2079,20 +2111,18 @@ main: # @main
bnez a1, .LBB24_51
# %bb.100: # %for.end863
li a0, 0
- ld ra, 136(sp) # 8-byte Folded Reload
- ld s0, 128(sp) # 8-byte Folded Reload
- ld s1, 120(sp) # 8-byte Folded Reload
- ld s2, 112(sp) # 8-byte Folded Reload
- ld s3, 104(sp) # 8-byte Folded Reload
- ld s4, 96(sp) # 8-byte Folded Reload
- ld s5, 88(sp) # 8-byte Folded Reload
- ld s6, 80(sp) # 8-byte Folded Reload
- ld s7, 72(sp) # 8-byte Folded Reload
- ld s8, 64(sp) # 8-byte Folded Reload
- ld s9, 56(sp) # 8-byte Folded Reload
- ld s10, 48(sp) # 8-byte Folded Reload
- ld s11, 40(sp) # 8-byte Folded Reload
- addi sp, sp, 144
+ ld ra, 120(sp) # 8-byte Folded Reload
+ ld s0, 112(sp) # 8-byte Folded Reload
+ ld s1, 104(sp) # 8-byte Folded Reload
+ ld s2, 96(sp) # 8-byte Folded Reload
+ ld s3, 88(sp) # 8-byte Folded Reload
+ ld s4, 80(sp) # 8-byte Folded Reload
+ ld s5, 72(sp) # 8-byte Folded Reload
+ ld s6, 64(sp) # 8-byte Folded Reload
+ ld s7, 56(sp) # 8-byte Folded Reload
+ ld s8, 48(sp) # 8-byte Folded Reload
+ ld s9, 40(sp) # 8-byte Folded Reload
+ addi sp, sp, 128
ret
.LBB24_101: # %if.then
call abort
diff --git a/output_rv64imafdc_lp64d_O3/loop-5.s b/output_rv64imafdc_lp64d_O3/loop-5.s
index 4c4398adfe..a5bdfb93ff 100644
--- a/output_rv64imafdc_lp64d_O3/loop-5.s
+++ b/output_rv64imafdc_lp64d_O3/loop-5.s
@@ -9,15 +9,16 @@ main: # @main
# %bb.0: # %entry
addi sp, sp, -16
sd ra, 8(sp) # 8-byte Folded Spill
- lui a3, %hi(t)
- lwu a2, %lo(t)(a3)
- sext.w a0, a2
+ lui a2, %hi(t)
+ lw a0, %lo(t)(a2)
li a1, 4
bge a0, a1, .LBB0_9
# %bb.1: # %ap.exit.i
+ slli a1, a0, 32
+ srli a3, a1, 32
addiw a1, a0, 1
- sw a1, %lo(t)(a3)
- slli a2, a2, 2
+ sw a1, %lo(t)(a2)
+ slli a2, a3, 2
lui a3, %hi(a)
addi a3, a3, %lo(a)
add a2, a2, a3
diff --git a/output_rv64imafdc_lp64d_O3/memset-2.s b/output_rv64imafdc_lp64d_O3/memset-2.s
index 237b5e0438..554afa02bd 100644
--- a/output_rv64imafdc_lp64d_O3/memset-2.s
+++ b/output_rv64imafdc_lp64d_O3/memset-2.s
@@ -16,14 +16,12 @@ reset: # @reset
addi a1, a0, %lo(u)
li a2, 97
sb a2, 30(a1)
- lui a2, 6
- addiw a2, a2, 353
- sh a2, 28(a1)
lui a2, %hi(.LCPI0_0)
ld a2, %lo(.LCPI0_0)(a2)
- lui a3, 398870
+ lui a3, 6
addiw a3, a3, 353
- sw a3, 24(a1)
+ sh a3, 28(a1)
+ sw a2, 24(a1)
sd a2, 16(a1)
sd a2, %lo(u+8)(a0)
sd a2, %lo(u)(a0)
@@ -136,38 +134,36 @@ check: # @check
.type main,@function
main: # @main
# %bb.0: # %entry
- addi sp, sp, -176
- sd ra, 168(sp) # 8-byte Folded Spill
- sd s0, 160(sp) # 8-byte Folded Spill
- sd s1, 152(sp) # 8-byte Folded Spill
- sd s2, 144(sp) # 8-byte Folded Spill
- sd s3, 136(sp) # 8-byte Folded Spill
- sd s4, 128(sp) # 8-byte Folded Spill
- sd s5, 120(sp) # 8-byte Folded Spill
- sd s6, 112(sp) # 8-byte Folded Spill
- sd s7, 104(sp) # 8-byte Folded Spill
- sd s8, 96(sp) # 8-byte Folded Spill
- sd s9, 88(sp) # 8-byte Folded Spill
- sd s10, 80(sp) # 8-byte Folded Spill
- sd s11, 72(sp) # 8-byte Folded Spill
+ addi sp, sp, -192
+ sd ra, 184(sp) # 8-byte Folded Spill
+ sd s0, 176(sp) # 8-byte Folded Spill
+ sd s1, 168(sp) # 8-byte Folded Spill
+ sd s2, 160(sp) # 8-byte Folded Spill
+ sd s3, 152(sp) # 8-byte Folded Spill
+ sd s4, 144(sp) # 8-byte Folded Spill
+ sd s5, 136(sp) # 8-byte Folded Spill
+ sd s6, 128(sp) # 8-byte Folded Spill
+ sd s7, 120(sp) # 8-byte Folded Spill
+ sd s8, 112(sp) # 8-byte Folded Spill
+ sd s9, 104(sp) # 8-byte Folded Spill
+ sd s10, 96(sp) # 8-byte Folded Spill
+ sd s11, 88(sp) # 8-byte Folded Spill
lui a0, %hi(.LCPI2_0)
- ld s11, %lo(.LCPI2_0)(a0)
- li a0, -1
- srli a0, a0, 32
- sd a0, 64(sp) # 8-byte Folded Spill
+ ld s10, %lo(.LCPI2_0)(a0)
+ li s9, -1
+ srli a0, s9, 32
+ sd a0, 80(sp) # 8-byte Folded Spill
lui s1, %hi(u)
- sd s11, %lo(u)(s1)
- addi s9, s1, %lo(u)
+ sd s10, %lo(u)(s1)
+ addi s8, s1, %lo(u)
li s0, 97
- sb s0, 30(s9)
+ sb s0, 30(s8)
lui a0, 6
addiw s4, a0, 353
- sh s4, 28(s9)
- lui a0, 398870
- addiw s2, a0, 353
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u)(s1)
li a1, 1
li a0, 0
@@ -175,10 +171,11 @@ main: # @main
call check
lui a0, %hi(A)
lb a0, %lo(A)(a0)
- lui s6, %hi(A)
+ lui s2, %hi(A)
sb a0, %lo(u)(s1)
li a1, 1
li a2, 65
+ li s11, 65
li a0, 0
call check
li s3, 66
@@ -187,20 +184,21 @@ main: # @main
li a2, 66
li a0, 0
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+1)(s1)
- addi a0, s9, 1
- sd a0, 32(sp) # 8-byte Folded Spill
+ addi a0, s8, 1
+ sd a0, 24(sp) # 8-byte Folded Spill
li a0, 1
li a1, 1
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+1)(s1)
li a0, 1
li a1, 1
@@ -211,18 +209,19 @@ main: # @main
li a1, 1
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+2)(s1)
li a0, 2
li a1, 1
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+2)(s1)
li a0, 2
li a1, 1
@@ -233,20 +232,21 @@ main: # @main
li a1, 1
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+3)(s1)
- addi a0, s9, 3
- sd a0, 40(sp) # 8-byte Folded Spill
+ addi a0, s8, 3
+ sd a0, 48(sp) # 8-byte Folded Spill
li a0, 3
li a1, 1
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+3)(s1)
li a0, 3
li a1, 1
@@ -257,18 +257,19 @@ main: # @main
li a1, 1
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+4)(s1)
li a0, 4
li a1, 1
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+4)(s1)
li a0, 4
li a1, 1
@@ -279,20 +280,21 @@ main: # @main
li a1, 1
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+5)(s1)
- addi a0, s9, 5
- sd a0, 48(sp) # 8-byte Folded Spill
+ addi a0, s8, 5
+ sd a0, 56(sp) # 8-byte Folded Spill
li a0, 5
li a1, 1
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+5)(s1)
li a0, 5
li a1, 1
@@ -303,18 +305,19 @@ main: # @main
li a1, 1
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+6)(s1)
li a0, 6
li a1, 1
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+6)(s1)
li a0, 6
li a1, 1
@@ -325,20 +328,21 @@ main: # @main
li a1, 1
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+7)(s1)
- addi a0, s9, 7
- sd a0, 56(sp) # 8-byte Folded Spill
+ addi a0, s8, 7
+ sd a0, 64(sp) # 8-byte Folded Spill
li a0, 7
li a1, 1
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+7)(s1)
li a0, 7
li a1, 1
@@ -349,18 +353,19 @@ main: # @main
li a1, 1
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sh zero, %lo(u)(s1)
li a1, 2
li a0, 0
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
+ lui s2, %hi(A)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u)(s1)
@@ -375,19 +380,20 @@ main: # @main
li a2, 66
li a0, 0
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+2)(s1)
sb zero, %lo(u+1)(s1)
li a0, 1
li a1, 2
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+1)(s1)
sb a0, %lo(u+2)(s1)
li a0, 1
@@ -400,18 +406,19 @@ main: # @main
li a1, 2
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sh zero, %lo(u+2)(s1)
li a0, 2
li a1, 2
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
+ lui s2, %hi(A)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+2)(s1)
@@ -424,19 +431,20 @@ main: # @main
li a1, 2
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+4)(s1)
sb zero, %lo(u+3)(s1)
li a0, 3
li a1, 2
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+3)(s1)
sb a0, %lo(u+4)(s1)
li a0, 3
@@ -449,18 +457,19 @@ main: # @main
li a1, 2
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sh zero, %lo(u+4)(s1)
li a0, 4
li a1, 2
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
+ lui s2, %hi(A)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+4)(s1)
@@ -473,19 +482,20 @@ main: # @main
li a1, 2
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+6)(s1)
sb zero, %lo(u+5)(s1)
li a0, 5
li a1, 2
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+5)(s1)
sb a0, %lo(u+6)(s1)
li a0, 5
@@ -498,18 +508,19 @@ main: # @main
li a1, 2
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sh zero, %lo(u+6)(s1)
li a0, 6
li a1, 2
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
+ lui s2, %hi(A)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+6)(s1)
@@ -522,19 +533,20 @@ main: # @main
li a1, 2
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+7)(s1)
sb zero, %lo(u+8)(s1)
li a0, 7
li a1, 2
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+7)(s1)
sb a0, %lo(u+8)(s1)
li a0, 7
@@ -547,19 +559,20 @@ main: # @main
li a1, 2
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sh zero, %lo(u)(s1)
sb zero, %lo(u+2)(s1)
li a1, 3
li a0, 0
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+2)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -574,12 +587,12 @@ main: # @main
li a2, 66
li a0, 0
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+1)(s1)
sb zero, %lo(u+2)(s1)
sb zero, %lo(u+3)(s1)
@@ -587,7 +600,8 @@ main: # @main
li a1, 3
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+1)(s1)
sb a0, %lo(u+2)(s1)
sb a0, %lo(u+3)(s1)
@@ -602,19 +616,20 @@ main: # @main
li a1, 3
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sh zero, %lo(u+2)(s1)
sb zero, %lo(u+4)(s1)
li a0, 2
li a1, 3
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+4)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -629,12 +644,12 @@ main: # @main
li a1, 3
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+3)(s1)
sb zero, %lo(u+4)(s1)
sb zero, %lo(u+5)(s1)
@@ -642,7 +657,8 @@ main: # @main
li a1, 3
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+3)(s1)
sb a0, %lo(u+4)(s1)
sb a0, %lo(u+5)(s1)
@@ -657,19 +673,20 @@ main: # @main
li a1, 3
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sh zero, %lo(u+4)(s1)
sb zero, %lo(u+6)(s1)
li a0, 4
li a1, 3
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+6)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -684,12 +701,12 @@ main: # @main
li a1, 3
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+5)(s1)
sb zero, %lo(u+6)(s1)
sb zero, %lo(u+7)(s1)
@@ -697,7 +714,8 @@ main: # @main
li a1, 3
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+5)(s1)
sb a0, %lo(u+6)(s1)
sb a0, %lo(u+7)(s1)
@@ -712,19 +730,20 @@ main: # @main
li a1, 3
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+6)(s1)
sb zero, %lo(u+8)(s1)
li a0, 6
li a1, 3
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+8)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -739,12 +758,12 @@ main: # @main
li a1, 3
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+7)(s1)
sb zero, %lo(u+8)(s1)
sb zero, %lo(u+9)(s1)
@@ -752,7 +771,8 @@ main: # @main
li a1, 3
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+7)(s1)
sb a0, %lo(u+8)(s1)
sb a0, %lo(u+9)(s1)
@@ -767,22 +787,23 @@ main: # @main
li a1, 3
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sw zero, %lo(u)(s1)
li a1, 4
li a0, 0
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
+ lui s5, %hi(A)
lui a1, 4112
addiw a1, a1, 257
mulw a0, a0, a1
- mv s5, a1
+ mv s2, a1
sw a0, %lo(u)(s1)
li a1, 4
li a2, 65
@@ -791,17 +812,17 @@ main: # @main
lui a0, 271396
addiw a0, a0, 578
sw a0, %lo(u)(s1)
- mv s10, a0
+ mv s6, a0
li a1, 4
li a2, 66
li a0, 0
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+4)(s1)
sb zero, %lo(u+3)(s1)
sb zero, %lo(u+2)(s1)
@@ -810,7 +831,8 @@ main: # @main
li a1, 4
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+1)(s1)
sb a0, %lo(u+2)(s1)
sb a0, %lo(u+3)(s1)
@@ -827,19 +849,20 @@ main: # @main
li a1, 4
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sh zero, %lo(u+4)(s1)
sh zero, %lo(u+2)(s1)
li a0, 2
li a1, 4
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+2)(s1)
@@ -854,12 +877,12 @@ main: # @main
li a1, 4
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+6)(s1)
sb zero, %lo(u+5)(s1)
sb zero, %lo(u+4)(s1)
@@ -868,7 +891,8 @@ main: # @main
li a1, 4
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+3)(s1)
sb a0, %lo(u+4)(s1)
sb a0, %lo(u+5)(s1)
@@ -885,35 +909,36 @@ main: # @main
li a1, 4
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sw zero, %lo(u+4)(s1)
li a0, 4
li a1, 4
li a2, 0
call check
- lbu a0, %lo(A)(s6)
- mulw a0, a0, s5
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
+ mulw a0, a0, s2
sw a0, %lo(u+4)(s1)
li a0, 4
li a1, 4
li a2, 65
call check
- sw s10, %lo(u+4)(s1)
+ sw s6, %lo(u+4)(s1)
li a0, 4
li a1, 4
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+7)(s1)
sb zero, %lo(u+8)(s1)
sb zero, %lo(u+5)(s1)
@@ -922,7 +947,8 @@ main: # @main
li a1, 4
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+5)(s1)
sb a0, %lo(u+6)(s1)
sb a0, %lo(u+7)(s1)
@@ -939,19 +965,20 @@ main: # @main
li a1, 4
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+6)(s1)
sh zero, %lo(u+8)(s1)
li a0, 6
li a1, 4
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+6)(s1)
@@ -966,12 +993,12 @@ main: # @main
li a1, 4
li a2, 66
call check
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+9)(s1)
sb zero, %lo(u+10)(s1)
sb zero, %lo(u+7)(s1)
@@ -980,7 +1007,8 @@ main: # @main
li a1, 4
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+7)(s1)
sb a0, %lo(u+8)(s1)
sb a0, %lo(u+9)(s1)
@@ -997,38 +1025,39 @@ main: # @main
li a1, 4
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sw zero, %lo(u)(s1)
sb zero, %lo(u+4)(s1)
li a1, 5
li a0, 0
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+4)(s1)
- mulw a0, a0, s5
+ mulw a0, a0, s2
sw a0, %lo(u)(s1)
li a1, 5
li a2, 65
li a0, 0
call check
sb s3, %lo(u+4)(s1)
- sw s10, %lo(u)(s1)
+ sw s6, %lo(u)(s1)
li a1, 5
li a2, 66
li a0, 0
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+1)(s1)
sb zero, %lo(u+2)(s1)
sb zero, %lo(u+3)(s1)
@@ -1038,7 +1067,8 @@ main: # @main
li a1, 5
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+1)(s1)
sb a0, %lo(u+2)(s1)
sb a0, %lo(u+3)(s1)
@@ -1057,12 +1087,12 @@ main: # @main
li a1, 5
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sh zero, %lo(u+2)(s1)
sh zero, %lo(u+4)(s1)
sb zero, %lo(u+6)(s1)
@@ -1070,7 +1100,8 @@ main: # @main
li a1, 5
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+6)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -1087,12 +1118,12 @@ main: # @main
li a1, 5
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+3)(s1)
sb zero, %lo(u+4)(s1)
sb zero, %lo(u+5)(s1)
@@ -1102,7 +1133,8 @@ main: # @main
li a1, 5
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+3)(s1)
sb a0, %lo(u+4)(s1)
sb a0, %lo(u+5)(s1)
@@ -1121,38 +1153,39 @@ main: # @main
li a1, 5
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sw zero, %lo(u+4)(s1)
sb zero, %lo(u+8)(s1)
li a0, 4
li a1, 5
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+8)(s1)
- mulw a0, a0, s5
+ mulw a0, a0, s2
sw a0, %lo(u+4)(s1)
li a0, 4
li a1, 5
li a2, 65
call check
sb s3, %lo(u+8)(s1)
- sw s10, %lo(u+4)(s1)
+ sw s6, %lo(u+4)(s1)
li a0, 4
li a1, 5
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+5)(s1)
sb zero, %lo(u+6)(s1)
sb zero, %lo(u+7)(s1)
@@ -1162,7 +1195,8 @@ main: # @main
li a1, 5
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+5)(s1)
sb a0, %lo(u+6)(s1)
sb a0, %lo(u+7)(s1)
@@ -1181,12 +1215,12 @@ main: # @main
li a1, 5
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+6)(s1)
sh zero, %lo(u+8)(s1)
sb zero, %lo(u+10)(s1)
@@ -1194,7 +1228,8 @@ main: # @main
li a1, 5
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+10)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -1211,12 +1246,12 @@ main: # @main
li a1, 5
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+7)(s1)
sb zero, %lo(u+8)(s1)
sb zero, %lo(u+9)(s1)
@@ -1226,7 +1261,8 @@ main: # @main
li a1, 5
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+7)(s1)
sb a0, %lo(u+8)(s1)
sb a0, %lo(u+9)(s1)
@@ -1245,20 +1281,21 @@ main: # @main
li a1, 5
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sw zero, %lo(u)(s1)
sh zero, %lo(u+4)(s1)
li a1, 6
li a0, 0
li a2, 0
call check
- lbu a0, %lo(A)(s6)
- mulw a1, a0, s5
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
+ mulw a1, a0, s2
sw a1, %lo(u)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -1268,17 +1305,17 @@ main: # @main
li a0, 0
call check
sh s7, %lo(u+4)(s1)
- sw s10, %lo(u)(s1)
+ sw s6, %lo(u)(s1)
li a1, 6
li a2, 66
li a0, 0
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+1)(s1)
sb zero, %lo(u+2)(s1)
sb zero, %lo(u+3)(s1)
@@ -1289,7 +1326,8 @@ main: # @main
li a1, 6
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+1)(s1)
sb a0, %lo(u+2)(s1)
sb a0, %lo(u+3)(s1)
@@ -1310,12 +1348,12 @@ main: # @main
li a1, 6
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sh zero, %lo(u+2)(s1)
sh zero, %lo(u+4)(s1)
sh zero, %lo(u+6)(s1)
@@ -1323,7 +1361,8 @@ main: # @main
li a1, 6
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+2)(s1)
@@ -1340,12 +1379,12 @@ main: # @main
li a1, 6
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+3)(s1)
sb zero, %lo(u+4)(s1)
sb zero, %lo(u+5)(s1)
@@ -1356,7 +1395,8 @@ main: # @main
li a1, 6
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+3)(s1)
sb a0, %lo(u+4)(s1)
sb a0, %lo(u+5)(s1)
@@ -1377,20 +1417,21 @@ main: # @main
li a1, 6
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sw zero, %lo(u+4)(s1)
sh zero, %lo(u+8)(s1)
li a0, 4
li a1, 6
li a2, 0
call check
- lbu a0, %lo(A)(s6)
- mulw a1, a0, s5
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
+ mulw a1, a0, s2
sw a1, %lo(u+4)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -1400,17 +1441,17 @@ main: # @main
li a2, 65
call check
sh s7, %lo(u+8)(s1)
- sw s10, %lo(u+4)(s1)
+ sw s6, %lo(u+4)(s1)
li a0, 4
li a1, 6
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+5)(s1)
sb zero, %lo(u+6)(s1)
sb zero, %lo(u+7)(s1)
@@ -1421,7 +1462,8 @@ main: # @main
li a1, 6
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+5)(s1)
sb a0, %lo(u+6)(s1)
sb a0, %lo(u+7)(s1)
@@ -1442,12 +1484,12 @@ main: # @main
li a1, 6
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+6)(s1)
sh zero, %lo(u+8)(s1)
sh zero, %lo(u+10)(s1)
@@ -1455,7 +1497,8 @@ main: # @main
li a1, 6
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+6)(s1)
@@ -1472,12 +1515,12 @@ main: # @main
li a1, 6
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+7)(s1)
sb zero, %lo(u+8)(s1)
sb zero, %lo(u+9)(s1)
@@ -1488,7 +1531,8 @@ main: # @main
li a1, 6
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+7)(s1)
sb a0, %lo(u+8)(s1)
sb a0, %lo(u+9)(s1)
@@ -1509,12 +1553,12 @@ main: # @main
li a1, 6
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sw zero, %lo(u)(s1)
sh zero, %lo(u+4)(s1)
sb zero, %lo(u+6)(s1)
@@ -1522,10 +1566,11 @@ main: # @main
li a0, 0
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+6)(s1)
- mulw a1, a0, s5
- sd s5, 24(sp) # 8-byte Folded Spill
+ mulw a1, a0, s2
+ sd s2, 72(sp) # 8-byte Folded Spill
sw a1, %lo(u)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -1536,18 +1581,18 @@ main: # @main
call check
sb s3, %lo(u+6)(s1)
sh s7, %lo(u+4)(s1)
- sw s10, %lo(u)(s1)
- sd s10, 8(sp) # 8-byte Folded Spill
+ sw s6, %lo(u)(s1)
+ sd s6, 32(sp) # 8-byte Folded Spill
li a1, 7
li a2, 66
li a0, 0
call check
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sb zero, %lo(u+1)(s1)
sb zero, %lo(u+2)(s1)
sb zero, %lo(u+3)(s1)
@@ -1559,7 +1604,8 @@ main: # @main
li a1, 7
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+1)(s1)
sb a0, %lo(u+2)(s1)
sb a0, %lo(u+3)(s1)
@@ -1582,12 +1628,12 @@ main: # @main
li a1, 7
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+2)(s1)
sh zero, %lo(u+4)(s1)
sh zero, %lo(u+6)(s1)
@@ -1596,7 +1642,8 @@ main: # @main
li a1, 7
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+8)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -1615,12 +1662,12 @@ main: # @main
li a1, 7
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+3)(s1)
sb zero, %lo(u+4)(s1)
sb zero, %lo(u+5)(s1)
@@ -1632,7 +1679,8 @@ main: # @main
li a1, 7
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+3)(s1)
sb a0, %lo(u+4)(s1)
sb a0, %lo(u+5)(s1)
@@ -1655,12 +1703,12 @@ main: # @main
li a1, 7
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sw zero, %lo(u+4)(s1)
sh zero, %lo(u+8)(s1)
sb zero, %lo(u+10)(s1)
@@ -1668,9 +1716,10 @@ main: # @main
li a1, 7
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+10)(s1)
- mulw a1, a0, s5
+ mulw a1, a0, s2
sw a1, %lo(u+4)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -1681,17 +1730,17 @@ main: # @main
call check
sb s3, %lo(u+10)(s1)
sh s7, %lo(u+8)(s1)
- sw s10, %lo(u+4)(s1)
+ sw s6, %lo(u+4)(s1)
li a0, 4
li a1, 7
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+5)(s1)
sb zero, %lo(u+6)(s1)
sb zero, %lo(u+7)(s1)
@@ -1703,7 +1752,8 @@ main: # @main
li a1, 7
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s5)
+ lui s2, %hi(A)
sb a0, %lo(u+5)(s1)
sb a0, %lo(u+6)(s1)
sb a0, %lo(u+7)(s1)
@@ -1726,12 +1776,12 @@ main: # @main
li a1, 7
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+6)(s1)
sh zero, %lo(u+8)(s1)
sh zero, %lo(u+10)(s1)
@@ -1740,7 +1790,7 @@ main: # @main
li a1, 7
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
sb a0, %lo(u+12)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -1759,12 +1809,12 @@ main: # @main
li a1, 7
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+7)(s1)
sb zero, %lo(u+8)(s1)
sb zero, %lo(u+9)(s1)
@@ -1776,7 +1826,7 @@ main: # @main
li a1, 7
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
sb a0, %lo(u+7)(s1)
sb a0, %lo(u+8)(s1)
sb a0, %lo(u+9)(s1)
@@ -1799,20 +1849,20 @@ main: # @main
li a1, 7
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
sd zero, %lo(u)(s1)
li a1, 8
li a0, 0
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
lui a1, %hi(.LCPI2_1)
ld a1, %lo(.LCPI2_1)(a1)
- sd a1, 16(sp) # 8-byte Folded Spill
+ sd a1, 40(sp) # 8-byte Folded Spill
mul a0, a0, a1
sd a0, %lo(u)(s1)
li a1, 8
@@ -1820,18 +1870,18 @@ main: # @main
li a0, 0
call check
lui a0, %hi(.LCPI2_2)
- ld s8, %lo(.LCPI2_2)(a0)
- sd s8, %lo(u)(s1)
+ ld s5, %lo(.LCPI2_2)(a0)
+ sd s5, %lo(u)(s1)
li a1, 8
li a2, 66
li a0, 0
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+7)(s1)
sb zero, %lo(u+8)(s1)
sb zero, %lo(u+5)(s1)
@@ -1844,7 +1894,7 @@ main: # @main
li a1, 8
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
sb a0, %lo(u+1)(s1)
sb a0, %lo(u+2)(s1)
sb a0, %lo(u+3)(s1)
@@ -1861,24 +1911,25 @@ main: # @main
sb s3, %lo(u+7)(s1)
sb s3, %lo(u+6)(s1)
lui a0, %hi(.LCPI2_3)
- ld s10, %lo(.LCPI2_3)(a0)
+ ld s6, %lo(.LCPI2_3)(a0)
lui a0, %hi(.LCPI2_4)
- ld s5, %lo(.LCPI2_4)(a0)
+ ld a0, %lo(.LCPI2_4)(a0)
+ sd a0, 8(sp) # 8-byte Folded Spill
sb s3, %lo(u+5)(s1)
sb s3, %lo(u+4)(s1)
- sb s10, %lo(u+3)(s1)
- sb s5, %lo(u+2)(s1)
- sb s8, %lo(u+1)(s1)
+ sb s6, %lo(u+3)(s1)
+ sb a0, %lo(u+2)(s1)
+ sb s5, %lo(u+1)(s1)
li a0, 1
li a1, 8
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+6)(s1)
sh zero, %lo(u+8)(s1)
sh zero, %lo(u+2)(s1)
@@ -1887,7 +1938,7 @@ main: # @main
li a1, 8
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+2)(s1)
@@ -1900,18 +1951,18 @@ main: # @main
call check
sh s7, %lo(u+8)(s1)
sh s7, %lo(u+6)(s1)
- sh s10, %lo(u+4)(s1)
- sh s8, %lo(u+2)(s1)
+ sh s6, %lo(u+4)(s1)
+ sh s5, %lo(u+2)(s1)
li a0, 2
li a1, 8
li a2, 66
call check
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+9)(s1)
sb zero, %lo(u+10)(s1)
sb zero, %lo(u+7)(s1)
@@ -1924,7 +1975,8 @@ main: # @main
li a1, 8
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lui a0, %hi(A)
+ lb a0, %lo(A)(a0)
sb a0, %lo(u+3)(s1)
sb a0, %lo(u+4)(s1)
sb a0, %lo(u+5)(s1)
@@ -1942,27 +1994,29 @@ main: # @main
sb s3, %lo(u+8)(s1)
sb s3, %lo(u+7)(s1)
sb s3, %lo(u+6)(s1)
- sb s10, %lo(u+5)(s1)
- sb s5, %lo(u+4)(s1)
- sb s8, %lo(u+3)(s1)
+ sb s6, %lo(u+5)(s1)
+ ld s2, 8(sp) # 8-byte Folded Reload
+ sb s2, %lo(u+4)(s1)
+ sb s5, %lo(u+3)(s1)
li a0, 3
li a1, 8
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sw zero, %lo(u+4)(s1)
sw zero, %lo(u+8)(s1)
li a0, 4
li a1, 8
li a2, 0
call check
- lbu a0, %lo(A)(s6)
- ld a1, 24(sp) # 8-byte Folded Reload
+ lui a0, %hi(A)
+ lbu a0, %lo(A)(a0)
+ ld a1, 72(sp) # 8-byte Folded Reload
mulw a0, a0, a1
sw a0, %lo(u+4)(s1)
sw a0, %lo(u+8)(s1)
@@ -1970,19 +2024,19 @@ main: # @main
li a1, 8
li a2, 65
call check
- ld a0, 8(sp) # 8-byte Folded Reload
+ ld a0, 32(sp) # 8-byte Folded Reload
sw a0, %lo(u+8)(s1)
- sw s8, %lo(u+4)(s1)
+ sw s5, %lo(u+4)(s1)
li a0, 4
li a1, 8
li a2, 66
call check
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+11)(s1)
sb zero, %lo(u+12)(s1)
sb zero, %lo(u+9)(s1)
@@ -1995,7 +2049,8 @@ main: # @main
li a1, 8
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lui a0, %hi(A)
+ lb a0, %lo(A)(a0)
sb a0, %lo(u+5)(s1)
sb a0, %lo(u+6)(s1)
sb a0, %lo(u+7)(s1)
@@ -2013,19 +2068,19 @@ main: # @main
sb s3, %lo(u+10)(s1)
sb s3, %lo(u+9)(s1)
sb s3, %lo(u+8)(s1)
- sb s10, %lo(u+7)(s1)
- sb s5, %lo(u+6)(s1)
- sb s8, %lo(u+5)(s1)
+ sb s6, %lo(u+7)(s1)
+ sb s2, %lo(u+6)(s1)
+ sb s5, %lo(u+5)(s1)
li a0, 5
li a1, 8
li a2, 66
call check
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+10)(s1)
sh zero, %lo(u+12)(s1)
sh zero, %lo(u+6)(s1)
@@ -2034,7 +2089,8 @@ main: # @main
li a1, 8
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lui s2, %hi(A)
+ lbu a0, %lo(A)(s2)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+6)(s1)
@@ -2047,18 +2103,18 @@ main: # @main
call check
sh s7, %lo(u+12)(s1)
sh s7, %lo(u+10)(s1)
- sh s10, %lo(u+8)(s1)
- sh s8, %lo(u+6)(s1)
+ sh s6, %lo(u+8)(s1)
+ sh s5, %lo(u+6)(s1)
li a0, 6
li a1, 8
li a2, 66
call check
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sb zero, %lo(u+13)(s1)
sb zero, %lo(u+14)(s1)
sb zero, %lo(u+11)(s1)
@@ -2071,7 +2127,8 @@ main: # @main
li a1, 8
li a2, 0
call check
- lb a0, %lo(A)(s6)
+ lb a0, %lo(A)(s2)
+ lui s2, %hi(A)
sb a0, %lo(u+7)(s1)
sb a0, %lo(u+8)(s1)
sb a0, %lo(u+9)(s1)
@@ -2089,28 +2146,29 @@ main: # @main
sb s3, %lo(u+12)(s1)
sb s3, %lo(u+11)(s1)
sb s3, %lo(u+10)(s1)
- sb s10, %lo(u+9)(s1)
- sb s5, %lo(u+8)(s1)
- sb s8, %lo(u+7)(s1)
- sd s8, 0(sp) # 8-byte Folded Spill
+ sb s6, %lo(u+9)(s1)
+ ld a0, 8(sp) # 8-byte Folded Reload
+ sb a0, %lo(u+8)(s1)
+ sb s5, %lo(u+7)(s1)
+ sd s5, 16(sp) # 8-byte Folded Spill
li a0, 7
li a1, 8
li a2, 66
call check
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sd zero, %lo(u)(s1)
sb zero, %lo(u+8)(s1)
li a1, 9
li a0, 0
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
sb a0, %lo(u+8)(s1)
- ld a1, 16(sp) # 8-byte Folded Reload
+ ld a1, 40(sp) # 8-byte Folded Reload
mul a0, a0, a1
sd a0, %lo(u)(s1)
li a1, 9
@@ -2118,29 +2176,30 @@ main: # @main
li a0, 0
call check
sb s3, %lo(u+8)(s1)
- sd s8, %lo(u)(s1)
+ sd s5, %lo(u)(s1)
li a1, 9
li a2, 66
li a0, 0
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 9
- ld s5, 32(sp) # 8-byte Folded Reload
- mv a0, s5
+ ld s2, 24(sp) # 8-byte Folded Reload
+ mv a0, s2
li a1, 0
call memset@plt
li a0, 1
li a1, 9
li a2, 0
call check
- lb a1, %lo(A)(s6)
+ lui s5, %hi(A)
+ lb a1, %lo(A)(s5)
li a2, 9
- mv a0, s5
+ mv a0, s2
call memset@plt
li a0, 1
li a1, 9
@@ -2148,18 +2207,18 @@ main: # @main
call check
li a1, 66
li a2, 9
- mv a0, s5
+ mv a0, s2
call memset@plt
li a0, 1
li a1, 9
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+2)(s1)
sh zero, %lo(u+4)(s1)
sh zero, %lo(u+6)(s1)
@@ -2169,7 +2228,8 @@ main: # @main
li a1, 9
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
+ lui s5, %hi(A)
sb a0, %lo(u+10)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -2190,24 +2250,24 @@ main: # @main
li a1, 9
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 9
- ld s8, 40(sp) # 8-byte Folded Reload
- mv a0, s8
+ ld s2, 48(sp) # 8-byte Folded Reload
+ mv a0, s2
li a1, 0
call memset@plt
li a0, 3
li a1, 9
li a2, 0
call check
- lb a1, %lo(A)(s6)
+ lb a1, %lo(A)(s5)
li a2, 9
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 3
li a1, 9
@@ -2215,18 +2275,18 @@ main: # @main
call check
li a1, 66
li a2, 9
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 3
li a1, 9
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sw zero, %lo(u+4)(s1)
sw zero, %lo(u+8)(s1)
sb zero, %lo(u+12)(s1)
@@ -2234,9 +2294,9 @@ main: # @main
li a1, 9
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
sb a0, %lo(u+12)(s1)
- ld a1, 24(sp) # 8-byte Folded Reload
+ ld a1, 72(sp) # 8-byte Folded Reload
mulw a0, a0, a1
sw a0, %lo(u+4)(s1)
sw a0, %lo(u+8)(s1)
@@ -2245,31 +2305,31 @@ main: # @main
li a2, 65
call check
sb s3, %lo(u+12)(s1)
- ld a0, 8(sp) # 8-byte Folded Reload
+ ld a0, 32(sp) # 8-byte Folded Reload
sw a0, %lo(u+8)(s1)
sw a0, %lo(u+4)(s1)
li a0, 4
li a1, 9
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 9
- ld s5, 48(sp) # 8-byte Folded Reload
- mv a0, s5
+ ld s2, 56(sp) # 8-byte Folded Reload
+ mv a0, s2
li a1, 0
call memset@plt
li a0, 5
li a1, 9
li a2, 0
call check
- lb a1, %lo(A)(s6)
+ lb a1, %lo(A)(s5)
li a2, 9
- mv a0, s5
+ mv a0, s2
call memset@plt
li a0, 5
li a1, 9
@@ -2277,18 +2337,18 @@ main: # @main
call check
li a1, 66
li a2, 9
- mv a0, s5
+ mv a0, s2
call memset@plt
li a0, 5
li a1, 9
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+6)(s1)
sh zero, %lo(u+8)(s1)
sh zero, %lo(u+10)(s1)
@@ -2298,7 +2358,8 @@ main: # @main
li a1, 9
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lui s2, %hi(A)
+ lbu a0, %lo(A)(s2)
sb a0, %lo(u+14)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -2319,24 +2380,25 @@ main: # @main
li a1, 9
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 9
- ld s10, 56(sp) # 8-byte Folded Reload
- mv a0, s10
+ ld s6, 64(sp) # 8-byte Folded Reload
+ mv a0, s6
li a1, 0
call memset@plt
li a0, 7
li a1, 9
li a2, 0
call check
- lb a1, %lo(A)(s6)
+ lb a1, %lo(A)(s2)
+ lui s5, %hi(A)
li a2, 9
- mv a0, s10
+ mv a0, s6
call memset@plt
li a0, 7
li a1, 9
@@ -2344,27 +2406,26 @@ main: # @main
call check
li a1, 66
li a2, 9
- mv a0, s10
+ mv a0, s6
call memset@plt
li a0, 7
li a1, 9
li a2, 66
call check
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sd zero, %lo(u)(s1)
sh zero, %lo(u+8)(s1)
li a1, 10
li a0, 0
li a2, 0
call check
- lui s6, %hi(A)
- lbu a0, %lo(A)(s6)
- ld s5, 16(sp) # 8-byte Folded Reload
- mul a1, a0, s5
+ lbu a0, %lo(A)(s5)
+ ld a1, 40(sp) # 8-byte Folded Reload
+ mul a1, a0, a1
sd a1, %lo(u)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -2374,31 +2435,30 @@ main: # @main
li a0, 0
call check
sh s7, %lo(u+8)(s1)
- ld a0, 0(sp) # 8-byte Folded Reload
+ ld a0, 16(sp) # 8-byte Folded Reload
sd a0, %lo(u)(s1)
li a1, 10
li a2, 66
li a0, 0
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 10
- ld s8, 32(sp) # 8-byte Folded Reload
- mv a0, s8
+ ld s6, 24(sp) # 8-byte Folded Reload
+ mv a0, s6
li a1, 0
call memset@plt
li a0, 1
li a1, 10
li a2, 0
call check
- lb a1, %lo(A)(s6)
- lui s6, %hi(A)
+ lb a1, %lo(A)(s5)
li a2, 10
- mv a0, s8
+ mv a0, s6
call memset@plt
li a0, 1
li a1, 10
@@ -2406,18 +2466,18 @@ main: # @main
call check
li a1, 66
li a2, 10
- mv a0, s8
+ mv a0, s6
call memset@plt
li a0, 1
li a1, 10
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+2)(s1)
sh zero, %lo(u+4)(s1)
sh zero, %lo(u+6)(s1)
@@ -2427,7 +2487,7 @@ main: # @main
li a1, 10
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+2)(s1)
@@ -2448,24 +2508,24 @@ main: # @main
li a1, 10
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 10
- ld s10, 40(sp) # 8-byte Folded Reload
- mv a0, s10
+ ld s6, 48(sp) # 8-byte Folded Reload
+ mv a0, s6
li a1, 0
call memset@plt
li a0, 3
li a1, 10
li a2, 0
call check
- lb a1, %lo(A)(s6)
+ lb a1, %lo(A)(s5)
li a2, 10
- mv a0, s10
+ mv a0, s6
call memset@plt
li a0, 3
li a1, 10
@@ -2473,18 +2533,18 @@ main: # @main
call check
li a1, 66
li a2, 10
- mv a0, s10
+ mv a0, s6
call memset@plt
li a0, 3
li a1, 10
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sw zero, %lo(u+4)(s1)
sw zero, %lo(u+8)(s1)
sh zero, %lo(u+12)(s1)
@@ -2492,8 +2552,8 @@ main: # @main
li a1, 10
li a2, 0
call check
- lbu a0, %lo(A)(s6)
- ld a1, 24(sp) # 8-byte Folded Reload
+ lbu a0, %lo(A)(s5)
+ ld a1, 72(sp) # 8-byte Folded Reload
mulw a1, a0, a1
sw a1, %lo(u+4)(s1)
sw a1, %lo(u+8)(s1)
@@ -2505,31 +2565,31 @@ main: # @main
li a2, 65
call check
sh s7, %lo(u+12)(s1)
- ld s10, 8(sp) # 8-byte Folded Reload
- sw s10, %lo(u+8)(s1)
- sw s10, %lo(u+4)(s1)
+ ld s6, 32(sp) # 8-byte Folded Reload
+ sw s6, %lo(u+8)(s1)
+ sw s6, %lo(u+4)(s1)
li a0, 4
li a1, 10
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 10
- ld s8, 48(sp) # 8-byte Folded Reload
- mv a0, s8
+ ld s2, 56(sp) # 8-byte Folded Reload
+ mv a0, s2
li a1, 0
call memset@plt
li a0, 5
li a1, 10
li a2, 0
call check
- lb a1, %lo(A)(s6)
+ lb a1, %lo(A)(s5)
li a2, 10
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 5
li a1, 10
@@ -2537,18 +2597,18 @@ main: # @main
call check
li a1, 66
li a2, 10
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 5
li a1, 10
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+6)(s1)
sh zero, %lo(u+8)(s1)
sh zero, %lo(u+10)(s1)
@@ -2558,7 +2618,7 @@ main: # @main
li a1, 10
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+6)(s1)
@@ -2579,24 +2639,24 @@ main: # @main
li a1, 10
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 10
- ld s8, 56(sp) # 8-byte Folded Reload
- mv a0, s8
+ ld s2, 64(sp) # 8-byte Folded Reload
+ mv a0, s2
li a1, 0
call memset@plt
li a0, 7
li a1, 10
li a2, 0
call check
- lb a1, %lo(A)(s6)
+ lb a1, %lo(A)(s5)
li a2, 10
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 7
li a1, 10
@@ -2604,17 +2664,17 @@ main: # @main
call check
li a1, 66
li a2, 10
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 7
li a1, 10
li a2, 66
call check
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sd zero, %lo(u)(s1)
sh zero, %lo(u+8)(s1)
sb zero, %lo(u+10)(s1)
@@ -2622,9 +2682,10 @@ main: # @main
li a0, 0
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
sb a0, %lo(u+10)(s1)
- mul a1, a0, s5
+ ld a1, 40(sp) # 8-byte Folded Reload
+ mul a1, a0, a1
sd a1, %lo(u)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -2635,30 +2696,30 @@ main: # @main
call check
sb s3, %lo(u+10)(s1)
sh s7, %lo(u+8)(s1)
- ld a0, 0(sp) # 8-byte Folded Reload
+ ld a0, 16(sp) # 8-byte Folded Reload
sd a0, %lo(u)(s1)
li a1, 11
li a2, 66
li a0, 0
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 11
- ld s5, 32(sp) # 8-byte Folded Reload
- mv a0, s5
+ ld s2, 24(sp) # 8-byte Folded Reload
+ mv a0, s2
li a1, 0
call memset@plt
li a0, 1
li a1, 11
li a2, 0
call check
- lb a1, %lo(A)(s6)
+ lb a1, %lo(A)(s5)
li a2, 11
- mv a0, s5
+ mv a0, s2
call memset@plt
li a0, 1
li a1, 11
@@ -2666,18 +2727,18 @@ main: # @main
call check
li a1, 66
li a2, 11
- mv a0, s5
+ mv a0, s2
call memset@plt
li a0, 1
li a1, 11
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+2)(s1)
sh zero, %lo(u+4)(s1)
sh zero, %lo(u+6)(s1)
@@ -2688,7 +2749,7 @@ main: # @main
li a1, 11
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
sb a0, %lo(u+12)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -2711,24 +2772,24 @@ main: # @main
li a1, 11
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 11
- ld s8, 40(sp) # 8-byte Folded Reload
- mv a0, s8
+ ld s2, 48(sp) # 8-byte Folded Reload
+ mv a0, s2
li a1, 0
call memset@plt
li a0, 3
li a1, 11
li a2, 0
call check
- lb a1, %lo(A)(s6)
+ lb a1, %lo(A)(s5)
li a2, 11
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 3
li a1, 11
@@ -2736,18 +2797,18 @@ main: # @main
call check
li a1, 66
li a2, 11
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 3
li a1, 11
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sw zero, %lo(u+4)(s1)
sw zero, %lo(u+8)(s1)
sh zero, %lo(u+12)(s1)
@@ -2756,10 +2817,10 @@ main: # @main
li a1, 11
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s5)
sb a0, %lo(u+14)(s1)
- ld s5, 24(sp) # 8-byte Folded Reload
- mulw a1, a0, s5
+ ld a1, 72(sp) # 8-byte Folded Reload
+ mulw a1, a0, a1
sw a1, %lo(u+4)(s1)
sw a1, %lo(u+8)(s1)
slli a1, a0, 8
@@ -2771,30 +2832,30 @@ main: # @main
call check
sb s3, %lo(u+14)(s1)
sh s7, %lo(u+12)(s1)
- sw s10, %lo(u+8)(s1)
- sw s10, %lo(u+4)(s1)
+ sw s6, %lo(u+8)(s1)
+ sw s6, %lo(u+4)(s1)
li a0, 4
li a1, 11
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 11
- ld s8, 48(sp) # 8-byte Folded Reload
- mv a0, s8
+ ld s2, 56(sp) # 8-byte Folded Reload
+ mv a0, s2
li a1, 0
call memset@plt
li a0, 5
li a1, 11
li a2, 0
call check
- lb a1, %lo(A)(s6)
+ lb a1, %lo(A)(s5)
li a2, 11
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 5
li a1, 11
@@ -2802,30 +2863,30 @@ main: # @main
call check
li a1, 66
li a2, 11
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 5
li a1, 11
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sd s11, 16(s9)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sd s10, 16(s8)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
sh zero, %lo(u+6)(s1)
sh zero, %lo(u+8)(s1)
sh zero, %lo(u+10)(s1)
sh zero, %lo(u+12)(s1)
sh zero, %lo(u+14)(s1)
- sb zero, 16(s9)
+ sb zero, 16(s8)
li a0, 6
li a1, 11
li a2, 0
call check
- lbu a0, %lo(A)(s6)
- sb a0, 16(s9)
+ lbu a0, %lo(A)(s5)
+ sb a0, 16(s8)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+6)(s1)
@@ -2837,7 +2898,7 @@ main: # @main
li a1, 11
li a2, 65
call check
- sb s3, 16(s9)
+ sb s3, 16(s8)
sh s7, %lo(u+14)(s1)
sh s7, %lo(u+12)(s1)
sh s7, %lo(u+10)(s1)
@@ -2847,24 +2908,24 @@ main: # @main
li a1, 11
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 11
- ld s8, 56(sp) # 8-byte Folded Reload
- mv a0, s8
+ ld s2, 64(sp) # 8-byte Folded Reload
+ mv a0, s2
li a1, 0
call memset@plt
li a0, 7
li a1, 11
li a2, 0
call check
- lb a1, %lo(A)(s6)
+ lb a1, %lo(A)(s5)
li a2, 11
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 7
li a1, 11
@@ -2872,60 +2933,59 @@ main: # @main
call check
li a1, 66
li a2, 11
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 7
li a1, 11
li a2, 66
call check
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sd zero, %lo(u)(s1)
sw zero, %lo(u+8)(s1)
li a1, 12
li a0, 0
li a2, 0
call check
- lui s8, %hi(A)
- lbu a0, %lo(A)(s8)
- ld a1, 16(sp) # 8-byte Folded Reload
- mul a1, a0, a1
- sd a1, %lo(u)(s1)
- mulw a0, a0, s5
+ lui s2, %hi(A)
+ lbu a0, %lo(A)(s2)
+ ld a1, 40(sp) # 8-byte Folded Reload
+ mul a0, a0, a1
+ sd a0, %lo(u)(s1)
sw a0, %lo(u+8)(s1)
li a1, 12
li a2, 65
li a0, 0
call check
- sw s10, %lo(u+8)(s1)
- ld a0, 0(sp) # 8-byte Folded Reload
+ ld a0, 16(sp) # 8-byte Folded Reload
+ sw a0, %lo(u+8)(s1)
sd a0, %lo(u)(s1)
li a1, 12
li a2, 66
li a0, 0
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 12
- ld s6, 32(sp) # 8-byte Folded Reload
- mv a0, s6
+ ld s5, 24(sp) # 8-byte Folded Reload
+ mv a0, s5
li a1, 0
call memset@plt
li a0, 1
li a1, 12
li a2, 0
call check
- lb a1, %lo(A)(s8)
- lui s10, %hi(A)
+ lb a1, %lo(A)(s2)
+ lui s6, %hi(A)
li a2, 12
- mv a0, s6
+ mv a0, s5
call memset@plt
li a0, 1
li a1, 12
@@ -2933,18 +2993,18 @@ main: # @main
call check
li a1, 66
li a2, 12
- mv a0, s6
+ mv a0, s5
call memset@plt
li a0, 1
li a1, 12
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+2)(s1)
sh zero, %lo(u+4)(s1)
sh zero, %lo(u+6)(s1)
@@ -2955,7 +3015,7 @@ main: # @main
li a1, 12
li a2, 0
call check
- lbu a0, %lo(A)(s10)
+ lbu a0, %lo(A)(s6)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+2)(s1)
@@ -2978,24 +3038,24 @@ main: # @main
li a1, 12
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 12
- ld s8, 40(sp) # 8-byte Folded Reload
- mv a0, s8
+ ld s2, 48(sp) # 8-byte Folded Reload
+ mv a0, s2
li a1, 0
call memset@plt
li a0, 3
li a1, 12
li a2, 0
call check
- lb a1, %lo(A)(s10)
+ lb a1, %lo(A)(s6)
li a2, 12
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 3
li a1, 12
@@ -3003,18 +3063,18 @@ main: # @main
call check
li a1, 66
li a2, 12
- mv a0, s8
+ mv a0, s2
call memset@plt
li a0, 3
li a1, 12
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sw zero, %lo(u+4)(s1)
sw zero, %lo(u+8)(s1)
sw zero, %lo(u+12)(s1)
@@ -3022,10 +3082,10 @@ main: # @main
li a1, 12
li a2, 0
call check
- lui s6, %hi(A)
- lbu a0, %lo(A)(s6)
- mulw a0, a0, s5
- mv s8, s5
+ lui s2, %hi(A)
+ lbu a0, %lo(A)(s2)
+ ld a1, 72(sp) # 8-byte Folded Reload
+ mulw a0, a0, a1
sw a0, %lo(u+4)(s1)
sw a0, %lo(u+8)(s1)
sw a0, %lo(u+12)(s1)
@@ -3033,33 +3093,33 @@ main: # @main
li a1, 12
li a2, 65
call check
- ld s10, 8(sp) # 8-byte Folded Reload
- sw s10, %lo(u+12)(s1)
- sw s10, %lo(u+8)(s1)
- sw s10, %lo(u+4)(s1)
+ ld a0, 32(sp) # 8-byte Folded Reload
+ sw a0, %lo(u+12)(s1)
+ sw a0, %lo(u+8)(s1)
+ sw a0, %lo(u+4)(s1)
li a0, 4
li a1, 12
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 12
- ld s5, 48(sp) # 8-byte Folded Reload
- mv a0, s5
+ ld s6, 56(sp) # 8-byte Folded Reload
+ mv a0, s6
li a1, 0
call memset@plt
li a0, 5
li a1, 12
li a2, 0
call check
- lb a1, %lo(A)(s6)
- lui s6, %hi(A)
+ lb a1, %lo(A)(s2)
+ lui s2, %hi(A)
li a2, 12
- mv a0, s5
+ mv a0, s6
call memset@plt
li a0, 5
li a1, 12
@@ -3067,29 +3127,29 @@ main: # @main
call check
li a1, 66
li a2, 12
- mv a0, s5
+ mv a0, s6
call memset@plt
li a0, 5
li a1, 12
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sd s11, 16(s9)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sd s10, 16(s8)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
sh zero, %lo(u+6)(s1)
sh zero, %lo(u+8)(s1)
sh zero, %lo(u+10)(s1)
sh zero, %lo(u+12)(s1)
sh zero, %lo(u+14)(s1)
- sh zero, 16(s9)
+ sh zero, 16(s8)
li a0, 6
li a1, 12
li a2, 0
call check
- lbu a0, %lo(A)(s6)
+ lbu a0, %lo(A)(s2)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+6)(s1)
@@ -3097,12 +3157,12 @@ main: # @main
sh a0, %lo(u+10)(s1)
sh a0, %lo(u+12)(s1)
sh a0, %lo(u+14)(s1)
- sh a0, 16(s9)
+ sh a0, 16(s8)
li a0, 6
li a1, 12
li a2, 65
call check
- sh s7, 16(s9)
+ sh s7, 16(s8)
sh s7, %lo(u+14)(s1)
sh s7, %lo(u+12)(s1)
sh s7, %lo(u+10)(s1)
@@ -3112,24 +3172,24 @@ main: # @main
li a1, 12
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 12
- ld s5, 56(sp) # 8-byte Folded Reload
- mv a0, s5
+ ld s6, 64(sp) # 8-byte Folded Reload
+ mv a0, s6
li a1, 0
call memset@plt
li a0, 7
li a1, 12
li a2, 0
call check
- lb a1, %lo(A)(s6)
+ lb a1, %lo(A)(s2)
li a2, 12
- mv a0, s5
+ mv a0, s6
call memset@plt
li a0, 7
li a1, 12
@@ -3137,17 +3197,17 @@ main: # @main
call check
li a1, 66
li a2, 12
- mv a0, s5
+ mv a0, s6
call memset@plt
li a0, 7
li a1, 12
li a2, 66
call check
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sd zero, %lo(u)(s1)
sw zero, %lo(u+8)(s1)
sb zero, %lo(u+12)(s1)
@@ -3155,45 +3215,43 @@ main: # @main
li a0, 0
li a2, 0
call check
- lui s5, %hi(A)
- lbu a0, %lo(A)(s5)
+ lui s6, %hi(A)
+ lbu a0, %lo(A)(s6)
sb a0, %lo(u+12)(s1)
- ld a1, 16(sp) # 8-byte Folded Reload
- mul a1, a0, a1
- sd a1, %lo(u)(s1)
- mulw a0, a0, s8
+ ld a1, 40(sp) # 8-byte Folded Reload
+ mul a0, a0, a1
+ sd a0, %lo(u)(s1)
sw a0, %lo(u+8)(s1)
li a1, 13
li a2, 65
li a0, 0
call check
sb s3, %lo(u+12)(s1)
- sw s10, %lo(u+8)(s1)
- ld a0, 0(sp) # 8-byte Folded Reload
+ ld a0, 16(sp) # 8-byte Folded Reload
+ sw a0, %lo(u+8)(s1)
sd a0, %lo(u)(s1)
li a1, 13
li a2, 66
li a0, 0
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 13
- ld s6, 32(sp) # 8-byte Folded Reload
- mv a0, s6
+ mv a0, s5
li a1, 0
call memset@plt
li a0, 1
li a1, 13
li a2, 0
call check
- lb a1, %lo(A)(s5)
- lui s8, %hi(A)
+ lb a1, %lo(A)(s6)
+ lui s6, %hi(A)
li a2, 13
- mv a0, s6
+ mv a0, s5
call memset@plt
li a0, 1
li a1, 13
@@ -3201,18 +3259,18 @@ main: # @main
call check
li a1, 66
li a2, 13
- mv a0, s6
+ mv a0, s5
call memset@plt
li a0, 1
li a1, 13
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
sh zero, %lo(u+2)(s1)
sh zero, %lo(u+4)(s1)
sh zero, %lo(u+6)(s1)
@@ -3224,7 +3282,7 @@ main: # @main
li a1, 13
li a2, 0
call check
- lbu a0, %lo(A)(s8)
+ lbu a0, %lo(A)(s6)
sb a0, %lo(u+14)(s1)
slli a1, a0, 8
or a0, a0, a1
@@ -3249,24 +3307,24 @@ main: # @main
li a1, 13
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 13
- ld s5, 40(sp) # 8-byte Folded Reload
- mv a0, s5
+ ld s2, 48(sp) # 8-byte Folded Reload
+ mv a0, s2
li a1, 0
call memset@plt
li a0, 3
li a1, 13
li a2, 0
call check
- lb a1, %lo(A)(s8)
+ lb a1, %lo(A)(s6)
li a2, 13
- mv a0, s5
+ mv a0, s2
call memset@plt
li a0, 3
li a1, 13
@@ -3274,29 +3332,29 @@ main: # @main
call check
li a1, 66
li a2, 13
- mv a0, s5
+ mv a0, s2
call memset@plt
li a0, 3
li a1, 13
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sd s11, 16(s9)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sd s10, 16(s8)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
sw zero, %lo(u+4)(s1)
sw zero, %lo(u+8)(s1)
sw zero, %lo(u+12)(s1)
- sb zero, 16(s9)
+ sb zero, 16(s8)
li a0, 4
li a1, 13
li a2, 0
call check
- lbu a0, %lo(A)(s8)
- sb a0, 16(s9)
- ld a1, 24(sp) # 8-byte Folded Reload
+ lbu a0, %lo(A)(s6)
+ sb a0, 16(s8)
+ ld a1, 72(sp) # 8-byte Folded Reload
mulw a0, a0, a1
sw a0, %lo(u+4)(s1)
sw a0, %lo(u+8)(s1)
@@ -3305,32 +3363,33 @@ main: # @main
li a1, 13
li a2, 65
call check
- sb s3, 16(s9)
- sw s10, %lo(u+12)(s1)
- sw s10, %lo(u+8)(s1)
- sw s10, %lo(u+4)(s1)
+ sb s3, 16(s8)
+ ld a0, 32(sp) # 8-byte Folded Reload
+ sw a0, %lo(u+12)(s1)
+ sw a0, %lo(u+8)(s1)
+ sw a0, %lo(u+4)(s1)
li a0, 4
li a1, 13
li a2, 66
call check
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- sd s11, %lo(u)(s1)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ sd s10, %lo(u)(s1)
li a2, 13
- ld s5, 48(sp) # 8-byte Folded Reload
- mv a0, s5
+ ld s2, 56(sp) # 8-byte Folded Reload
+ mv a0, s2
li a1, 0
call memset@plt
li a0, 5
li a1, 13
li a2, 0
call check
- lb a1, %lo(A)(s8)
+ lb a1, %lo(A)(s6)
li a2, 13
- mv a0, s5
+ mv a0, s2
call memset@plt
li a0, 5
li a1, 13
@@ -3338,31 +3397,31 @@ main: # @main
call check
li a1, 66
li a2, 13
- mv a0, s5
+ mv a0, s2
call memset@plt
li a0, 5
li a1, 13
li a2, 66
call check
- sd s11, %lo(u)(s1)
- sd s11, %lo(u+8)(s1)
- sd s11, 16(s9)
- sb s0, 30(s9)
- sh s4, 28(s9)
- sw s2, 24(s9)
+ sd s10, %lo(u)(s1)
+ sd s10, %lo(u+8)(s1)
+ sd s10, 16(s8)
+ sb s0, 30(s8)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
sh zero, %lo(u+6)(s1)
sh zero, %lo(u+8)(s1)
sh zero, %lo(u+10)(s1)
sh zero, %lo(u+12)(s1)
sh zero, %lo(u+14)(s1)
- sh zero, 16(s9)
- sb zero, 18(s9)
+ sh zero, 16(s8)
+ sb zero, 18(s8)
li a0, 6
li a1, 13
li a2, 0
call check
- lbu a0, %lo(A)(s8)
- sb a0, 18(s9)
+ lbu a0, %lo(A)(s6)
+ sb a0, 18(s8)
slli a1, a0, 8
or a0, a0, a1
sh a0, %lo(u+6)(s1)
@@ -3370,13 +3429,13 @@ main: # @main
sh a0, %lo(u+10)(s1)
sh a0, %lo(u+12)(s1)
sh a0, %lo(u+14)(s1)
- sh a0, 16(s9)
+ sh a0, 16(s8)
li a0, 6
li a1, 13
li a2, 65
call check
- sb s3, 18(s9)
- sh s7, 16(s9)
+ sb s3, 18(s8)
+ sh s7, 16(s8)
sh s7, %lo(u+14)(s1)
sh s7, %lo(u+12)(s1)
sh s7, %lo(u+10)(s1)
@@ -3386,18 +3445,16 @@ main: # @main
li a1, 13
li a2, 66
call check
- sb s0, 30(s9)
+ sb s0, 30(s8)
mv s5, s4
- sh s4, 28(s9)
- mv s8, s2
- sw s2, 24(s9)
- mv s3, s9
- sd s11, 16(s9)
- sd s11, %lo(u+8)(s1)
- mv s2, s11
- sd s11, %lo(u)(s1)
+ sh s4, 28(s8)
+ sw s10, 24(s8)
+ sd s10, 16(s8)
+ sd s10, %lo(u+8)(s1)
+ mv s2, s10
+ sd s10, %lo(u)(s1)
li a2, 13
- ld s1, 56(sp) # 8-byte Folded Reload
+ ld s1, 64(sp) # 8-byte Folded Reload
mv a0, s1
li a1, 0
call memset@plt
@@ -3422,44 +3479,42 @@ main: # @main
li a1, 13
li a2, 66
call check
- li a0, -1
- lbu a1, %lo(A)(s4)
- sd a1, 56(sp) # 8-byte Folded Spill
- li s10, 0
+ lbu a0, %lo(A)(s4)
+ sd a0, 72(sp) # 8-byte Folded Spill
+ li s6, 0
lui s4, %hi(u)
.LBB2_1: # %for.body423
# =>This Loop Header: Depth=1
# Child Loop BB2_3 Depth 2
# Child Loop BB2_29 Depth 2
# Child Loop BB2_56 Depth 2
- mv s6, a0
- slli a0, a0, 32
+ slli a0, s9, 32
srli a0, a0, 32
- addi s11, a0, 1
- mv s9, s3
- sb s0, 30(s3)
- sh s5, 28(s3)
- sw s8, 24(s3)
- sd s2, 16(s3)
+ addi s10, a0, 1
+ sb s0, 30(s8)
+ sh s5, 28(s8)
+ sw s2, 24(s8)
+ sd s2, 16(s8)
lui a0, %hi(u)
sd s2, %lo(u+8)(a0)
sd s2, %lo(u)(a0)
- add s1, s3, s10
+ add s1, s8, s6
li a2, 14
mv a0, s1
li a1, 0
call memset@plt
- ld a0, 64(sp) # 8-byte Folded Reload
- add s7, s10, a0
- beqz s10, .LBB2_5
+ ld a0, 80(sp) # 8-byte Folded Reload
+ add s7, s6, a0
+ mv a0, s8
+ beqz s6, .LBB2_5
# %bb.2: # %for.body.preheader.i
# in Loop: Header=BB2_1 Depth=1
- ld a0, 64(sp) # 8-byte Folded Reload
+ ld a0, 80(sp) # 8-byte Folded Reload
and a0, s7, a0
addi a1, s4, %lo(u)
add a0, a0, a1
- addi s9, a0, 1
- mv a2, s11
+ addi a0, a0, 1
+ mv a2, s10
.LBB2_3: # %for.body.i
# Parent Loop BB2_1 Depth=1
# => This Inner Loop Header: Depth=2
@@ -3472,107 +3527,107 @@ main: # @main
bnez a2, .LBB2_3
.LBB2_5: # %for.cond3.preheader.i
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 0(s9)
+ lbu a1, 0(a0)
bnez a1, .LBB2_166
# %bb.6: # %for.inc12.i
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 1(s9)
+ lbu a1, 1(a0)
bnez a1, .LBB2_166
# %bb.7: # %for.inc12.i.1
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 2(s9)
+ lbu a1, 2(a0)
bnez a1, .LBB2_166
# %bb.8: # %for.inc12.i.2
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 3(s9)
+ lbu a1, 3(a0)
bnez a1, .LBB2_166
# %bb.9: # %for.inc12.i.3
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 4(s9)
+ lbu a1, 4(a0)
bnez a1, .LBB2_166
# %bb.10: # %for.inc12.i.4
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 5(s9)
+ lbu a1, 5(a0)
bnez a1, .LBB2_166
# %bb.11: # %for.inc12.i.5
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 6(s9)
+ lbu a1, 6(a0)
bnez a1, .LBB2_166
# %bb.12: # %for.inc12.i.6
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 7(s9)
+ lbu a1, 7(a0)
bnez a1, .LBB2_166
# %bb.13: # %for.inc12.i.7
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 8(s9)
+ lbu a1, 8(a0)
bnez a1, .LBB2_166
# %bb.14: # %for.inc12.i.8
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 9(s9)
+ lbu a1, 9(a0)
bnez a1, .LBB2_166
# %bb.15: # %for.inc12.i.9
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 10(s9)
+ lbu a1, 10(a0)
bnez a1, .LBB2_166
# %bb.16: # %for.inc12.i.10
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 11(s9)
+ lbu a1, 11(a0)
bnez a1, .LBB2_166
# %bb.17: # %for.inc12.i.11
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 12(s9)
+ lbu a1, 12(a0)
bnez a1, .LBB2_166
# %bb.18: # %for.inc12.i.12
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 13(s9)
+ lbu a1, 13(a0)
bnez a1, .LBB2_166
# %bb.19: # %for.inc12.i.13
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 14(s9)
+ lbu a1, 14(a0)
bne a1, s0, .LBB2_166
# %bb.20: # %for.inc26.i
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 15(s9)
+ lbu a1, 15(a0)
bne a1, s0, .LBB2_166
# %bb.21: # %for.inc26.1.i
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 16(s9)
+ lbu a1, 16(a0)
bne a1, s0, .LBB2_166
# %bb.22: # %for.inc26.2.i
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 17(s9)
+ lbu a1, 17(a0)
bne a1, s0, .LBB2_166
# %bb.23: # %for.inc26.3.i
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 18(s9)
+ lbu a1, 18(a0)
bne a1, s0, .LBB2_166
# %bb.24: # %for.inc26.4.i
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 19(s9)
+ lbu a1, 19(a0)
bne a1, s0, .LBB2_166
# %bb.25: # %for.inc26.5.i
# in Loop: Header=BB2_1 Depth=1
- lbu a1, 20(s9)
+ lbu a1, 20(a0)
bne a1, s0, .LBB2_166
# %bb.26: # %for.inc26.6.i
# in Loop: Header=BB2_1 Depth=1
- lbu a0, 21(s9)
+ lbu a0, 21(a0)
bne a0, s0, .LBB2_166
# %bb.27: # %check.exit
# in Loop: Header=BB2_1 Depth=1
li a2, 14
mv a0, s1
- ld a1, 56(sp) # 8-byte Folded Reload
+ ld a1, 72(sp) # 8-byte Folded Reload
call memset@plt
- beqz s10, .LBB2_32
+ beqz s6, .LBB2_32
# %bb.28: # %for.body.preheader.i212
# in Loop: Header=BB2_1 Depth=1
- ld a0, 64(sp) # 8-byte Folded Reload
+ ld a0, 80(sp) # 8-byte Folded Reload
and a0, s7, a0
addi a1, s4, %lo(u)
add a0, a0, a1
addi a0, a0, 1
- mv a2, s11
+ mv a2, s10
.LBB2_29: # %for.body.i218
# Parent Loop BB2_1 Depth=1
# => This Inner Loop Header: Depth=2
@@ -3586,66 +3641,64 @@ main: # @main
# %bb.31: # %for.cond3.preheader.i214
# in Loop: Header=BB2_1 Depth=1
lbu a1, 0(a0)
- li a2, 65
- beq a1, a2, .LBB2_33
+ beq a1, s11, .LBB2_33
j .LBB2_166
.LBB2_32: # in Loop: Header=BB2_1 Depth=1
addi a0, s4, %lo(u)
lbu a1, 0(a0)
- li a2, 65
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
.LBB2_33: # %for.inc12.i234
# in Loop: Header=BB2_1 Depth=1
lbu a1, 1(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.34: # %for.inc12.i234.1
# in Loop: Header=BB2_1 Depth=1
lbu a1, 2(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.35: # %for.inc12.i234.2
# in Loop: Header=BB2_1 Depth=1
lbu a1, 3(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.36: # %for.inc12.i234.3
# in Loop: Header=BB2_1 Depth=1
lbu a1, 4(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.37: # %for.inc12.i234.4
# in Loop: Header=BB2_1 Depth=1
lbu a1, 5(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.38: # %for.inc12.i234.5
# in Loop: Header=BB2_1 Depth=1
lbu a1, 6(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.39: # %for.inc12.i234.6
# in Loop: Header=BB2_1 Depth=1
lbu a1, 7(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.40: # %for.inc12.i234.7
# in Loop: Header=BB2_1 Depth=1
lbu a1, 8(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.41: # %for.inc12.i234.8
# in Loop: Header=BB2_1 Depth=1
lbu a1, 9(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.42: # %for.inc12.i234.9
# in Loop: Header=BB2_1 Depth=1
lbu a1, 10(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.43: # %for.inc12.i234.10
# in Loop: Header=BB2_1 Depth=1
lbu a1, 11(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.44: # %for.inc12.i234.11
# in Loop: Header=BB2_1 Depth=1
lbu a1, 12(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.45: # %for.inc12.i234.12
# in Loop: Header=BB2_1 Depth=1
lbu a1, 13(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.46: # %for.inc12.i234.13
# in Loop: Header=BB2_1 Depth=1
lbu a1, 14(a0)
@@ -3684,10 +3737,10 @@ main: # @main
li a2, 14
mv a0, s1
call memset@plt
- beqz s10, .LBB2_59
+ beqz s6, .LBB2_59
# %bb.55: # %for.body.preheader.i261
# in Loop: Header=BB2_1 Depth=1
- ld a0, 64(sp) # 8-byte Folded Reload
+ ld a0, 80(sp) # 8-byte Folded Reload
and a0, s7, a0
addi a1, s4, %lo(u)
add a0, a0, a1
@@ -3699,72 +3752,70 @@ main: # @main
bne a2, s0, .LBB2_166
# %bb.57: # %for.inc.i271
# in Loop: Header=BB2_56 Depth=2
- addi s11, s11, -1
+ addi s10, s10, -1
addi a1, a1, 1
- bnez s11, .LBB2_56
+ bnez s10, .LBB2_56
# %bb.58: # %for.cond3.preheader.i263
# in Loop: Header=BB2_1 Depth=1
lbu a1, 0(a0)
- li a2, 66
- beq a1, a2, .LBB2_60
+ beq a1, s3, .LBB2_60
j .LBB2_166
.LBB2_59: # in Loop: Header=BB2_1 Depth=1
addi a0, s4, %lo(u)
lbu a1, 0(a0)
- li a2, 66
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
.LBB2_60: # %for.inc12.i283
# in Loop: Header=BB2_1 Depth=1
lbu a1, 1(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.61: # %for.inc12.i283.1
# in Loop: Header=BB2_1 Depth=1
lbu a1, 2(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.62: # %for.inc12.i283.2
# in Loop: Header=BB2_1 Depth=1
lbu a1, 3(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.63: # %for.inc12.i283.3
# in Loop: Header=BB2_1 Depth=1
lbu a1, 4(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.64: # %for.inc12.i283.4
# in Loop: Header=BB2_1 Depth=1
lbu a1, 5(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.65: # %for.inc12.i283.5
# in Loop: Header=BB2_1 Depth=1
lbu a1, 6(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.66: # %for.inc12.i283.6
# in Loop: Header=BB2_1 Depth=1
lbu a1, 7(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.67: # %for.inc12.i283.7
# in Loop: Header=BB2_1 Depth=1
lbu a1, 8(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.68: # %for.inc12.i283.8
# in Loop: Header=BB2_1 Depth=1
lbu a1, 9(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.69: # %for.inc12.i283.9
# in Loop: Header=BB2_1 Depth=1
lbu a1, 10(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.70: # %for.inc12.i283.10
# in Loop: Header=BB2_1 Depth=1
lbu a1, 11(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.71: # %for.inc12.i283.11
# in Loop: Header=BB2_1 Depth=1
lbu a1, 12(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.72: # %for.inc12.i283.12
# in Loop: Header=BB2_1 Depth=1
lbu a1, 13(a0)
- bne a1, a2, .LBB2_166
+ bne a1, s3, .LBB2_166
# %bb.73: # %for.inc12.i283.13
# in Loop: Header=BB2_1 Depth=1
lbu a1, 14(a0)
@@ -3799,11 +3850,10 @@ main: # @main
bne a0, s0, .LBB2_166
# %bb.81: # %for.cond419
# in Loop: Header=BB2_1 Depth=1
- addi s10, s10, 1
- mv a0, s6
- addiw a0, s6, 1
- li a1, 8
- bne s10, a1, .LBB2_1
+ addi s6, s6, 1
+ addiw s9, s9, 1
+ li a0, 8
+ bne s6, a0, .LBB2_1
# %bb.82: # %for.body456.preheader
li s0, 0
li s6, -1
@@ -3812,13 +3862,10 @@ main: # @main
li s1, 97
lui a0, 6
addiw s4, a0, 353
- lui a0, 398870
- addiw a0, a0, 353
- sd a0, 48(sp) # 8-byte Folded Spill
lui a0, %hi(.LCPI2_0)
- ld s10, %lo(.LCPI2_0)(a0)
- li s11, 65
- li s5, 66
+ ld s9, %lo(.LCPI2_0)(a0)
+ li s10, 65
+ li s11, 66
.LBB2_83: # %for.body456
# =>This Loop Header: Depth=1
# Child Loop BB2_85 Depth 2
@@ -3826,30 +3873,29 @@ main: # @main
# Child Loop BB2_139 Depth 2
slli a0, s6, 32
srli a0, a0, 32
- addi s8, a0, 1
+ addi s5, a0, 1
sb s1, 30(s7)
sh s4, 28(s7)
- ld a0, 48(sp) # 8-byte Folded Reload
- sw a0, 24(s7)
- sd s10, 16(s7)
- sd s10, %lo(u+8)(s2)
- sd s10, %lo(u)(s2)
+ sw s9, 24(s7)
+ sd s9, 16(s7)
+ sd s9, %lo(u+8)(s2)
+ sd s9, %lo(u)(s2)
add s3, s7, s0
li a2, 15
mv a0, s3
li a1, 0
call memset@plt
- ld a0, 64(sp) # 8-byte Folded Reload
- add s9, s0, a0
+ ld a0, 80(sp) # 8-byte Folded Reload
+ add s8, s0, a0
mv a0, s7
beqz s0, .LBB2_87
# %bb.84: # %for.body.preheader.i310
# in Loop: Header=BB2_83 Depth=1
- ld a0, 64(sp) # 8-byte Folded Reload
- and a0, s9, a0
+ ld a0, 80(sp) # 8-byte Folded Reload
+ and a0, s8, a0
add a0, a0, s7
addi a0, a0, 1
- mv a1, s8
+ mv a1, s5
mv a2, s7
.LBB2_85: # %for.body.i316
# Parent Loop BB2_83 Depth=1
@@ -3957,17 +4003,17 @@ main: # @main
# in Loop: Header=BB2_83 Depth=1
li a2, 15
mv a0, s3
- ld a1, 56(sp) # 8-byte Folded Reload
+ ld a1, 72(sp) # 8-byte Folded Reload
call memset@plt
mv a0, s7
beqz s0, .LBB2_114
# %bb.111: # %for.body.preheader.i359
# in Loop: Header=BB2_83 Depth=1
- ld a0, 64(sp) # 8-byte Folded Reload
- and a0, s9, a0
+ ld a0, 80(sp) # 8-byte Folded Reload
+ and a0, s8, a0
add a0, a0, s7
addi a0, a0, 1
- mv a1, s8
+ mv a1, s5
mv a2, s7
.LBB2_112: # %for.body.i365
# Parent Loop BB2_83 Depth=1
@@ -3982,63 +4028,63 @@ main: # @main
.LBB2_114: # %for.cond3.preheader.i361
# in Loop: Header=BB2_83 Depth=1
lbu a1, 0(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.115: # %for.inc12.i381
# in Loop: Header=BB2_83 Depth=1
lbu a1, 1(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.116: # %for.inc12.i381.1
# in Loop: Header=BB2_83 Depth=1
lbu a1, 2(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.117: # %for.inc12.i381.2
# in Loop: Header=BB2_83 Depth=1
lbu a1, 3(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.118: # %for.inc12.i381.3
# in Loop: Header=BB2_83 Depth=1
lbu a1, 4(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.119: # %for.inc12.i381.4
# in Loop: Header=BB2_83 Depth=1
lbu a1, 5(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.120: # %for.inc12.i381.5
# in Loop: Header=BB2_83 Depth=1
lbu a1, 6(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.121: # %for.inc12.i381.6
# in Loop: Header=BB2_83 Depth=1
lbu a1, 7(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.122: # %for.inc12.i381.7
# in Loop: Header=BB2_83 Depth=1
lbu a1, 8(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.123: # %for.inc12.i381.8
# in Loop: Header=BB2_83 Depth=1
lbu a1, 9(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.124: # %for.inc12.i381.9
# in Loop: Header=BB2_83 Depth=1
lbu a1, 10(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.125: # %for.inc12.i381.10
# in Loop: Header=BB2_83 Depth=1
lbu a1, 11(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.126: # %for.inc12.i381.11
# in Loop: Header=BB2_83 Depth=1
lbu a1, 12(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.127: # %for.inc12.i381.12
# in Loop: Header=BB2_83 Depth=1
lbu a1, 13(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.128: # %for.inc12.i381.13
# in Loop: Header=BB2_83 Depth=1
lbu a1, 14(a0)
- bne a1, s11, .LBB2_166
+ bne a1, s10, .LBB2_166
# %bb.129: # %for.inc12.i381.14
# in Loop: Header=BB2_83 Depth=1
lbu a1, 15(a0)
@@ -4081,8 +4127,8 @@ main: # @main
beqz s0, .LBB2_141
# %bb.138: # %for.body.preheader.i408
# in Loop: Header=BB2_83 Depth=1
- ld a0, 64(sp) # 8-byte Folded Reload
- and a0, s9, a0
+ ld a0, 80(sp) # 8-byte Folded Reload
+ and a0, s8, a0
add a0, a0, s7
addi a0, a0, 1
mv a1, s7
@@ -4093,69 +4139,69 @@ main: # @main
bne a2, s1, .LBB2_166
# %bb.140: # %for.inc.i418
# in Loop: Header=BB2_139 Depth=2
- addi s8, s8, -1
+ addi s5, s5, -1
addi a1, a1, 1
- bnez s8, .LBB2_139
+ bnez s5, .LBB2_139
.LBB2_141: # %for.cond3.preheader.i410
# in Loop: Header=BB2_83 Depth=1
lbu a1, 0(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.142: # %for.inc12.i430
# in Loop: Header=BB2_83 Depth=1
lbu a1, 1(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.143: # %for.inc12.i430.1
# in Loop: Header=BB2_83 Depth=1
lbu a1, 2(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.144: # %for.inc12.i430.2
# in Loop: Header=BB2_83 Depth=1
lbu a1, 3(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.145: # %for.inc12.i430.3
# in Loop: Header=BB2_83 Depth=1
lbu a1, 4(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.146: # %for.inc12.i430.4
# in Loop: Header=BB2_83 Depth=1
lbu a1, 5(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.147: # %for.inc12.i430.5
# in Loop: Header=BB2_83 Depth=1
lbu a1, 6(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.148: # %for.inc12.i430.6
# in Loop: Header=BB2_83 Depth=1
lbu a1, 7(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.149: # %for.inc12.i430.7
# in Loop: Header=BB2_83 Depth=1
lbu a1, 8(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.150: # %for.inc12.i430.8
# in Loop: Header=BB2_83 Depth=1
lbu a1, 9(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.151: # %for.inc12.i430.9
# in Loop: Header=BB2_83 Depth=1
lbu a1, 10(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.152: # %for.inc12.i430.10
# in Loop: Header=BB2_83 Depth=1
lbu a1, 11(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.153: # %for.inc12.i430.11
# in Loop: Header=BB2_83 Depth=1
lbu a1, 12(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.154: # %for.inc12.i430.12
# in Loop: Header=BB2_83 Depth=1
lbu a1, 13(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.155: # %for.inc12.i430.13
# in Loop: Header=BB2_83 Depth=1
lbu a1, 14(a0)
- bne a1, s5, .LBB2_166
+ bne a1, s11, .LBB2_166
# %bb.156: # %for.inc12.i430.14
# in Loop: Header=BB2_83 Depth=1
lbu a1, 15(a0)
diff --git a/output_rv64imafdc_lp64d_O3/pr53645.s b/output_rv64imafdc_lp64d_O3/pr53645.s
index 56bd435ece..7c352a0b5d 100644
--- a/output_rv64imafdc_lp64d_O3/pr53645.s
+++ b/output_rv64imafdc_lp64d_O3/pr53645.s
@@ -188,7 +188,7 @@ sq1428: # @sq1428
sr1428: # @sr1428
# %bb.0: # %entry
lw a2, 4(a1)
- lwu a3, 8(a1)
+ lw a3, 8(a1)
lw a1, 12(a1)
slli a4, a2, 1
srli a4, a4, 62
@@ -200,7 +200,7 @@ sr1428: # @sr1428
add a4, a4, a1
andi a4, a4, -8
subw a1, a1, a4
- srli a4, a3, 31
+ srliw a4, a3, 31
add a4, a4, a3
andi a4, a4, -2
subw a3, a3, a4
@@ -254,36 +254,44 @@ uq3333: # @uq3333
.type ur3333,@function
ur3333: # @ur3333
# %bb.0: # %entry
- lwu a2, 0(a1)
- lui a3, %hi(.LCPI9_0)
- ld a3, %lo(.LCPI9_0)(a3)
- lwu a6, 12(a1)
- lwu a5, 8(a1)
- lwu a1, 4(a1)
- mulhu a4, a2, a3
- srli a7, a4, 1
- andi a4, a4, -2
- addw a4, a4, a7
- subw a7, a2, a4
- mulhu a4, a1, a3
- srli a2, a4, 1
- andi a4, a4, -2
- addw a2, a2, a4
- subw a1, a1, a2
- mulhu a2, a5, a3
- srli a4, a2, 1
- andi a2, a2, -2
- addw a2, a2, a4
- subw a2, a5, a2
- mulhu a3, a6, a3
+ lw t0, 12(a1)
+ lw t1, 8(a1)
+ slli a4, t0, 32
+ lw a5, 4(a1)
+ srli a6, a4, 32
+ slli a4, t1, 32
+ srli a7, a4, 32
+ slli a4, a5, 32
+ lw a1, 0(a1)
+ lui a2, %hi(.LCPI9_0)
+ ld a2, %lo(.LCPI9_0)(a2)
+ srli t2, a4, 32
+ slli a3, a1, 32
+ srli a3, a3, 32
+ mulhu a3, a3, a2
srli a4, a3, 1
andi a3, a3, -2
addw a3, a3, a4
- subw a3, a6, a3
- sw a3, 12(a0)
- sw a2, 8(a0)
- sw a1, 4(a0)
- sw a7, 0(a0)
+ subw a1, a1, a3
+ mulhu a3, t2, a2
+ srli a4, a3, 1
+ andi a3, a3, -2
+ addw a3, a3, a4
+ subw a3, a5, a3
+ mulhu a4, a7, a2
+ srli a5, a4, 1
+ andi a4, a4, -2
+ addw a4, a4, a5
+ subw a4, t1, a4
+ mulhu a2, a6, a2
+ srli a5, a2, 1
+ andi a2, a2, -2
+ addw a2, a2, a5
+ subw a2, t0, a2
+ sw a2, 12(a0)
+ sw a4, 8(a0)
+ sw a3, 4(a0)
+ sw a1, 0(a0)
ret
.Lfunc_end9:
.size ur3333, .Lfunc_end9-ur3333
@@ -420,36 +428,44 @@ uq6565: # @uq6565
.type ur6565,@function
ur6565: # @ur6565
# %bb.0: # %entry
- lwu a2, 4(a1)
- lui a3, %hi(.LCPI13_0)
- ld a3, %lo(.LCPI13_0)(a3)
- lwu a6, 8(a1)
- lwu a7, 0(a1)
- lwu a1, 12(a1)
- mulhu a4, a2, a3
- srli a5, a4, 2
- andi a4, a4, -4
- addw a4, a4, a5
- subw a2, a2, a4
- mulhu a3, a1, a3
+ lw t0, 8(a1)
+ lw t1, 0(a1)
+ slli a4, t0, 32
+ lw a5, 12(a1)
+ srli a6, a4, 32
+ slli a4, t1, 32
+ srli a7, a4, 32
+ slli a4, a5, 32
+ lw a1, 4(a1)
+ lui a2, %hi(.LCPI13_0)
+ ld a2, %lo(.LCPI13_0)(a2)
+ srli t2, a4, 32
+ slli a3, a1, 32
+ srli a3, a3, 32
+ mulhu a3, a3, a2
srli a4, a3, 2
- lui a5, %hi(.LCPI13_1)
- ld a5, %lo(.LCPI13_1)(a5)
andi a3, a3, -4
addw a3, a3, a4
subw a1, a1, a3
- mulhu a3, a7, a5
+ mulhu a2, t2, a2
+ srli a3, a2, 2
+ lui a4, %hi(.LCPI13_1)
+ ld a4, %lo(.LCPI13_1)(a4)
+ andi a2, a2, -4
+ addw a2, a2, a3
+ subw a2, a5, a2
+ mulhu a3, a7, a4
srli a3, a3, 2
- li a4, 6
- mulw a3, a3, a4
- subw a3, a7, a3
- mulhu a5, a6, a5
- srli a5, a5, 2
- mulw a4, a5, a4
- subw a4, a6, a4
- sw a1, 12(a0)
+ li a5, 6
+ mulw a3, a3, a5
+ subw a3, t1, a3
+ mulhu a4, a6, a4
+ srli a4, a4, 2
+ mulw a4, a4, a5
+ subw a4, t0, a4
+ sw a2, 12(a0)
sw a4, 8(a0)
- sw a2, 4(a0)
+ sw a1, 4(a0)
sw a3, 0(a0)
ret
.Lfunc_end13:
@@ -592,48 +608,50 @@ uq1414146: # @uq1414146
.section .sdata,"aw",@progbits
.p2align 3 # -- Begin function ur1414146
.LCPI17_0:
- .quad 5270498306774157605 # 0x4924924924924925
-.LCPI17_1:
.quad -6148914691236517205 # 0xaaaaaaaaaaaaaaab
+.LCPI17_1:
+ .quad 5270498306774157605 # 0x4924924924924925
.text
.globl ur1414146
.p2align 1
.type ur1414146,@function
ur1414146: # @ur1414146
# %bb.0: # %entry
- lwu a6, 12(a1)
- lwu a3, 0(a1)
- lui a4, %hi(.LCPI17_0)
- ld a4, %lo(.LCPI17_0)(a4)
- lwu a5, 8(a1)
- lwu a1, 4(a1)
- srli a2, a3, 1
- mulhu a2, a2, a4
- srli a2, a2, 1
- li a7, 14
+ lw a6, 8(a1)
+ lw a3, 4(a1)
+ lw a4, 12(a1)
+ lui a5, %hi(.LCPI17_0)
+ ld a5, %lo(.LCPI17_0)(a5)
+ lw a1, 0(a1)
+ slli a2, a4, 32
+ srli a2, a2, 32
+ mulhu a2, a2, a5
+ srli a2, a2, 2
+ li a7, 6
+ lui a5, %hi(.LCPI17_1)
+ ld a5, %lo(.LCPI17_1)(a5)
mulw a2, a2, a7
- subw a2, a3, a2
- srli a3, a1, 1
- mulhu a3, a3, a4
- srli a3, a3, 1
- mulw a3, a3, a7
- subw a1, a1, a3
- srli a3, a5, 1
- mulhu a3, a3, a4
- lui a4, %hi(.LCPI17_1)
- ld a4, %lo(.LCPI17_1)(a4)
- srli a3, a3, 1
- mulw a3, a3, a7
- subw a3, a5, a3
- mulhu a4, a6, a4
- srli a4, a4, 2
- li a5, 6
- mulw a4, a4, a5
- subw a4, a6, a4
- sw a4, 12(a0)
- sw a3, 8(a0)
- sw a1, 4(a0)
- sw a2, 0(a0)
+ subw a7, a4, a2
+ srliw a4, a1, 1
+ mulhu a4, a4, a5
+ srli a4, a4, 1
+ li a2, 14
+ mulw a4, a4, a2
+ subw a1, a1, a4
+ srliw a4, a3, 1
+ mulhu a4, a4, a5
+ srli a4, a4, 1
+ mulw a4, a4, a2
+ subw a3, a3, a4
+ srliw a4, a6, 1
+ mulhu a4, a4, a5
+ srli a4, a4, 1
+ mulw a2, a4, a2
+ subw a2, a6, a2
+ sw a2, 8(a0)
+ sw a3, 4(a0)
+ sw a1, 0(a0)
+ sw a7, 12(a0)
ret
.Lfunc_end17:
.size ur1414146, .Lfunc_end17-ur1414146
@@ -788,48 +806,56 @@ uq7777: # @uq7777
.type ur7777,@function
ur7777: # @ur7777
# %bb.0: # %entry
- lwu a2, 0(a1)
- lui a3, %hi(.LCPI21_0)
- ld a3, %lo(.LCPI21_0)(a3)
- lwu a6, 12(a1)
- lwu a7, 8(a1)
- lwu a1, 4(a1)
- mulhu a4, a2, a3
- sub a5, a2, a4
- srli a5, a5, 1
- add a4, a4, a5
- srli a4, a4, 2
- slliw a5, a4, 3
- subw a4, a4, a5
- addw a2, a2, a4
- mulhu a4, a1, a3
- sub a5, a1, a4
+ lw a6, 12(a1)
+ lw a7, 8(a1)
+ slli a4, a6, 32
+ lw t2, 4(a1)
+ srli t0, a4, 32
+ slli a2, a7, 32
+ srli t1, a2, 32
+ slli a3, t2, 32
+ lw a1, 0(a1)
+ lui a4, %hi(.LCPI21_0)
+ ld a4, %lo(.LCPI21_0)(a4)
+ srli a3, a3, 32
+ slli a2, a1, 32
+ srli a2, a2, 32
+ mulhu a5, a2, a4
+ sub a2, a2, a5
+ srli a2, a2, 1
+ add a2, a2, a5
+ srli a2, a2, 2
+ slliw a5, a2, 3
+ subw a2, a2, a5
+ addw a1, a1, a2
+ mulhu a2, a3, a4
+ sub a3, a3, a2
+ srli a3, a3, 1
+ add a2, a2, a3
+ srli a2, a2, 2
+ slliw a3, a2, 3
+ subw a2, a2, a3
+ addw a2, t2, a2
+ mulhu a3, t1, a4
+ sub a5, t1, a3
srli a5, a5, 1
- add a4, a4, a5
- srli a4, a4, 2
- slliw a5, a4, 3
- subw a4, a4, a5
- addw a1, a1, a4
- mulhu a4, a7, a3
- sub a5, a7, a4
+ add a3, a3, a5
+ srli a3, a3, 2
+ slliw a5, a3, 3
+ subw a3, a3, a5
+ addw a3, a7, a3
+ mulhu a4, t0, a4
+ sub a5, t0, a4
srli a5, a5, 1
add a4, a4, a5
srli a4, a4, 2
slliw a5, a4, 3
subw a4, a4, a5
- addw a4, a7, a4
- mulhu a3, a6, a3
- sub a5, a6, a3
- srli a5, a5, 1
- add a3, a3, a5
- srli a3, a3, 2
- slliw a5, a3, 3
- subw a3, a3, a5
- addw a3, a6, a3
- sw a3, 12(a0)
- sw a4, 8(a0)
- sw a1, 4(a0)
- sw a2, 0(a0)
+ addw a4, a6, a4
+ sw a4, 12(a0)
+ sw a3, 8(a0)
+ sw a2, 4(a0)
+ sw a1, 0(a0)
ret
.Lfunc_end21:
.size ur7777, .Lfunc_end21-ur7777
@@ -931,43 +957,37 @@ sr7777: # @sr7777
.type main,@function
main: # @main
# %bb.0: # %entry
- addi sp, sp, -144
- sd ra, 136(sp) # 8-byte Folded Spill
- sd s0, 128(sp) # 8-byte Folded Spill
- sd s1, 120(sp) # 8-byte Folded Spill
- sd s2, 112(sp) # 8-byte Folded Spill
- sd s3, 104(sp) # 8-byte Folded Spill
- sd s4, 96(sp) # 8-byte Folded Spill
- sd s5, 88(sp) # 8-byte Folded Spill
- sd s6, 80(sp) # 8-byte Folded Spill
- sd s7, 72(sp) # 8-byte Folded Spill
- sd s8, 64(sp) # 8-byte Folded Spill
- sd s9, 56(sp) # 8-byte Folded Spill
- sd s10, 48(sp) # 8-byte Folded Spill
- sd s11, 40(sp) # 8-byte Folded Spill
+ addi sp, sp, -128
+ sd ra, 120(sp) # 8-byte Folded Spill
+ sd s0, 112(sp) # 8-byte Folded Spill
+ sd s1, 104(sp) # 8-byte Folded Spill
+ sd s2, 96(sp) # 8-byte Folded Spill
+ sd s3, 88(sp) # 8-byte Folded Spill
+ sd s4, 80(sp) # 8-byte Folded Spill
+ sd s5, 72(sp) # 8-byte Folded Spill
+ sd s6, 64(sp) # 8-byte Folded Spill
+ sd s7, 56(sp) # 8-byte Folded Spill
+ sd s8, 48(sp) # 8-byte Folded Spill
+ sd s9, 40(sp) # 8-byte Folded Spill
li a0, 0
li s3, 1
lui a1, %hi(u)
addi s2, a1, %lo(u)
- addi s1, sp, 16
- lui a1, 171
- addiw a1, a1, -1365
- slli a1, a1, 12
- addi s4, a1, -1365
+ addi s4, sp, 16
lui a1, 699051
addiw a1, a1, -1365
- slli s5, a1, 32
+ slli s1, a1, 32
lui a1, 838861
addiw a1, a1, -819
- slli s6, a1, 32
- li s7, 6
+ slli s5, a1, 32
+ li s6, 6
lui a1, 299593
slli a1, a1, 1
- addi s8, a1, 1171
- li s9, 14
+ addi s7, a1, 1171
+ li s8, 14
lui a1, 149797
- addiw s10, a1, -1755
- slli s11, s10, 32
+ addiw a1, a1, -1755
+ slli s9, a1, 32
.LBB24_1: # %for.body
# =>This Inner Loop Header: Depth=1
slli a0, a0, 4
@@ -975,9 +995,9 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq4444
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- srli a0, a0, 2
+ srliw a0, a0, 2
bne a1, a0, .LBB24_101
# %bb.2: # %lor.lhs.false
# in Loop: Header=BB24_1 Depth=1
@@ -989,9 +1009,9 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a0, a0, 2
+ srliw a0, a0, 2
bne a1, a0, .LBB24_101
# %bb.4: # %lor.lhs.false19
# in Loop: Header=BB24_1 Depth=1
@@ -1006,7 +1026,7 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur4444
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
andi a0, a0, 3
bne a1, a0, .LBB24_101
@@ -1020,7 +1040,7 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
andi a0, a0, 3
bne a1, a0, .LBB24_101
@@ -1050,9 +1070,9 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a0, a0, 1
+ srliw a0, a0, 1
bne a1, a0, .LBB24_101
# %bb.12: # %lor.lhs.false90
# in Loop: Header=BB24_1 Depth=1
@@ -1079,7 +1099,7 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
andi a0, a0, 1
bne a1, a0, .LBB24_101
@@ -1096,9 +1116,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq3333
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.18: # %lor.lhs.false145
@@ -1106,16 +1127,17 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a0, a0, 32
- mulhu a0, a0, s5
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.19: # %if.end154
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.20: # %lor.lhs.false162
@@ -1123,7 +1145,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a0, a0, 32
- mulhu a0, a0, s5
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.21: # %if.end171
@@ -1133,9 +1155,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur3333
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1146,7 +1169,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s5
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1156,9 +1179,10 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1169,7 +1193,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s5
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1182,9 +1206,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq6565
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.26: # %lor.lhs.false217
@@ -1192,16 +1217,17 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a0, a0, 32
- mulhu a0, a0, s6
+ mulhu a0, a0, s5
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.27: # %if.end226
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.28: # %lor.lhs.false234
@@ -1209,7 +1235,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a0, a0, 32
- mulhu a0, a0, s6
+ mulhu a0, a0, s5
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.29: # %if.end243
@@ -1219,11 +1245,12 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur6565
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 34
- mulw a2, a2, s7
+ mulw a2, a2, s6
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.30: # %lor.lhs.false253
@@ -1231,7 +1258,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s6
+ mulhu a2, a2, s5
srli a2, a2, 34
slliw a3, a2, 2
addw a2, a2, a3
@@ -1241,11 +1268,12 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 34
- mulw a2, a2, s7
+ mulw a2, a2, s6
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.32: # %lor.lhs.false270
@@ -1253,7 +1281,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s6
+ mulhu a2, a2, s5
srli a2, a2, 34
slliw a3, a2, 2
addw a2, a2, a3
@@ -1266,10 +1294,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq1414146
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- srli a0, a0, 1
- mul a0, a0, s8
+ srliw a0, a0, 1
+ mul a0, a0, s7
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.34: # %lor.lhs.false289
@@ -1277,17 +1305,17 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a0, a0, 32
- mulhu a0, a0, s5
+ mulhu a0, a0, s1
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.35: # %if.end298
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a0, a0, 1
- mul a0, a0, s8
+ srliw a0, a0, 1
+ mul a0, a0, s7
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.36: # %lor.lhs.false306
@@ -1295,7 +1323,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
srliw a0, a0, 1
- mul a0, a0, s8
+ mul a0, a0, s7
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.37: # %if.end315
@@ -1305,12 +1333,12 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur1414146
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- srli a2, a0, 1
- mul a2, a2, s8
+ srliw a2, a0, 1
+ mul a2, a2, s7
srli a2, a2, 34
- mulw a2, a2, s9
+ mulw a2, a2, s8
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.38: # %lor.lhs.false325
@@ -1318,21 +1346,21 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s5
+ mulhu a2, a2, s1
srli a2, a2, 34
- mulw a2, a2, s7
+ mulw a2, a2, s6
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.39: # %if.end334
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a2, a0, 1
- mul a2, a2, s8
+ srliw a2, a0, 1
+ mul a2, a2, s7
srli a2, a2, 34
- mulw a2, a2, s9
+ mulw a2, a2, s8
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.40: # %lor.lhs.false342
@@ -1340,9 +1368,9 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
srliw a2, a0, 1
- mul a2, a2, s8
+ mul a2, a2, s7
srli a2, a2, 34
- mulw a2, a2, s9
+ mulw a2, a2, s8
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.41: # %if.end351
@@ -1352,9 +1380,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq7777
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1366,7 +1395,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1377,9 +1406,10 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1391,7 +1421,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1405,9 +1435,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur7777
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1422,7 +1453,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1436,9 +1467,10 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1453,7 +1485,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1505,8 +1537,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 12(s0)
lw a1, 12(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
addw a0, a0, a2
sraiw a0, a0, 2
bne a1, a0, .LBB24_101
@@ -1525,8 +1557,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
addw a0, a0, a2
sraiw a0, a0, 2
bne a1, a0, .LBB24_101
@@ -1549,8 +1581,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 12(s0)
lw a1, 12(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
add a2, a2, a0
andi a2, a2, -4
subw a0, a0, a2
@@ -1571,8 +1603,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
add a2, a2, a0
andi a2, a2, -4
subw a0, a0, a2
@@ -1591,8 +1623,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 12(s0)
lw a1, 12(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 29
+ slli a2, a0, 1
+ srli a2, a2, 61
addw a0, a0, a2
sraiw a0, a0, 3
bne a1, a0, .LBB24_101
@@ -1600,9 +1632,9 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 8(sp)
- srli a2, a0, 31
+ srliw a2, a0, 31
addw a0, a0, a2
sraiw a0, a0, 1
bne a1, a0, .LBB24_101
@@ -1610,8 +1642,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
addw a0, a0, a2
sraiw a0, a0, 2
bne a1, a0, .LBB24_101
@@ -1638,9 +1670,9 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 8(sp)
- srli a2, a0, 31
+ srliw a2, a0, 31
add a2, a2, a0
andi a2, a2, -2
subw a0, a0, a2
@@ -1649,8 +1681,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
add a2, a2, a0
andi a2, a2, -4
subw a0, a0, a2
@@ -2079,20 +2111,18 @@ main: # @main
bnez a1, .LBB24_51
# %bb.100: # %for.end863
li a0, 0
- ld ra, 136(sp) # 8-byte Folded Reload
- ld s0, 128(sp) # 8-byte Folded Reload
- ld s1, 120(sp) # 8-byte Folded Reload
- ld s2, 112(sp) # 8-byte Folded Reload
- ld s3, 104(sp) # 8-byte Folded Reload
- ld s4, 96(sp) # 8-byte Folded Reload
- ld s5, 88(sp) # 8-byte Folded Reload
- ld s6, 80(sp) # 8-byte Folded Reload
- ld s7, 72(sp) # 8-byte Folded Reload
- ld s8, 64(sp) # 8-byte Folded Reload
- ld s9, 56(sp) # 8-byte Folded Reload
- ld s10, 48(sp) # 8-byte Folded Reload
- ld s11, 40(sp) # 8-byte Folded Reload
- addi sp, sp, 144
+ ld ra, 120(sp) # 8-byte Folded Reload
+ ld s0, 112(sp) # 8-byte Folded Reload
+ ld s1, 104(sp) # 8-byte Folded Reload
+ ld s2, 96(sp) # 8-byte Folded Reload
+ ld s3, 88(sp) # 8-byte Folded Reload
+ ld s4, 80(sp) # 8-byte Folded Reload
+ ld s5, 72(sp) # 8-byte Folded Reload
+ ld s6, 64(sp) # 8-byte Folded Reload
+ ld s7, 56(sp) # 8-byte Folded Reload
+ ld s8, 48(sp) # 8-byte Folded Reload
+ ld s9, 40(sp) # 8-byte Folded Reload
+ addi sp, sp, 128
ret
.LBB24_101: # %if.then
call abort
diff --git a/output_rv64imafdc_lp64d_Os/pr53645.s b/output_rv64imafdc_lp64d_Os/pr53645.s
index 56bd435ece..7c352a0b5d 100644
--- a/output_rv64imafdc_lp64d_Os/pr53645.s
+++ b/output_rv64imafdc_lp64d_Os/pr53645.s
@@ -188,7 +188,7 @@ sq1428: # @sq1428
sr1428: # @sr1428
# %bb.0: # %entry
lw a2, 4(a1)
- lwu a3, 8(a1)
+ lw a3, 8(a1)
lw a1, 12(a1)
slli a4, a2, 1
srli a4, a4, 62
@@ -200,7 +200,7 @@ sr1428: # @sr1428
add a4, a4, a1
andi a4, a4, -8
subw a1, a1, a4
- srli a4, a3, 31
+ srliw a4, a3, 31
add a4, a4, a3
andi a4, a4, -2
subw a3, a3, a4
@@ -254,36 +254,44 @@ uq3333: # @uq3333
.type ur3333,@function
ur3333: # @ur3333
# %bb.0: # %entry
- lwu a2, 0(a1)
- lui a3, %hi(.LCPI9_0)
- ld a3, %lo(.LCPI9_0)(a3)
- lwu a6, 12(a1)
- lwu a5, 8(a1)
- lwu a1, 4(a1)
- mulhu a4, a2, a3
- srli a7, a4, 1
- andi a4, a4, -2
- addw a4, a4, a7
- subw a7, a2, a4
- mulhu a4, a1, a3
- srli a2, a4, 1
- andi a4, a4, -2
- addw a2, a2, a4
- subw a1, a1, a2
- mulhu a2, a5, a3
- srli a4, a2, 1
- andi a2, a2, -2
- addw a2, a2, a4
- subw a2, a5, a2
- mulhu a3, a6, a3
+ lw t0, 12(a1)
+ lw t1, 8(a1)
+ slli a4, t0, 32
+ lw a5, 4(a1)
+ srli a6, a4, 32
+ slli a4, t1, 32
+ srli a7, a4, 32
+ slli a4, a5, 32
+ lw a1, 0(a1)
+ lui a2, %hi(.LCPI9_0)
+ ld a2, %lo(.LCPI9_0)(a2)
+ srli t2, a4, 32
+ slli a3, a1, 32
+ srli a3, a3, 32
+ mulhu a3, a3, a2
srli a4, a3, 1
andi a3, a3, -2
addw a3, a3, a4
- subw a3, a6, a3
- sw a3, 12(a0)
- sw a2, 8(a0)
- sw a1, 4(a0)
- sw a7, 0(a0)
+ subw a1, a1, a3
+ mulhu a3, t2, a2
+ srli a4, a3, 1
+ andi a3, a3, -2
+ addw a3, a3, a4
+ subw a3, a5, a3
+ mulhu a4, a7, a2
+ srli a5, a4, 1
+ andi a4, a4, -2
+ addw a4, a4, a5
+ subw a4, t1, a4
+ mulhu a2, a6, a2
+ srli a5, a2, 1
+ andi a2, a2, -2
+ addw a2, a2, a5
+ subw a2, t0, a2
+ sw a2, 12(a0)
+ sw a4, 8(a0)
+ sw a3, 4(a0)
+ sw a1, 0(a0)
ret
.Lfunc_end9:
.size ur3333, .Lfunc_end9-ur3333
@@ -420,36 +428,44 @@ uq6565: # @uq6565
.type ur6565,@function
ur6565: # @ur6565
# %bb.0: # %entry
- lwu a2, 4(a1)
- lui a3, %hi(.LCPI13_0)
- ld a3, %lo(.LCPI13_0)(a3)
- lwu a6, 8(a1)
- lwu a7, 0(a1)
- lwu a1, 12(a1)
- mulhu a4, a2, a3
- srli a5, a4, 2
- andi a4, a4, -4
- addw a4, a4, a5
- subw a2, a2, a4
- mulhu a3, a1, a3
+ lw t0, 8(a1)
+ lw t1, 0(a1)
+ slli a4, t0, 32
+ lw a5, 12(a1)
+ srli a6, a4, 32
+ slli a4, t1, 32
+ srli a7, a4, 32
+ slli a4, a5, 32
+ lw a1, 4(a1)
+ lui a2, %hi(.LCPI13_0)
+ ld a2, %lo(.LCPI13_0)(a2)
+ srli t2, a4, 32
+ slli a3, a1, 32
+ srli a3, a3, 32
+ mulhu a3, a3, a2
srli a4, a3, 2
- lui a5, %hi(.LCPI13_1)
- ld a5, %lo(.LCPI13_1)(a5)
andi a3, a3, -4
addw a3, a3, a4
subw a1, a1, a3
- mulhu a3, a7, a5
+ mulhu a2, t2, a2
+ srli a3, a2, 2
+ lui a4, %hi(.LCPI13_1)
+ ld a4, %lo(.LCPI13_1)(a4)
+ andi a2, a2, -4
+ addw a2, a2, a3
+ subw a2, a5, a2
+ mulhu a3, a7, a4
srli a3, a3, 2
- li a4, 6
- mulw a3, a3, a4
- subw a3, a7, a3
- mulhu a5, a6, a5
- srli a5, a5, 2
- mulw a4, a5, a4
- subw a4, a6, a4
- sw a1, 12(a0)
+ li a5, 6
+ mulw a3, a3, a5
+ subw a3, t1, a3
+ mulhu a4, a6, a4
+ srli a4, a4, 2
+ mulw a4, a4, a5
+ subw a4, t0, a4
+ sw a2, 12(a0)
sw a4, 8(a0)
- sw a2, 4(a0)
+ sw a1, 4(a0)
sw a3, 0(a0)
ret
.Lfunc_end13:
@@ -592,48 +608,50 @@ uq1414146: # @uq1414146
.section .sdata,"aw",@progbits
.p2align 3 # -- Begin function ur1414146
.LCPI17_0:
- .quad 5270498306774157605 # 0x4924924924924925
-.LCPI17_1:
.quad -6148914691236517205 # 0xaaaaaaaaaaaaaaab
+.LCPI17_1:
+ .quad 5270498306774157605 # 0x4924924924924925
.text
.globl ur1414146
.p2align 1
.type ur1414146,@function
ur1414146: # @ur1414146
# %bb.0: # %entry
- lwu a6, 12(a1)
- lwu a3, 0(a1)
- lui a4, %hi(.LCPI17_0)
- ld a4, %lo(.LCPI17_0)(a4)
- lwu a5, 8(a1)
- lwu a1, 4(a1)
- srli a2, a3, 1
- mulhu a2, a2, a4
- srli a2, a2, 1
- li a7, 14
+ lw a6, 8(a1)
+ lw a3, 4(a1)
+ lw a4, 12(a1)
+ lui a5, %hi(.LCPI17_0)
+ ld a5, %lo(.LCPI17_0)(a5)
+ lw a1, 0(a1)
+ slli a2, a4, 32
+ srli a2, a2, 32
+ mulhu a2, a2, a5
+ srli a2, a2, 2
+ li a7, 6
+ lui a5, %hi(.LCPI17_1)
+ ld a5, %lo(.LCPI17_1)(a5)
mulw a2, a2, a7
- subw a2, a3, a2
- srli a3, a1, 1
- mulhu a3, a3, a4
- srli a3, a3, 1
- mulw a3, a3, a7
- subw a1, a1, a3
- srli a3, a5, 1
- mulhu a3, a3, a4
- lui a4, %hi(.LCPI17_1)
- ld a4, %lo(.LCPI17_1)(a4)
- srli a3, a3, 1
- mulw a3, a3, a7
- subw a3, a5, a3
- mulhu a4, a6, a4
- srli a4, a4, 2
- li a5, 6
- mulw a4, a4, a5
- subw a4, a6, a4
- sw a4, 12(a0)
- sw a3, 8(a0)
- sw a1, 4(a0)
- sw a2, 0(a0)
+ subw a7, a4, a2
+ srliw a4, a1, 1
+ mulhu a4, a4, a5
+ srli a4, a4, 1
+ li a2, 14
+ mulw a4, a4, a2
+ subw a1, a1, a4
+ srliw a4, a3, 1
+ mulhu a4, a4, a5
+ srli a4, a4, 1
+ mulw a4, a4, a2
+ subw a3, a3, a4
+ srliw a4, a6, 1
+ mulhu a4, a4, a5
+ srli a4, a4, 1
+ mulw a2, a4, a2
+ subw a2, a6, a2
+ sw a2, 8(a0)
+ sw a3, 4(a0)
+ sw a1, 0(a0)
+ sw a7, 12(a0)
ret
.Lfunc_end17:
.size ur1414146, .Lfunc_end17-ur1414146
@@ -788,48 +806,56 @@ uq7777: # @uq7777
.type ur7777,@function
ur7777: # @ur7777
# %bb.0: # %entry
- lwu a2, 0(a1)
- lui a3, %hi(.LCPI21_0)
- ld a3, %lo(.LCPI21_0)(a3)
- lwu a6, 12(a1)
- lwu a7, 8(a1)
- lwu a1, 4(a1)
- mulhu a4, a2, a3
- sub a5, a2, a4
- srli a5, a5, 1
- add a4, a4, a5
- srli a4, a4, 2
- slliw a5, a4, 3
- subw a4, a4, a5
- addw a2, a2, a4
- mulhu a4, a1, a3
- sub a5, a1, a4
+ lw a6, 12(a1)
+ lw a7, 8(a1)
+ slli a4, a6, 32
+ lw t2, 4(a1)
+ srli t0, a4, 32
+ slli a2, a7, 32
+ srli t1, a2, 32
+ slli a3, t2, 32
+ lw a1, 0(a1)
+ lui a4, %hi(.LCPI21_0)
+ ld a4, %lo(.LCPI21_0)(a4)
+ srli a3, a3, 32
+ slli a2, a1, 32
+ srli a2, a2, 32
+ mulhu a5, a2, a4
+ sub a2, a2, a5
+ srli a2, a2, 1
+ add a2, a2, a5
+ srli a2, a2, 2
+ slliw a5, a2, 3
+ subw a2, a2, a5
+ addw a1, a1, a2
+ mulhu a2, a3, a4
+ sub a3, a3, a2
+ srli a3, a3, 1
+ add a2, a2, a3
+ srli a2, a2, 2
+ slliw a3, a2, 3
+ subw a2, a2, a3
+ addw a2, t2, a2
+ mulhu a3, t1, a4
+ sub a5, t1, a3
srli a5, a5, 1
- add a4, a4, a5
- srli a4, a4, 2
- slliw a5, a4, 3
- subw a4, a4, a5
- addw a1, a1, a4
- mulhu a4, a7, a3
- sub a5, a7, a4
+ add a3, a3, a5
+ srli a3, a3, 2
+ slliw a5, a3, 3
+ subw a3, a3, a5
+ addw a3, a7, a3
+ mulhu a4, t0, a4
+ sub a5, t0, a4
srli a5, a5, 1
add a4, a4, a5
srli a4, a4, 2
slliw a5, a4, 3
subw a4, a4, a5
- addw a4, a7, a4
- mulhu a3, a6, a3
- sub a5, a6, a3
- srli a5, a5, 1
- add a3, a3, a5
- srli a3, a3, 2
- slliw a5, a3, 3
- subw a3, a3, a5
- addw a3, a6, a3
- sw a3, 12(a0)
- sw a4, 8(a0)
- sw a1, 4(a0)
- sw a2, 0(a0)
+ addw a4, a6, a4
+ sw a4, 12(a0)
+ sw a3, 8(a0)
+ sw a2, 4(a0)
+ sw a1, 0(a0)
ret
.Lfunc_end21:
.size ur7777, .Lfunc_end21-ur7777
@@ -931,43 +957,37 @@ sr7777: # @sr7777
.type main,@function
main: # @main
# %bb.0: # %entry
- addi sp, sp, -144
- sd ra, 136(sp) # 8-byte Folded Spill
- sd s0, 128(sp) # 8-byte Folded Spill
- sd s1, 120(sp) # 8-byte Folded Spill
- sd s2, 112(sp) # 8-byte Folded Spill
- sd s3, 104(sp) # 8-byte Folded Spill
- sd s4, 96(sp) # 8-byte Folded Spill
- sd s5, 88(sp) # 8-byte Folded Spill
- sd s6, 80(sp) # 8-byte Folded Spill
- sd s7, 72(sp) # 8-byte Folded Spill
- sd s8, 64(sp) # 8-byte Folded Spill
- sd s9, 56(sp) # 8-byte Folded Spill
- sd s10, 48(sp) # 8-byte Folded Spill
- sd s11, 40(sp) # 8-byte Folded Spill
+ addi sp, sp, -128
+ sd ra, 120(sp) # 8-byte Folded Spill
+ sd s0, 112(sp) # 8-byte Folded Spill
+ sd s1, 104(sp) # 8-byte Folded Spill
+ sd s2, 96(sp) # 8-byte Folded Spill
+ sd s3, 88(sp) # 8-byte Folded Spill
+ sd s4, 80(sp) # 8-byte Folded Spill
+ sd s5, 72(sp) # 8-byte Folded Spill
+ sd s6, 64(sp) # 8-byte Folded Spill
+ sd s7, 56(sp) # 8-byte Folded Spill
+ sd s8, 48(sp) # 8-byte Folded Spill
+ sd s9, 40(sp) # 8-byte Folded Spill
li a0, 0
li s3, 1
lui a1, %hi(u)
addi s2, a1, %lo(u)
- addi s1, sp, 16
- lui a1, 171
- addiw a1, a1, -1365
- slli a1, a1, 12
- addi s4, a1, -1365
+ addi s4, sp, 16
lui a1, 699051
addiw a1, a1, -1365
- slli s5, a1, 32
+ slli s1, a1, 32
lui a1, 838861
addiw a1, a1, -819
- slli s6, a1, 32
- li s7, 6
+ slli s5, a1, 32
+ li s6, 6
lui a1, 299593
slli a1, a1, 1
- addi s8, a1, 1171
- li s9, 14
+ addi s7, a1, 1171
+ li s8, 14
lui a1, 149797
- addiw s10, a1, -1755
- slli s11, s10, 32
+ addiw a1, a1, -1755
+ slli s9, a1, 32
.LBB24_1: # %for.body
# =>This Inner Loop Header: Depth=1
slli a0, a0, 4
@@ -975,9 +995,9 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq4444
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- srli a0, a0, 2
+ srliw a0, a0, 2
bne a1, a0, .LBB24_101
# %bb.2: # %lor.lhs.false
# in Loop: Header=BB24_1 Depth=1
@@ -989,9 +1009,9 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a0, a0, 2
+ srliw a0, a0, 2
bne a1, a0, .LBB24_101
# %bb.4: # %lor.lhs.false19
# in Loop: Header=BB24_1 Depth=1
@@ -1006,7 +1026,7 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur4444
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
andi a0, a0, 3
bne a1, a0, .LBB24_101
@@ -1020,7 +1040,7 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
andi a0, a0, 3
bne a1, a0, .LBB24_101
@@ -1050,9 +1070,9 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a0, a0, 1
+ srliw a0, a0, 1
bne a1, a0, .LBB24_101
# %bb.12: # %lor.lhs.false90
# in Loop: Header=BB24_1 Depth=1
@@ -1079,7 +1099,7 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
andi a0, a0, 1
bne a1, a0, .LBB24_101
@@ -1096,9 +1116,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq3333
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.18: # %lor.lhs.false145
@@ -1106,16 +1127,17 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a0, a0, 32
- mulhu a0, a0, s5
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.19: # %if.end154
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.20: # %lor.lhs.false162
@@ -1123,7 +1145,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a0, a0, 32
- mulhu a0, a0, s5
+ mulhu a0, a0, s1
srli a0, a0, 33
bne a1, a0, .LBB24_101
# %bb.21: # %if.end171
@@ -1133,9 +1155,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur3333
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1146,7 +1169,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s5
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1156,9 +1179,10 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1169,7 +1193,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s5
+ mulhu a2, a2, s1
srli a2, a2, 33
slliw a3, a2, 1
addw a2, a2, a3
@@ -1182,9 +1206,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq6565
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.26: # %lor.lhs.false217
@@ -1192,16 +1217,17 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a0, a0, 32
- mulhu a0, a0, s6
+ mulhu a0, a0, s5
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.27: # %if.end226
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a0, a0, s4
+ slli a0, a0, 32
+ mulhu a0, a0, s1
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.28: # %lor.lhs.false234
@@ -1209,7 +1235,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a0, a0, 32
- mulhu a0, a0, s6
+ mulhu a0, a0, s5
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.29: # %if.end243
@@ -1219,11 +1245,12 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur6565
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 34
- mulw a2, a2, s7
+ mulw a2, a2, s6
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.30: # %lor.lhs.false253
@@ -1231,7 +1258,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s6
+ mulhu a2, a2, s5
srli a2, a2, 34
slliw a3, a2, 2
addw a2, a2, a3
@@ -1241,11 +1268,12 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s4
+ slli a2, a0, 32
+ mulhu a2, a2, s1
srli a2, a2, 34
- mulw a2, a2, s7
+ mulw a2, a2, s6
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.32: # %lor.lhs.false270
@@ -1253,7 +1281,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s6
+ mulhu a2, a2, s5
srli a2, a2, 34
slliw a3, a2, 2
addw a2, a2, a3
@@ -1266,10 +1294,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq1414146
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- srli a0, a0, 1
- mul a0, a0, s8
+ srliw a0, a0, 1
+ mul a0, a0, s7
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.34: # %lor.lhs.false289
@@ -1277,17 +1305,17 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a0, a0, 32
- mulhu a0, a0, s5
+ mulhu a0, a0, s1
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.35: # %if.end298
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a0, a0, 1
- mul a0, a0, s8
+ srliw a0, a0, 1
+ mul a0, a0, s7
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.36: # %lor.lhs.false306
@@ -1295,7 +1323,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
srliw a0, a0, 1
- mul a0, a0, s8
+ mul a0, a0, s7
srli a0, a0, 34
bne a1, a0, .LBB24_101
# %bb.37: # %if.end315
@@ -1305,12 +1333,12 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur1414146
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- srli a2, a0, 1
- mul a2, a2, s8
+ srliw a2, a0, 1
+ mul a2, a2, s7
srli a2, a2, 34
- mulw a2, a2, s9
+ mulw a2, a2, s8
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.38: # %lor.lhs.false325
@@ -1318,21 +1346,21 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s5
+ mulhu a2, a2, s1
srli a2, a2, 34
- mulw a2, a2, s7
+ mulw a2, a2, s6
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.39: # %if.end334
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- srli a2, a0, 1
- mul a2, a2, s8
+ srliw a2, a0, 1
+ mul a2, a2, s7
srli a2, a2, 34
- mulw a2, a2, s9
+ mulw a2, a2, s8
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.40: # %lor.lhs.false342
@@ -1340,9 +1368,9 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
srliw a2, a0, 1
- mul a2, a2, s8
+ mul a2, a2, s7
srli a2, a2, 34
- mulw a2, a2, s9
+ mulw a2, a2, s8
subw a0, a0, a2
bne a1, a0, .LBB24_101
# %bb.41: # %if.end351
@@ -1352,9 +1380,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call uq7777
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1366,7 +1395,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1377,9 +1406,10 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1391,7 +1421,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a0, a0, a2
srliw a0, a0, 1
@@ -1405,9 +1435,10 @@ main: # @main
addi a0, sp, 16
mv a1, s0
call ur7777
- lwu a0, 0(s0)
+ lw a0, 0(s0)
lw a1, 16(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1422,7 +1453,7 @@ main: # @main
lw a0, 12(s0)
lw a1, 28(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1436,9 +1467,10 @@ main: # @main
# in Loop: Header=BB24_1 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 24(sp)
- mul a2, a0, s10
+ slli a2, a0, 32
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1453,7 +1485,7 @@ main: # @main
lw a0, 4(s0)
lw a1, 20(sp)
slli a2, a0, 32
- mulhu a2, a2, s11
+ mulhu a2, a2, s9
srli a2, a2, 32
subw a3, a0, a2
srliw a3, a3, 1
@@ -1505,8 +1537,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 12(s0)
lw a1, 12(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
addw a0, a0, a2
sraiw a0, a0, 2
bne a1, a0, .LBB24_101
@@ -1525,8 +1557,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
addw a0, a0, a2
sraiw a0, a0, 2
bne a1, a0, .LBB24_101
@@ -1549,8 +1581,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 12(s0)
lw a1, 12(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
add a2, a2, a0
andi a2, a2, -4
subw a0, a0, a2
@@ -1571,8 +1603,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
add a2, a2, a0
andi a2, a2, -4
subw a0, a0, a2
@@ -1591,8 +1623,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 12(s0)
lw a1, 12(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 29
+ slli a2, a0, 1
+ srli a2, a2, 61
addw a0, a0, a2
sraiw a0, a0, 3
bne a1, a0, .LBB24_101
@@ -1600,9 +1632,9 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 8(sp)
- srli a2, a0, 31
+ srliw a2, a0, 31
addw a0, a0, a2
sraiw a0, a0, 1
bne a1, a0, .LBB24_101
@@ -1610,8 +1642,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
addw a0, a0, a2
sraiw a0, a0, 2
bne a1, a0, .LBB24_101
@@ -1638,9 +1670,9 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
#APP
#NO_APP
- lwu a0, 8(s0)
+ lw a0, 8(s0)
lw a1, 8(sp)
- srli a2, a0, 31
+ srliw a2, a0, 31
add a2, a2, a0
andi a2, a2, -2
subw a0, a0, a2
@@ -1649,8 +1681,8 @@ main: # @main
# in Loop: Header=BB24_51 Depth=1
lw a0, 4(s0)
lw a1, 4(sp)
- sraiw a2, a0, 31
- srliw a2, a2, 30
+ slli a2, a0, 1
+ srli a2, a2, 62
add a2, a2, a0
andi a2, a2, -4
subw a0, a0, a2
@@ -2079,20 +2111,18 @@ main: # @main
bnez a1, .LBB24_51
# %bb.100: # %for.end863
li a0, 0
- ld ra, 136(sp) # 8-byte Folded Reload
- ld s0, 128(sp) # 8-byte Folded Reload
- ld s1, 120(sp) # 8-byte Folded Reload
- ld s2, 112(sp) # 8-byte Folded Reload
- ld s3, 104(sp) # 8-byte Folded Reload
- ld s4, 96(sp) # 8-byte Folded Reload
- ld s5, 88(sp) # 8-byte Folded Reload
- ld s6, 80(sp) # 8-byte Folded Reload
- ld s7, 72(sp) # 8-byte Folded Reload
- ld s8, 64(sp) # 8-byte Folded Reload
- ld s9, 56(sp) # 8-byte Folded Reload
- ld s10, 48(sp) # 8-byte Folded Reload
- ld s11, 40(sp) # 8-byte Folded Reload
- addi sp, sp, 144
+ ld ra, 120(sp) # 8-byte Folded Reload
+ ld s0, 112(sp) # 8-byte Folded Reload
+ ld s1, 104(sp) # 8-byte Folded Reload
+ ld s2, 96(sp) # 8-byte Folded Reload
+ ld s3, 88(sp) # 8-byte Folded Reload
+ ld s4, 80(sp) # 8-byte Folded Reload
+ ld s5, 72(sp) # 8-byte Folded Reload
+ ld s6, 64(sp) # 8-byte Folded Reload
+ ld s7, 56(sp) # 8-byte Folded Reload
+ ld s8, 48(sp) # 8-byte Folded Reload
+ ld s9, 40(sp) # 8-byte Folded Reload
+ addi sp, sp, 128
ret
.LBB24_101: # %if.then
call abort
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment