diff --git a/result/rvb23u64/01ff37e5024a01f7.S b/result/rvb23u64/01ff37e5024a01f7.S index 39ca9880a31..ab9a0a91da5 100644 --- a/result/rvb23u64/01ff37e5024a01f7.S +++ b/result/rvb23u64/01ff37e5024a01f7.S @@ -1,17 +1,17 @@ func0000000000000017: # @func0000000000000017 andi a1, a1, 255 + addi a1, a1, -1 sh3add a0, a1, a0 - addi a0, a0, -8 ret func000000000000001f: # @func000000000000001f andi a1, a1, 255 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func0000000000000006: # @func0000000000000006 andi a1, a1, 255 + addi a1, a1, -1 sh3add a0, a1, a0 - addi a0, a0, -8 ret func000000000000000c: # @func000000000000000c andi a1, a1, 255 @@ -20,8 +20,8 @@ func000000000000000c: # @func000000000000000c ret func000000000000000f: # @func000000000000000f andi a1, a1, 255 + addi a1, a1, 257 sh2add a0, a1, a0 - addi a0, a0, 1028 ret func0000000000000007: # @func0000000000000007 andi a1, a1, 255 @@ -30,13 +30,13 @@ func0000000000000007: # @func0000000000000007 ret func0000000000000014: # @func0000000000000014 andi a1, a1, 255 + addi a1, a1, -1 sh1add a0, a1, a0 - addi a0, a0, -2 ret func0000000000000004: # @func0000000000000004 andi a1, a1, 255 + addi a1, a1, -1 sh3add a0, a1, a0 - addi a0, a0, -8 ret func0000000000000016: # @func0000000000000016 andi a1, a1, 255 diff --git a/result/rvb23u64/0343bfc0716193cd.S b/result/rvb23u64/0343bfc0716193cd.S index 52d6f986053..34a76007c45 100644 --- a/result/rvb23u64/0343bfc0716193cd.S +++ b/result/rvb23u64/0343bfc0716193cd.S @@ -1,5 +1,5 @@ func000000000000003f: # @func000000000000003f add.uw a1, a2, a1 + addi a1, a1, 2 sh2add a0, a1, a0 - addi a0, a0, 8 ret diff --git a/result/rvb23u64/035b4373fc971719.S b/result/rvb23u64/035b4373fc971719.S index c1c7fc9ef87..60d2aa1a0a4 100644 --- a/result/rvb23u64/035b4373fc971719.S +++ b/result/rvb23u64/035b4373fc971719.S @@ -13,14 +13,14 @@ func000000000000000b: # @func000000000000000b func000000000000007f: # @func000000000000007f add a1, a1, a2 slliw a1, a1, 1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func00000000000000ff: # @func00000000000000ff add a1, a1, a2 slliw a1, a1, 1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func00000000000000df: # @func00000000000000df add a1, a1, a2 diff --git a/result/rvb23u64/03f0615d711ae2df.S b/result/rvb23u64/03f0615d711ae2df.S index 4b413c67a1d..a220c640f19 100644 --- a/result/rvb23u64/03f0615d711ae2df.S +++ b/result/rvb23u64/03f0615d711ae2df.S @@ -1,20 +1,26 @@ func00000000000000ff: # @func00000000000000ff add a1, a1, a2 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 108 + addi a0, a0, 100 ret func000000000000007c: # @func000000000000007c add a1, a1, a2 + addi a1, a1, -1 sh3add a0, a1, a0 - addi a0, a0, 24 + addi a0, a0, 32 ret func000000000000005e: # @func000000000000005e add a1, a1, a2 + addi a1, a1, -1 sh2add a0, a1, a0 + addi a0, a0, 4 ret func000000000000004e: # @func000000000000004e add a1, a1, a2 + addi a1, a1, -1 sh2add a0, a1, a0 + addi a0, a0, 4 ret func000000000000000e: # @func000000000000000e add a1, a1, a2 diff --git a/result/rvb23u64/04ebdfef937f463a.S b/result/rvb23u64/04ebdfef937f463a.S index 3e8c19e8755..f48473005bf 100644 --- a/result/rvb23u64/04ebdfef937f463a.S +++ b/result/rvb23u64/04ebdfef937f463a.S @@ -41,8 +41,9 @@ func0000000000000010: # @func0000000000000010 func000000000000001c: # @func000000000000001c slli a2, a2, 7 add a1, a1, a2 + addi a0, a0, 1 sh1add a0, a0, a1 - addi a0, a0, 22 + addi a0, a0, 20 ret func000000000000007d: # @func000000000000007d add a1, a1, a2 diff --git a/result/rvb23u64/05955c104dd8e720.S b/result/rvb23u64/05955c104dd8e720.S index f46da3f52df..7a2815ea0f2 100644 --- a/result/rvb23u64/05955c104dd8e720.S +++ b/result/rvb23u64/05955c104dd8e720.S @@ -1,7 +1,8 @@ func000000000000002e: # @func000000000000002e add a1, a1, a2 - sh3add a0, a1, a0 - addi a0, a0, 4 + slli a1, a1, 1 + addi a1, a1, 1 + sh2add a0, a1, a0 ret func000000000000007f: # @func000000000000007f add a1, a1, a2 @@ -21,33 +22,33 @@ func0000000000000004: # @func0000000000000004 ret func000000000000000e: # @func000000000000000e add a1, a1, a2 - slli a1, a1, 4 - add a0, a0, a1 - addi a0, a0, 8 + slli a1, a1, 2 + addi a1, a1, 2 + sh2add a0, a1, a0 ret func000000000000006f: # @func000000000000006f add a1, a1, a2 - slli a1, a1, 4 - add a0, a0, a1 - addi a0, a0, 12 + slli a1, a1, 2 + addi a1, a1, 3 + sh2add a0, a1, a0 ret func0000000000000026: # @func0000000000000026 add a1, a1, a2 - slli a1, a1, 4 - add a0, a0, a1 - addi a0, a0, 4 + slli a1, a1, 2 + addi a1, a1, 1 + sh2add a0, a1, a0 ret func0000000000000066: # @func0000000000000066 add a1, a1, a2 - slli a1, a1, 4 - add a0, a0, a1 - addi a0, a0, 12 + slli a1, a1, 2 + addi a1, a1, 3 + sh2add a0, a1, a0 ret func000000000000006e: # @func000000000000006e add a1, a1, a2 - slli a1, a1, 4 - add a0, a0, a1 - addi a0, a0, 4 + slli a1, a1, 2 + addi a1, a1, 1 + sh2add a0, a1, a0 ret func000000000000004e: # @func000000000000004e add a1, a1, a2 diff --git a/result/rvb23u64/05d0db3b553fa62e.S b/result/rvb23u64/05d0db3b553fa62e.S index 254dc6f8753..04ab0500610 100644 --- a/result/rvb23u64/05d0db3b553fa62e.S +++ b/result/rvb23u64/05d0db3b553fa62e.S @@ -1,25 +1,21 @@ func000000000000000e: # @func000000000000000e - slli a1, a1, 2 - ori a1, a1, 4 - add a0, a0, a1 + ori a1, a1, 1 + sh2add a0, a1, a0 addi a0, a0, -8 ret func000000000000000f: # @func000000000000000f - slli a1, a1, 1 - ori a1, a1, 2 - add a0, a0, a1 + ori a1, a1, 1 + sh1add a0, a1, a0 addi a0, a0, -4 ret func0000000000000006: # @func0000000000000006 - slli a1, a1, 2 - ori a1, a1, 4 - add a0, a0, a1 + ori a1, a1, 1 + sh2add a0, a1, a0 addi a0, a0, 8 ret func000000000000001f: # @func000000000000001f - slli a1, a1, 1 - ori a1, a1, 2 - add a0, a0, a1 + ori a1, a1, 1 + sh1add a0, a1, a0 addi a0, a0, 8 ret func000000000000000c: # @func000000000000000c @@ -29,14 +25,12 @@ func000000000000000c: # @func000000000000000c addi a0, a0, -48 ret func0000000000000002: # @func0000000000000002 - slli a1, a1, 2 - addi a1, a1, 4 - ori a1, a1, 252 - add a0, a0, a1 + addi a1, a1, 1 + ori a1, a1, 63 + sh2add a0, a1, a0 ret func0000000000000000: # @func0000000000000000 - slli a1, a1, 3 - addi a1, a1, 8 - ori a1, a1, 8 - add a0, a0, a1 + addi a1, a1, 1 + ori a1, a1, 1 + sh3add a0, a1, a0 ret diff --git a/result/rvb23u64/0613c9810fd25d1b.S b/result/rvb23u64/0613c9810fd25d1b.S index 8542af55cf7..f94b1ec7619 100644 --- a/result/rvb23u64/0613c9810fd25d1b.S +++ b/result/rvb23u64/0613c9810fd25d1b.S @@ -20,8 +20,8 @@ func0000000000000008: # @func0000000000000008 ret func00000000000000bf: # @func00000000000000bf slliw a1, a1, 1 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func000000000000009f: # @func000000000000009f slliw a1, a1, 2 @@ -35,8 +35,8 @@ func00000000000000cb: # @func00000000000000cb ret func000000000000003c: # @func000000000000003c slliw a1, a1, 1 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func000000000000009b: # @func000000000000009b slli a1, a1, 1 @@ -46,6 +46,6 @@ func000000000000009b: # @func000000000000009b ret func000000000000007f: # @func000000000000007f slliw a1, a1, 1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret diff --git a/result/rvb23u64/07b726cd1fc09471.S b/result/rvb23u64/07b726cd1fc09471.S index 8f4d5b2d524..851c6033166 100644 --- a/result/rvb23u64/07b726cd1fc09471.S +++ b/result/rvb23u64/07b726cd1fc09471.S @@ -5,8 +5,8 @@ func000000000000000c: # @func000000000000000c ret func000000000000001c: # @func000000000000001c andi a1, a1, 255 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func000000000000000b: # @func000000000000000b slli a1, a1, 36 @@ -23,6 +23,6 @@ func000000000000000f: # @func000000000000000f func000000000000001f: # @func000000000000001f slli a1, a1, 40 srli a1, a1, 40 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret diff --git a/result/rvb23u64/07efbe2f157084f1.S b/result/rvb23u64/07efbe2f157084f1.S index 5ecbd078126..1256101165b 100644 --- a/result/rvb23u64/07efbe2f157084f1.S +++ b/result/rvb23u64/07efbe2f157084f1.S @@ -1,14 +1,14 @@ func000000000000001f: # @func000000000000001f - lui a2, 16 - addiw a2, a2, -2 - and a1, a1, a2 - lui a2, 97 + ori a1, a1, 1 + zext.h a1, a1 sh1add a0, a1, a0 - addiw a1, a2, 1986 + lui a1, 97 + addiw a1, a1, 1984 add a0, a0, a1 ret func0000000000000013: # @func0000000000000013 andi a1, a1, 240 + addi a1, a1, 8 sh3add a0, a1, a0 - addi a0, a0, 88 + addi a0, a0, 24 ret diff --git a/result/rvb23u64/0a18cc9d84ff43d2.S b/result/rvb23u64/0a18cc9d84ff43d2.S index 441f456e55c..953ee94c6e5 100644 --- a/result/rvb23u64/0a18cc9d84ff43d2.S +++ b/result/rvb23u64/0a18cc9d84ff43d2.S @@ -10,9 +10,8 @@ func0000000000000016: # @func0000000000000016 ret func000000000000003f: # @func000000000000003f sext.w a2, a2 - slli a1, a1, 4 - sh2add a1, a2, a1 - add a0, a0, a1 + sh2add a1, a1, a2 + sh2add a0, a1, a0 ret func000000000000003c: # @func000000000000003c sext.w a2, a2 @@ -22,13 +21,11 @@ func000000000000003c: # @func000000000000003c ret func0000000000000026: # @func0000000000000026 sext.w a2, a2 - slli a1, a1, 4 - sh2add a1, a2, a1 - add a0, a0, a1 + sh2add a1, a1, a2 + sh2add a0, a1, a0 ret func000000000000002e: # @func000000000000002e sext.w a2, a2 - slli a1, a1, 5 - sh2add a1, a2, a1 - add a0, a0, a1 + sh3add a1, a1, a2 + sh2add a0, a1, a0 ret diff --git a/result/rvb23u64/0aa5b4efbb6224ba.S b/result/rvb23u64/0aa5b4efbb6224ba.S index d4f3cf05620..607a4eb9d79 100644 --- a/result/rvb23u64/0aa5b4efbb6224ba.S +++ b/result/rvb23u64/0aa5b4efbb6224ba.S @@ -20,8 +20,8 @@ func0000000000000012: # @func0000000000000012 ret func0000000000000004: # @func0000000000000004 snez a1, a1 + addi a1, a1, -1 sh2add a0, a1, a0 - addi a0, a0, -4 ret func0000000000000028: # @func0000000000000028 not a1, a1 diff --git a/result/rvb23u64/0aa73f34b0f18224.S b/result/rvb23u64/0aa73f34b0f18224.S index 293d9f72093..86ebc36675f 100644 --- a/result/rvb23u64/0aa73f34b0f18224.S +++ b/result/rvb23u64/0aa73f34b0f18224.S @@ -2,6 +2,6 @@ func000000000000001a: # @func000000000000001a sext.w a2, a2 sh1add a2, a2, a2 sh2add a0, a2, a0 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret diff --git a/result/rvb23u64/0d2aad7af9e160bb.S b/result/rvb23u64/0d2aad7af9e160bb.S index b09db00be7f..aaf6e793f59 100644 --- a/result/rvb23u64/0d2aad7af9e160bb.S +++ b/result/rvb23u64/0d2aad7af9e160bb.S @@ -1,27 +1,30 @@ func000000000000002e: # @func000000000000002e - ori a1, a1, 4 - add a0, a0, a1 + srli a1, a1, 2 + ori a1, a1, 1 + sh2add a0, a1, a0 addi a0, a0, -8 ret func000000000000002f: # @func000000000000002f - ori a1, a1, 2 - add a0, a0, a1 + srli a1, a1, 1 + ori a1, a1, 1 + sh1add a0, a1, a0 addi a0, a0, -4 ret func000000000000000e: # @func000000000000000e - ori a1, a1, 4 - andi a1, a1, -4 - add a0, a0, a1 + srli a1, a1, 2 + ori a1, a1, 1 + sh2add a0, a1, a0 addi a0, a0, -8 ret func000000000000002c: # @func000000000000002c - ori a1, a1, 4 - add a0, a0, a1 + srli a1, a1, 2 + ori a1, a1, 1 + sh2add a0, a1, a0 addi a0, a0, -8 ret func000000000000000c: # @func000000000000000c - ori a1, a1, 8 - andi a1, a1, -8 - add a0, a0, a1 + srli a1, a1, 3 + ori a1, a1, 1 + sh3add a0, a1, a0 addi a0, a0, -16 ret diff --git a/result/rvb23u64/0fc8722942f9e733.S b/result/rvb23u64/0fc8722942f9e733.S index 6db35413ae6..642ae078ffb 100644 --- a/result/rvb23u64/0fc8722942f9e733.S +++ b/result/rvb23u64/0fc8722942f9e733.S @@ -1,8 +1,8 @@ func000000000000001f: # @func000000000000001f andi a2, a2, 255 - slli a1, a1, 10 - sh2add a1, a2, a1 - add a0, a0, a1 + slli a1, a1, 8 + or a1, a1, a2 + sh2add a0, a1, a0 ret func0000000000000016: # @func0000000000000016 andi a2, a2, 255 diff --git a/result/rvb23u64/10e73c89436b900b.S b/result/rvb23u64/10e73c89436b900b.S index 06c717fee44..9aafbe6df37 100644 --- a/result/rvb23u64/10e73c89436b900b.S +++ b/result/rvb23u64/10e73c89436b900b.S @@ -5,10 +5,10 @@ func000000000000001f: # @func000000000000001f addi a0, a0, 1 ret func000000000000001c: # @func000000000000001c - srli a1, a1, 22 - andi a1, a1, 124 - add a0, a0, a1 - addi a0, a0, 8 + slli a1, a1, 35 + srli a1, a1, 59 + addi a1, a1, 2 + sh2add a0, a1, a0 ret func000000000000000c: # @func000000000000000c srli a1, a1, 13 diff --git a/result/rvb23u64/117835588eb5fb57.S b/result/rvb23u64/117835588eb5fb57.S index e363be4f15e..8cc8cd72a60 100644 --- a/result/rvb23u64/117835588eb5fb57.S +++ b/result/rvb23u64/117835588eb5fb57.S @@ -4,11 +4,13 @@ func000000000000001f: # @func000000000000001f addi a0, a0, 48 ret func000000000000001b: # @func000000000000001b + addi a1, a1, 1 sh1add a1, a1, a1 add a0, a0, a1 - addi a0, a0, 5 + addi a0, a0, 2 ret func0000000000000013: # @func0000000000000013 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 6 + addi a0, a0, 2 ret diff --git a/result/rvb23u64/12f495358b06cd44.S b/result/rvb23u64/12f495358b06cd44.S index 3183f42d43f..e9775d108c1 100644 --- a/result/rvb23u64/12f495358b06cd44.S +++ b/result/rvb23u64/12f495358b06cd44.S @@ -1,6 +1,7 @@ func0000000000000281: # @func0000000000000281 - sh3add a1, a2, a1 - addi a1, a1, 4 + slli a2, a2, 1 + addi a2, a2, 1 + sh2add a1, a2, a1 xor a0, a0, a1 seqz a0, a0 ret diff --git a/result/rvb23u64/143e3566cc3a05f5.S b/result/rvb23u64/143e3566cc3a05f5.S index ab70f2de60c..f115b7c0993 100644 --- a/result/rvb23u64/143e3566cc3a05f5.S +++ b/result/rvb23u64/143e3566cc3a05f5.S @@ -25,8 +25,8 @@ func0000000000000004: # @func0000000000000004 ret func000000000000000c: # @func000000000000000c sext.w a1, a1 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func0000000000000008: # @func0000000000000008 addiw a1, a1, 1 @@ -34,8 +34,8 @@ func0000000000000008: # @func0000000000000008 ret func000000000000000e: # @func000000000000000e sext.w a1, a1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func0000000000000003: # @func0000000000000003 addiw a1, a1, -1 diff --git a/result/rvb23u64/1468639365cf0ec4.S b/result/rvb23u64/1468639365cf0ec4.S index 07663577a21..8255caf1445 100644 --- a/result/rvb23u64/1468639365cf0ec4.S +++ b/result/rvb23u64/1468639365cf0ec4.S @@ -8,8 +8,8 @@ func00000000000000f0: # @func00000000000000f0 func00000000000000d4: # @func00000000000000d4 srli a2, a2, 4 sub a2, a2, a1 + addi a2, a2, 1 sh1add a0, a2, a0 - addi a0, a0, 2 ret func00000000000000d0: # @func00000000000000d0 srli a2, a2, 4 diff --git a/result/rvb23u64/14a75711615626b1.S b/result/rvb23u64/14a75711615626b1.S index 59faf194009..9a05db9d17e 100644 --- a/result/rvb23u64/14a75711615626b1.S +++ b/result/rvb23u64/14a75711615626b1.S @@ -14,9 +14,9 @@ func0000000000000036: # @func0000000000000036 addi a0, a0, -1 ret func000000000000003f: # @func000000000000003f - slli a1, a1, 4 - add a0, a0, a1 - addi a0, a0, 32 + slli a1, a1, 1 + addi a1, a1, 4 + sh3add a0, a1, a0 ret func000000000000000f: # @func000000000000000f slli a1, a1, 5 @@ -28,12 +28,14 @@ func0000000000000003: # @func0000000000000003 addi a0, a0, 2 ret func000000000000002f: # @func000000000000002f - sh3add a0, a1, a0 - addi a0, a0, 16 + slli a1, a1, 1 + addi a1, a1, 4 + sh2add a0, a1, a0 ret func0000000000000017: # @func0000000000000017 - sh3add a0, a1, a0 - addi a0, a0, 8 + slli a1, a1, 1 + addi a1, a1, 2 + sh2add a0, a1, a0 ret func000000000000002c: # @func000000000000002c sh1add a0, a1, a0 diff --git a/result/rvb23u64/14c9dcf5e942ff6a.S b/result/rvb23u64/14c9dcf5e942ff6a.S index 89dec724134..00571683601 100644 --- a/result/rvb23u64/14c9dcf5e942ff6a.S +++ b/result/rvb23u64/14c9dcf5e942ff6a.S @@ -1,8 +1,8 @@ func000000000000001f: # @func000000000000001f slli a2, a2, 48 - srli a2, a2, 37 - sh3add a1, a1, a2 - add a0, a0, a1 + srli a2, a2, 40 + or a1, a1, a2 + sh3add a0, a1, a0 ret func000000000000003f: # @func000000000000003f slli a2, a2, 48 diff --git a/result/rvb23u64/15b3f4ddba8c6fe4.S b/result/rvb23u64/15b3f4ddba8c6fe4.S index af3e4692b78..3b872b554cc 100644 --- a/result/rvb23u64/15b3f4ddba8c6fe4.S +++ b/result/rvb23u64/15b3f4ddba8c6fe4.S @@ -1,7 +1,7 @@ func0000000000000034: # @func0000000000000034 sub a2, a2, a1 + addi a2, a2, 1 sh1add a0, a2, a0 - addi a0, a0, 2 ret func0000000000000036: # @func0000000000000036 sub a2, a2, a1 @@ -20,13 +20,13 @@ func0000000000000000: # @func0000000000000000 ret func0000000000000028: # @func0000000000000028 sub a2, a2, a1 + addi a2, a2, 1 sh3add a0, a2, a0 - addi a0, a0, 8 ret func000000000000002a: # @func000000000000002a sub a2, a2, a1 + addi a2, a2, 1 sh3add a0, a2, a0 - addi a0, a0, 8 ret func0000000000000002: # @func0000000000000002 sub a2, a2, a1 @@ -62,8 +62,8 @@ func0000000000000012: # @func0000000000000012 ret func0000000000000008: # @func0000000000000008 sub a2, a2, a1 + addi a2, a2, 1 sh3add a0, a2, a0 - addi a0, a0, 8 ret func000000000000003b: # @func000000000000003b sub a2, a2, a1 @@ -73,13 +73,13 @@ func000000000000003b: # @func000000000000003b ret func000000000000001e: # @func000000000000001e sub a2, a2, a1 + addi a2, a2, 1 sh1add a0, a2, a0 - addi a0, a0, 2 ret func0000000000000032: # @func0000000000000032 sub a2, a2, a1 + addi a2, a2, 1 sh2add a0, a2, a0 - addi a0, a0, 4 ret func0000000000000014: # @func0000000000000014 sub a2, a2, a1 @@ -93,8 +93,8 @@ func000000000000001c: # @func000000000000001c ret func000000000000000b: # @func000000000000000b sub a2, a2, a1 + addi a2, a2, 1 sh3add a0, a2, a0 - addi a0, a0, 8 ret func0000000000000017: # @func0000000000000017 not a1, a1 @@ -105,8 +105,8 @@ func0000000000000017: # @func0000000000000017 ret func0000000000000003: # @func0000000000000003 sub a2, a2, a1 + addi a2, a2, 1 sh3add a0, a2, a0 - addi a0, a0, 8 ret func0000000000000010: # @func0000000000000010 sub a2, a2, a1 @@ -115,18 +115,18 @@ func0000000000000010: # @func0000000000000010 ret func0000000000000020: # @func0000000000000020 sub a2, a2, a1 + addi a2, a2, 1 sh2add a0, a2, a0 - addi a0, a0, 4 ret func0000000000000030: # @func0000000000000030 sub a2, a2, a1 + addi a2, a2, 1 sh2add a0, a2, a0 - addi a0, a0, 4 ret func0000000000000006: # @func0000000000000006 sub a2, a2, a1 + addi a2, a2, 1 sh3add a0, a2, a0 - addi a0, a0, 8 ret func000000000000003c: # @func000000000000003c sub a2, a2, a1 @@ -142,11 +142,11 @@ func000000000000003e: # @func000000000000003e ret func0000000000000018: # @func0000000000000018 sub a2, a2, a1 + addi a2, a2, 1 sh3add a0, a2, a0 - addi a0, a0, 8 ret func000000000000001a: # @func000000000000001a sub a2, a2, a1 + addi a2, a2, 1 sh3add a0, a2, a0 - addi a0, a0, 8 ret diff --git a/result/rvb23u64/1686a2b0ccd433b6.S b/result/rvb23u64/1686a2b0ccd433b6.S index 7f6bcab8127..9ff96b9a911 100644 --- a/result/rvb23u64/1686a2b0ccd433b6.S +++ b/result/rvb23u64/1686a2b0ccd433b6.S @@ -1,7 +1,8 @@ func0000000000000055: # @func0000000000000055 add a0, a0, a1 + addi a0, a0, -48 slli a0, a0, 3 - addiw a0, a0, -432 + addiw a0, a0, -48 ret func0000000000000050: # @func0000000000000050 add a0, a0, a1 @@ -11,18 +12,21 @@ func0000000000000050: # @func0000000000000050 ret func0000000000000040: # @func0000000000000040 add a0, a0, a1 + addi a0, a0, -1 slli a0, a0, 1 - addiw a0, a0, 3 + addiw a0, a0, 5 ret func0000000000000000: # @func0000000000000000 add a0, a0, a1 + addi a0, a0, -1 slli a0, a0, 1 - addiw a0, a0, 2 + addiw a0, a0, 4 ret func000000000000005d: # @func000000000000005d add a0, a0, a1 + addi a0, a0, -48 slli a0, a0, 3 - addiw a0, a0, -432 + addiw a0, a0, -48 ret func0000000000000005: # @func0000000000000005 add a0, a0, a1 @@ -33,5 +37,7 @@ func0000000000000005: # @func0000000000000005 ret func000000000000000d: # @func000000000000000d add a0, a0, a1 - slliw a0, a0, 3 + addi a0, a0, 1 + slli a0, a0, 3 + addiw a0, a0, -8 ret diff --git a/result/rvb23u64/17273310675415c8.S b/result/rvb23u64/17273310675415c8.S index 820e17f3e62..3d6917c3906 100644 --- a/result/rvb23u64/17273310675415c8.S +++ b/result/rvb23u64/17273310675415c8.S @@ -51,13 +51,16 @@ func000000000000001f: # @func000000000000001f addi a0, a0, 24 ret func000000000000007c: # @func000000000000007c - slli a1, a1, 4 - add a0, a0, a1 - addi a0, a0, 12 + slli a1, a1, 1 + addi a1, a1, 1 + sh3add a0, a1, a0 + addi a0, a0, 4 ret func0000000000000070: # @func0000000000000070 - sh3add a0, a1, a0 - addi a0, a0, 6 + slli a1, a1, 2 + addi a1, a1, 2 + sh1add a0, a1, a0 + addi a0, a0, 2 ret func000000000000005f: # @func000000000000005f slli a1, a1, 6 diff --git a/result/rvb23u64/1793d78f09b05e1c.S b/result/rvb23u64/1793d78f09b05e1c.S index 3dd04346baf..51613cefe40 100644 --- a/result/rvb23u64/1793d78f09b05e1c.S +++ b/result/rvb23u64/1793d78f09b05e1c.S @@ -6,6 +6,6 @@ func0000000000000012: # @func0000000000000012 ret func0000000000000010: # @func0000000000000010 sltu a1, a1, a2 + addi a1, a1, -1 sh3add a0, a1, a0 - addi a0, a0, -8 ret diff --git a/result/rvb23u64/1866d73e111d643a.S b/result/rvb23u64/1866d73e111d643a.S index 2d8003db0c0..6d5d31b114b 100644 --- a/result/rvb23u64/1866d73e111d643a.S +++ b/result/rvb23u64/1866d73e111d643a.S @@ -1,12 +1,12 @@ func000000000000005c: # @func000000000000005c + addi a2, a2, 1 sh2add a0, a2, a0 - addi a0, a0, 4 ret func0000000000000008: # @func0000000000000008 add a0, a0, a2 addi a0, a0, -1 ret func000000000000005e: # @func000000000000005e + addi a2, a2, 1 sh2add a0, a2, a0 - addi a0, a0, 4 ret diff --git a/result/rvb23u64/1900f323fa12a71a.S b/result/rvb23u64/1900f323fa12a71a.S index c240b40c680..8257a50ff53 100644 --- a/result/rvb23u64/1900f323fa12a71a.S +++ b/result/rvb23u64/1900f323fa12a71a.S @@ -1,7 +1,10 @@ func0000000000000001: # @func0000000000000001 + add a1, a1, a2 + lui a2, 524288 + addi a2, a2, -8 add a1, a1, a2 sh1add a0, a1, a0 - addiw a0, a0, -14 + addiw a0, a0, 2 ret func000000000000000a: # @func000000000000000a add a1, a1, a2 diff --git a/result/rvb23u64/1b6d54e1239a5089.S b/result/rvb23u64/1b6d54e1239a5089.S index b8b1cd6b96e..cd150aa25e0 100644 --- a/result/rvb23u64/1b6d54e1239a5089.S +++ b/result/rvb23u64/1b6d54e1239a5089.S @@ -1,10 +1,12 @@ func00000000000000bb: # @func00000000000000bb - srai a1, a1, 1 - add a0, a0, a1 - addi a0, a0, -4 + srai a1, a1, 3 + addi a1, a1, -2 + sh2add a0, a1, a0 + addi a0, a0, 4 ret func000000000000003b: # @func000000000000003b srai a1, a1, 3 + addi a1, a1, -2 sh2add a0, a1, a0 - addi a0, a0, -4 + addi a0, a0, 4 ret diff --git a/result/rvb23u64/1bcdcf7653d1c096.S b/result/rvb23u64/1bcdcf7653d1c096.S index 7a0738736a5..4a1a5e740c4 100644 --- a/result/rvb23u64/1bcdcf7653d1c096.S +++ b/result/rvb23u64/1bcdcf7653d1c096.S @@ -2,26 +2,30 @@ func00000000000000df: # @func00000000000000df li a3, 168 mul a2, a2, a3 add a1, a1, a2 + addi a0, a0, -1 sh3add a0, a0, a1 - addi a0, a0, 48 + addi a0, a0, 56 ret func00000000000000ff: # @func00000000000000ff + addi a0, a0, 1 sh1add a2, a2, a2 sh2add a0, a2, a0 sh2add a0, a0, a1 - addi a0, a0, 16 + addi a0, a0, 12 ret func00000000000000bf: # @func00000000000000bf sh3add a1, a2, a1 + addi a0, a0, 1 sh2add a0, a0, a1 - addi a0, a0, 12 + addi a0, a0, 8 ret func000000000000009e: # @func000000000000009e + addi a0, a0, -1 li a3, 820 mul a2, a2, a3 add a1, a1, a2 sh2add a0, a0, a1 - addi a0, a0, 16 + addi a0, a0, 20 ret func000000000000009f: # @func000000000000009f add a1, a1, a2 @@ -52,9 +56,10 @@ func000000000000001c: # @func000000000000001c addi a0, a0, 32 ret func00000000000000de: # @func00000000000000de + addi a0, a0, -1 li a3, 152 mul a2, a2, a3 add a1, a1, a2 sh3add a0, a0, a1 - addi a0, a0, 72 + addi a0, a0, 80 ret diff --git a/result/rvb23u64/1c2447f01bb53ae5.S b/result/rvb23u64/1c2447f01bb53ae5.S index 1176e5c397e..ac0e4a569fe 100644 --- a/result/rvb23u64/1c2447f01bb53ae5.S +++ b/result/rvb23u64/1c2447f01bb53ae5.S @@ -1,7 +1,6 @@ func000000000000003b: # @func000000000000003b - slli a1, a1, 3 - ori a1, a1, 8 - add a0, a0, a1 + ori a1, a1, 1 + sh3add a0, a1, a0 addi a0, a0, -12 ret func000000000000003f: # @func000000000000003f @@ -11,8 +10,7 @@ func000000000000003f: # @func000000000000003f addi a0, a0, -32 ret func0000000000000033: # @func0000000000000033 - slli a1, a1, 3 - ori a1, a1, 8 - add a0, a0, a1 + ori a1, a1, 1 + sh3add a0, a1, a0 addi a0, a0, -12 ret diff --git a/result/rvb23u64/1c61b9ebf67d9110.S b/result/rvb23u64/1c61b9ebf67d9110.S index 18d986d4d2c..5325040e9e2 100644 --- a/result/rvb23u64/1c61b9ebf67d9110.S +++ b/result/rvb23u64/1c61b9ebf67d9110.S @@ -1,12 +1,16 @@ func0000000000000120: # @func0000000000000120 srli a1, a1, 3 sub a0, a0, a1 + addi a0, a0, 1 slli a0, a0, 3 + addi a0, a0, -8 ret func000000000000012d: # @func000000000000012d srli a1, a1, 3 sub a0, a0, a1 + addi a0, a0, 1 slli a0, a0, 3 + addi a0, a0, -8 ret func0000000000000170: # @func0000000000000170 not a1, a1 @@ -25,10 +29,14 @@ func000000000000017d: # @func000000000000017d func0000000000000160: # @func0000000000000160 srli a1, a1, 3 sub a0, a0, a1 + addi a0, a0, 1 slli a0, a0, 3 + addi a0, a0, -8 ret func000000000000016d: # @func000000000000016d srli a1, a1, 3 sub a0, a0, a1 + addi a0, a0, 1 slli a0, a0, 3 + addi a0, a0, -8 ret diff --git a/result/rvb23u64/1e4d5cdba8a9eb98.S b/result/rvb23u64/1e4d5cdba8a9eb98.S index a07899932cf..3189c63656f 100644 --- a/result/rvb23u64/1e4d5cdba8a9eb98.S +++ b/result/rvb23u64/1e4d5cdba8a9eb98.S @@ -5,8 +5,7 @@ func000000000000003f: # @func000000000000003f addi a0, a0, 8 ret func000000000000000c: # @func000000000000000c - slli a1, a1, 2 - sh3add a1, a2, a1 - add a0, a0, a1 - addi a0, a0, 64 + sh1add a1, a2, a1 + addi a1, a1, 16 + sh2add a0, a1, a0 ret diff --git a/result/rvb23u64/1e952c8a6dd30aeb.S b/result/rvb23u64/1e952c8a6dd30aeb.S index 5059d89a55d..b7e78bd5897 100644 --- a/result/rvb23u64/1e952c8a6dd30aeb.S +++ b/result/rvb23u64/1e952c8a6dd30aeb.S @@ -13,6 +13,6 @@ func000000000000000b: # @func000000000000000b func000000000000003f: # @func000000000000003f sh1add a1, a1, a1 slliw a1, a1, 1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret diff --git a/result/rvb23u64/1ede49e20d47fa9f.S b/result/rvb23u64/1ede49e20d47fa9f.S index bdd9a0c121d..fd9a106ffcc 100644 --- a/result/rvb23u64/1ede49e20d47fa9f.S +++ b/result/rvb23u64/1ede49e20d47fa9f.S @@ -1,9 +1,9 @@ func0000000000000000: # @func0000000000000000 li a3, 1 maxu a2, a2, a3 + addi a2, a2, -1 sh2add a0, a1, a0 sh2add a0, a2, a0 - addi a0, a0, -4 ret func000000000000000a: # @func000000000000000a li a3, 1 diff --git a/result/rvb23u64/1fb3ce5c696d7758.S b/result/rvb23u64/1fb3ce5c696d7758.S index 3f5bf954d06..348183a70eb 100644 --- a/result/rvb23u64/1fb3ce5c696d7758.S +++ b/result/rvb23u64/1fb3ce5c696d7758.S @@ -1,6 +1,6 @@ func0000000000000016: # @func0000000000000016 sext.w a2, a2 add a1, a1, a2 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret diff --git a/result/rvb23u64/202bb0b90c7984d5.S b/result/rvb23u64/202bb0b90c7984d5.S index b041aa318dc..d2830d3fe06 100644 --- a/result/rvb23u64/202bb0b90c7984d5.S +++ b/result/rvb23u64/202bb0b90c7984d5.S @@ -1,7 +1,7 @@ func000000000000001b: # @func000000000000001b sh1add a0, a2, a0 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func000000000000007e: # @func000000000000007e sh1add a0, a2, a0 @@ -9,25 +9,25 @@ func000000000000007e: # @func000000000000007e addi a0, a0, 1 ret func000000000000001a: # @func000000000000001a + addi a1, a1, 1 sh2add a1, a2, a1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func000000000000003f: # @func000000000000003f + addi a1, a1, 1 sh2add a1, a2, a1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func0000000000000010: # @func0000000000000010 + addi a1, a1, 3 sh2add a1, a2, a1 sh2add a0, a1, a0 - addi a0, a0, 12 ret func0000000000000070: # @func0000000000000070 slli a2, a2, 7 add a0, a0, a2 + addi a1, a1, 16 sh2add a0, a1, a0 - addi a0, a0, 64 ret func000000000000007f: # @func000000000000007f sh2add a0, a2, a0 @@ -36,6 +36,6 @@ func000000000000007f: # @func000000000000007f ret func000000000000003b: # @func000000000000003b sh2add a0, a2, a0 + addi a1, a1, 1 sh1add a0, a1, a0 - addi a0, a0, 2 ret diff --git a/result/rvb23u64/214c1c2c05efde6e.S b/result/rvb23u64/214c1c2c05efde6e.S index e2fbd774eff..91eaa422433 100644 --- a/result/rvb23u64/214c1c2c05efde6e.S +++ b/result/rvb23u64/214c1c2c05efde6e.S @@ -1,6 +1,4 @@ func0000000000000007: # @func0000000000000007 - srliw a1, a1, 1 - slli a1, a1, 1 - sh3add a0, a1, a0 - addi a0, a0, 8 + ori a1, a1, 1 + sh3add.uw a0, a1, a0 ret diff --git a/result/rvb23u64/2199f3ac9acb3c4c.S b/result/rvb23u64/2199f3ac9acb3c4c.S index b39262d8740..4999efaf589 100644 --- a/result/rvb23u64/2199f3ac9acb3c4c.S +++ b/result/rvb23u64/2199f3ac9acb3c4c.S @@ -8,6 +8,6 @@ func000000000000000f: # @func000000000000000f andi a1, a1, 3 addi a1, a1, -2 seqz a1, a1 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret diff --git a/result/rvb23u64/22145562082b992b.S b/result/rvb23u64/22145562082b992b.S index d8fd12f8170..f97aa1e26e2 100644 --- a/result/rvb23u64/22145562082b992b.S +++ b/result/rvb23u64/22145562082b992b.S @@ -21,8 +21,9 @@ func000000000000008b: # @func000000000000008b ret func00000000000000c0: # @func00000000000000c0 sub a2, a2, a1 + addi a2, a2, 3 sh2add a0, a2, a0 - addi a0, a0, 4 + addi a0, a0, -8 ret func0000000000000008: # @func0000000000000008 sub a2, a2, a1 diff --git a/result/rvb23u64/2297eeb19615ad04.S b/result/rvb23u64/2297eeb19615ad04.S index 0e57c1c6251..e2f5d93314a 100644 --- a/result/rvb23u64/2297eeb19615ad04.S +++ b/result/rvb23u64/2297eeb19615ad04.S @@ -1,14 +1,13 @@ func000000000000000f: # @func000000000000000f andi a1, a1, 255 + addi a1, a1, 256 sh2add a0, a1, a0 - addi a0, a0, 1024 ret func000000000000000c: # @func000000000000000c andi a1, a1, 127 + li a2, 1312 + sh2add a1, a2, a1 sh2add a0, a1, a0 - lui a1, 5 - addiw a1, a1, 512 - add a0, a0, a1 ret func000000000000000b: # @func000000000000000b ori a1, a1, 13 diff --git a/result/rvb23u64/22cc3479e318d53a.S b/result/rvb23u64/22cc3479e318d53a.S index 957ac9be6cc..d724c325336 100644 --- a/result/rvb23u64/22cc3479e318d53a.S +++ b/result/rvb23u64/22cc3479e318d53a.S @@ -1,7 +1,7 @@ func0000000000000017: # @func0000000000000017 sub a1, a1, a2 + addi a1, a1, 4 sh3add a0, a1, a0 - addi a0, a0, 32 ret func0000000000000002: # @func0000000000000002 sub a1, a1, a2 @@ -36,13 +36,13 @@ func0000000000000007: # @func0000000000000007 ret func0000000000000037: # @func0000000000000037 sub a1, a1, a2 + addi a1, a1, -2 sh2add a0, a1, a0 - addi a0, a0, -8 ret func0000000000000016: # @func0000000000000016 sub a1, a1, a2 + addi a1, a1, 3 sh2add a0, a1, a0 - addi a0, a0, 12 ret func0000000000000000: # @func0000000000000000 sub a1, a1, a2 diff --git a/result/rvb23u64/23d58ce774d11a59.S b/result/rvb23u64/23d58ce774d11a59.S index 6380fd1ebdb..19ec9a1f30f 100644 --- a/result/rvb23u64/23d58ce774d11a59.S +++ b/result/rvb23u64/23d58ce774d11a59.S @@ -1,28 +1,33 @@ func000000000000001c: # @func000000000000001c + addi a0, a0, -1 li a3, 272 mul a2, a2, a3 add a1, a1, a2 sh3add a0, a0, a1 - addi a0, a0, 16 + addi a0, a0, 24 ret func00000000000000de: # @func00000000000000de + addi a0, a0, -1 slli a3, a2, 8 sh3add a2, a2, a3 add a1, a1, a2 sh2add a0, a0, a1 - addi a0, a0, 124 + addi a0, a0, 128 ret func00000000000000ff: # @func00000000000000ff slli a3, a2, 8 sh3add a2, a2, a3 add a1, a1, a2 + addi a0, a0, 1 sh2add a0, a0, a1 - addi a0, a0, 232 + addi a0, a0, 228 ret func00000000000000cf: # @func00000000000000cf slli a2, a2, 6 add a1, a1, a2 + addi a0, a0, -1 sh2add a0, a0, a1 + addi a0, a0, 4 ret func000000000000009f: # @func000000000000009f li a3, 552 @@ -33,9 +38,10 @@ func000000000000009f: # @func000000000000009f addi a0, a0, 256 ret func000000000000003c: # @func000000000000003c + addi a0, a0, 1 li a3, 1216 mul a2, a2, a3 add a1, a1, a2 sh3add a0, a0, a1 - addi a0, a0, 1096 + addi a0, a0, 1088 ret diff --git a/result/rvb23u64/241e8266236ea44c.S b/result/rvb23u64/241e8266236ea44c.S index c76d70a20fc..d8d6e75629b 100644 --- a/result/rvb23u64/241e8266236ea44c.S +++ b/result/rvb23u64/241e8266236ea44c.S @@ -3,7 +3,7 @@ func0000000000000006: # @func0000000000000006 addi a0, a0, -1 ret func0000000000000014: # @func0000000000000014 - slli a1, a1, 4 - add a0, a0, a1 - addi a0, a0, -8 + slli a1, a1, 1 + addi a1, a1, -1 + sh3add a0, a1, a0 ret diff --git a/result/rvb23u64/24415133805d1e98.S b/result/rvb23u64/24415133805d1e98.S index baec87bca06..075a183fd2e 100644 --- a/result/rvb23u64/24415133805d1e98.S +++ b/result/rvb23u64/24415133805d1e98.S @@ -6,8 +6,8 @@ func0000000000000032: # @func0000000000000032 func0000000000000004: # @func0000000000000004 sext.w a1, a1 snez a1, a1 + addi a1, a1, -1 sh3add a0, a1, a0 - addi a0, a0, -8 ret func0000000000000006: # @func0000000000000006 sext.w a1, a1 diff --git a/result/rvb23u64/245dad04b34c465e.S b/result/rvb23u64/245dad04b34c465e.S index 1f589f28917..31701c29b29 100644 --- a/result/rvb23u64/245dad04b34c465e.S +++ b/result/rvb23u64/245dad04b34c465e.S @@ -1,6 +1,7 @@ func0000000000000006: # @func0000000000000006 - sh3add.uw a0, a1, a0 - addi a0, a0, -8 + zext.w a1, a1 + addi a1, a1, -1 + sh3add a0, a1, a0 ret func000000000000000f: # @func000000000000000f add.uw a0, a1, a0 diff --git a/result/rvb23u64/27006675a68a35a2.S b/result/rvb23u64/27006675a68a35a2.S index 426f1e392cf..a59a6122793 100644 --- a/result/rvb23u64/27006675a68a35a2.S +++ b/result/rvb23u64/27006675a68a35a2.S @@ -1,8 +1,9 @@ func000000000000001c: # @func000000000000001c zext.h a1, a1 + addi a1, a1, -1 sh1add a0, a1, a0 lui a1, 7 - addiw a1, a1, 966 + addiw a1, a1, 968 add a0, a0, a1 ret func000000000000001e: # @func000000000000001e @@ -17,11 +18,13 @@ func000000000000003f: # @func000000000000003f ret func000000000000005c: # @func000000000000005c zext.h a1, a1 + addi a1, a1, -1 sh2add a0, a1, a0 - addi a0, a0, 196 + addi a0, a0, 200 ret func000000000000005e: # @func000000000000005e zext.h a1, a1 + addi a1, a1, -1 sh2add a0, a1, a0 - addi a0, a0, 4 + addi a0, a0, 8 ret diff --git a/result/rvb23u64/271a135010fa41d7.S b/result/rvb23u64/271a135010fa41d7.S index c0380961bf4..e67775baf5f 100644 --- a/result/rvb23u64/271a135010fa41d7.S +++ b/result/rvb23u64/271a135010fa41d7.S @@ -1,7 +1,8 @@ func000000000000001c: # @func000000000000001c sext.w a1, a1 + addi a1, a1, 1 sh1add a0, a1, a0 - addi a0, a0, 18 + addi a0, a0, 16 ret func000000000000000c: # @func000000000000000c addiw a1, a1, 1 @@ -15,5 +16,7 @@ func000000000000002c: # @func000000000000002c ret func000000000000001e: # @func000000000000001e sext.w a1, a1 + addi a1, a1, -1 sh3add a0, a1, a0 + addi a0, a0, 8 ret diff --git a/result/rvb23u64/29333a71af8f4fbf.S b/result/rvb23u64/29333a71af8f4fbf.S index 296bf9c6923..42063ed4a19 100644 --- a/result/rvb23u64/29333a71af8f4fbf.S +++ b/result/rvb23u64/29333a71af8f4fbf.S @@ -13,8 +13,8 @@ func0000000000000002: # @func0000000000000002 func0000000000000000: # @func0000000000000000 li a2, 1 maxu a1, a1, a2 + addi a1, a1, -1 sh2add a0, a1, a0 - addi a0, a0, -4 ret func0000000000000003: # @func0000000000000003 li a2, 8 @@ -25,6 +25,6 @@ func0000000000000003: # @func0000000000000003 func0000000000000007: # @func0000000000000007 li a2, 1 maxu a1, a1, a2 + addi a1, a1, -1 sh3add a0, a1, a0 - addi a0, a0, -8 ret diff --git a/result/rvb23u64/2ac7b6557a110851.S b/result/rvb23u64/2ac7b6557a110851.S index 5da9e35fc6b..53aae11f21e 100644 --- a/result/rvb23u64/2ac7b6557a110851.S +++ b/result/rvb23u64/2ac7b6557a110851.S @@ -11,6 +11,6 @@ func0000000000000016: # @func0000000000000016 ret func0000000000000014: # @func0000000000000014 zext.h a1, a1 + addi a1, a1, -1 sh2add a0, a1, a0 - addi a0, a0, -4 ret diff --git a/result/rvb23u64/2b252afafee8807c.S b/result/rvb23u64/2b252afafee8807c.S index 6ebdc2859d3..79f13e052a7 100644 --- a/result/rvb23u64/2b252afafee8807c.S +++ b/result/rvb23u64/2b252afafee8807c.S @@ -1,7 +1,7 @@ func000000000000000e: # @func000000000000000e slliw a1, a1, 1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func0000000000000004: # @func0000000000000004 slliw a1, a1, 3 @@ -15,21 +15,21 @@ func0000000000000006: # @func0000000000000006 ret func000000000000000f: # @func000000000000000f slliw a1, a1, 5 + addi a1, a1, 16 sh1add a0, a1, a0 - addi a0, a0, 32 ret func0000000000000016: # @func0000000000000016 slliw a1, a1, 1 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func0000000000000007: # @func0000000000000007 slliw a1, a1, 1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func000000000000000c: # @func000000000000000c slliw a1, a1, 1 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret diff --git a/result/rvb23u64/2d3dec196899a334.S b/result/rvb23u64/2d3dec196899a334.S index 51f269c1602..566e13a4879 100644 --- a/result/rvb23u64/2d3dec196899a334.S +++ b/result/rvb23u64/2d3dec196899a334.S @@ -1,6 +1,6 @@ func0000000000000310: # @func0000000000000310 seqz a2, a2 + addi a2, a2, -1 sub a0, a0, a1 sh3add a0, a2, a0 - addi a0, a0, -8 ret diff --git a/result/rvb23u64/2eaf7ee8a91cf4be.S b/result/rvb23u64/2eaf7ee8a91cf4be.S index ab0254e9032..47df01eb9f2 100644 --- a/result/rvb23u64/2eaf7ee8a91cf4be.S +++ b/result/rvb23u64/2eaf7ee8a91cf4be.S @@ -10,8 +10,9 @@ func0000000000000003: # @func0000000000000003 ret func0000000000000017: # @func0000000000000017 sext.w a1, a1 - sh3add a0, a1, a0 - addi a0, a0, 8 + slli a1, a1, 1 + addi a1, a1, 2 + sh2add a0, a1, a0 ret func0000000000000036: # @func0000000000000036 sext.w a1, a1 @@ -21,8 +22,8 @@ func0000000000000036: # @func0000000000000036 ret func0000000000000027: # @func0000000000000027 slliw a1, a1, 1 + addi a1, a1, -2 sh2add a0, a1, a0 - addi a0, a0, -8 ret func0000000000000000: # @func0000000000000000 slli a1, a1, 1 @@ -31,6 +32,6 @@ func0000000000000000: # @func0000000000000000 ret func0000000000000007: # @func0000000000000007 slliw a1, a1, 2 + addi a1, a1, -4 sh3add a0, a1, a0 - addi a0, a0, -32 ret diff --git a/result/rvb23u64/30077796cc486319.S b/result/rvb23u64/30077796cc486319.S index 3f0fec5f112..ac03b1904dc 100644 --- a/result/rvb23u64/30077796cc486319.S +++ b/result/rvb23u64/30077796cc486319.S @@ -5,11 +5,11 @@ func0000000000000012: # @func0000000000000012 ret func0000000000000016: # @func0000000000000016 add a1, a1, a2 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func000000000000001f: # @func000000000000001f add a1, a1, a2 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret diff --git a/result/rvb23u64/301fb96f842239d3.S b/result/rvb23u64/301fb96f842239d3.S index 2915191ac9b..359ba228f6f 100644 --- a/result/rvb23u64/301fb96f842239d3.S +++ b/result/rvb23u64/301fb96f842239d3.S @@ -29,9 +29,8 @@ func000000000000006f: # @func000000000000006f addi a0, a0, 48 ret func000000000000003e: # @func000000000000003e - slli a1, a1, 2 - sh3add a1, a2, a1 - add a0, a0, a1 + sh1add a1, a2, a1 + sh2add a0, a1, a0 addi a0, a0, 208 ret func0000000000000010: # @func0000000000000010 diff --git a/result/rvb23u64/309e62699393c765.S b/result/rvb23u64/309e62699393c765.S index 1c880b400d6..c0e97ae5eea 100644 --- a/result/rvb23u64/309e62699393c765.S +++ b/result/rvb23u64/309e62699393c765.S @@ -1,10 +1,9 @@ func0000000000000000: # @func0000000000000000 - not a1, a1 - li a2, -1 - slli a1, a1, 3 - slli a2, a2, 35 - or a1, a1, a2 - add a0, a0, a1 + lui a2, 131072 + addi a2, a2, -1 + slli a2, a2, 32 + orn a1, a2, a1 + sh3add a0, a1, a0 ret func0000000000000004: # @func0000000000000004 not a1, a1 @@ -13,10 +12,9 @@ func0000000000000004: # @func0000000000000004 sh3add a0, a1, a0 ret func0000000000000002: # @func0000000000000002 - not a1, a1 - li a2, -1 - slli a1, a1, 3 - slli a2, a2, 35 - or a1, a1, a2 - add a0, a0, a1 + lui a2, 131072 + addi a2, a2, -1 + slli a2, a2, 32 + orn a1, a2, a1 + sh3add a0, a1, a0 ret diff --git a/result/rvb23u64/31c51de230cc5efc.S b/result/rvb23u64/31c51de230cc5efc.S index 9c04b4ff25e..1d79b1bc24a 100644 --- a/result/rvb23u64/31c51de230cc5efc.S +++ b/result/rvb23u64/31c51de230cc5efc.S @@ -5,7 +5,8 @@ func000000000000003c: # @func000000000000003c addi a0, a0, 14 ret func000000000000003f: # @func000000000000003f - zext.h a1, a1 - sh2add a0, a1, a0 - addi a0, a0, 2 + slli a1, a1, 48 + srli a1, a1, 47 + addi a1, a1, 1 + sh1add a0, a1, a0 ret diff --git a/result/rvb23u64/31eb20402ea3fada.S b/result/rvb23u64/31eb20402ea3fada.S index 06988e28e48..4fc6cc2ca7b 100644 --- a/result/rvb23u64/31eb20402ea3fada.S +++ b/result/rvb23u64/31eb20402ea3fada.S @@ -1,16 +1,18 @@ func00000000000000bb: # @func00000000000000bb - ori a1, a1, 8 - add a0, a0, a1 + srli a1, a1, 3 + ori a1, a1, 1 + sh3add a0, a1, a0 addi a0, a0, -12 ret func000000000000003b: # @func000000000000003b - ori a1, a1, 8 - andi a1, a1, -8 - add a0, a0, a1 + srli a1, a1, 3 + ori a1, a1, 1 + sh3add a0, a1, a0 addi a0, a0, -12 ret func00000000000000b3: # @func00000000000000b3 - ori a1, a1, 8 - add a0, a0, a1 + srli a1, a1, 3 + ori a1, a1, 1 + sh3add a0, a1, a0 addi a0, a0, -12 ret diff --git a/result/rvb23u64/320628f2e78d7722.S b/result/rvb23u64/320628f2e78d7722.S index 6347cb7fe43..c372299b45e 100644 --- a/result/rvb23u64/320628f2e78d7722.S +++ b/result/rvb23u64/320628f2e78d7722.S @@ -38,8 +38,8 @@ func000000000000003c: # @func000000000000003c ret func000000000000003f: # @func000000000000003f sub a2, a2, a1 + addi a2, a2, 7 sh2add a0, a2, a0 - addi a0, a0, 28 ret func000000000000001a: # @func000000000000001a not a1, a1 @@ -49,11 +49,11 @@ func000000000000001a: # @func000000000000001a ret func0000000000000032: # @func0000000000000032 sub a2, a2, a1 + addi a2, a2, 1 sh1add a0, a2, a0 - addi a0, a0, 2 ret func0000000000000036: # @func0000000000000036 sub a2, a2, a1 + addi a2, a2, 4 sh2add a0, a2, a0 - addi a0, a0, 16 ret diff --git a/result/rvb23u64/3289549d4be5e0aa.S b/result/rvb23u64/3289549d4be5e0aa.S index 7dd3d38725f..66d74b2f6a4 100644 --- a/result/rvb23u64/3289549d4be5e0aa.S +++ b/result/rvb23u64/3289549d4be5e0aa.S @@ -1,44 +1,60 @@ func0000000000000010: # @func0000000000000010 slliw a1, a1, 1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 8 + addi a0, a0, 4 ret func000000000000003e: # @func000000000000003e slliw a1, a1, 1 + addi a1, a1, 1 sh1add a0, a1, a0 - addi a0, a0, 6 + addi a0, a0, 4 ret func000000000000001e: # @func000000000000001e slliw a1, a1, 2 + addi a1, a1, 3 sh2add a0, a1, a0 - addi a0, a0, 28 + addi a0, a0, 16 ret func000000000000001a: # @func000000000000001a slliw a1, a1, 1 + addi a1, a1, 1 sh3add a0, a1, a0 + addi a0, a0, -8 ret func0000000000000018: # @func0000000000000018 slliw a1, a1, 1 + addi a1, a1, 1 sh2add a0, a1, a0 + addi a0, a0, -4 ret func000000000000001c: # @func000000000000001c slliw a1, a1, 1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 12 + addi a0, a0, 8 ret func0000000000000038: # @func0000000000000038 slliw a1, a1, 1 + addi a1, a1, 1 sh3add a0, a1, a0 + addi a0, a0, -8 ret func0000000000000030: # @func0000000000000030 slliw a1, a1, 1 + addi a1, a1, 1 sh3add a0, a1, a0 + addi a0, a0, -8 ret func000000000000005a: # @func000000000000005a slliw a1, a1, 1 + addi a1, a1, 1 sh3add a0, a1, a0 + addi a0, a0, -8 ret func000000000000003a: # @func000000000000003a slliw a1, a1, 1 + addi a1, a1, 1 sh3add a0, a1, a0 + addi a0, a0, -8 ret diff --git a/result/rvb23u64/3398ebb610250d82.S b/result/rvb23u64/3398ebb610250d82.S index 9a9efe8a823..78d486a72f5 100644 --- a/result/rvb23u64/3398ebb610250d82.S +++ b/result/rvb23u64/3398ebb610250d82.S @@ -12,9 +12,9 @@ func0000000000000004: # @func0000000000000004 add a0, a0, a1 ret func000000000000002f: # @func000000000000002f - slli a1, a1, 5 - add a0, a0, a1 - addi a0, a0, -32 + slli a1, a1, 3 + addi a1, a1, -8 + sh2add a0, a1, a0 ret func0000000000000014: # @func0000000000000014 addiw a1, a1, 1 diff --git a/result/rvb23u64/341fbf265bfb8072.S b/result/rvb23u64/341fbf265bfb8072.S index 8940043f07d..905bb269ab7 100644 --- a/result/rvb23u64/341fbf265bfb8072.S +++ b/result/rvb23u64/341fbf265bfb8072.S @@ -1,8 +1,8 @@ func0000000000000013: # @func0000000000000013 add a1, a1, a2 srliw a1, a1, 1 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func0000000000000008: # @func0000000000000008 add a1, a1, a2 diff --git a/result/rvb23u64/34583e7bd838e267.S b/result/rvb23u64/34583e7bd838e267.S index 1c9753e12b7..795dd2bd558 100644 --- a/result/rvb23u64/34583e7bd838e267.S +++ b/result/rvb23u64/34583e7bd838e267.S @@ -5,12 +5,12 @@ func000000000000003f: # @func000000000000003f ret func000000000000002e: # @func000000000000002e sh2add.uw a0, a2, a0 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func0000000000000030: # @func0000000000000030 slli.uw a2, a2, 5 add a0, a0, a2 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret diff --git a/result/rvb23u64/35551cbd91370d18.S b/result/rvb23u64/35551cbd91370d18.S index ec972729132..1beb22e6d1a 100644 --- a/result/rvb23u64/35551cbd91370d18.S +++ b/result/rvb23u64/35551cbd91370d18.S @@ -1,9 +1,8 @@ func0000000000000004: # @func0000000000000004 - not a2, a2 - slli a2, a2, 3 + li a3, -2 + orn a2, a3, a2 sh3add a0, a1, a0 - ori a1, a2, -16 - add a0, a0, a1 + sh3add a0, a2, a0 ret func0000000000000002: # @func0000000000000002 andi a2, a2, -2 diff --git a/result/rvb23u64/35c00e4af042231d.S b/result/rvb23u64/35c00e4af042231d.S index 093e9d21074..33b3ecc7ba0 100644 --- a/result/rvb23u64/35c00e4af042231d.S +++ b/result/rvb23u64/35c00e4af042231d.S @@ -11,6 +11,6 @@ func0000000000000010: # @func0000000000000010 sext.w a2, a2 sext.w a1, a1 sltu a1, a1, a2 + addi a1, a1, -1 sh2add a0, a1, a0 - addi a0, a0, -4 ret diff --git a/result/rvb23u64/3650feb8a8004e0d.S b/result/rvb23u64/3650feb8a8004e0d.S index ad21de7f1b9..219464cbeee 100644 --- a/result/rvb23u64/3650feb8a8004e0d.S +++ b/result/rvb23u64/3650feb8a8004e0d.S @@ -1,6 +1,6 @@ func000000000000000e: # @func000000000000000e - ori a1, a1, 8 - andi a1, a1, -8 - add a0, a0, a1 + srli a1, a1, 3 + ori a1, a1, 1 + sh3add a0, a1, a0 addi a0, a0, -16 ret diff --git a/result/rvb23u64/36f98cd5abd20a5e.S b/result/rvb23u64/36f98cd5abd20a5e.S index 3334cdc2419..548845250b4 100644 --- a/result/rvb23u64/36f98cd5abd20a5e.S +++ b/result/rvb23u64/36f98cd5abd20a5e.S @@ -10,8 +10,8 @@ func0000000000000002: # @func0000000000000002 ret func000000000000003f: # @func000000000000003f add a1, a1, a2 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func000000000000001e: # @func000000000000001e add a1, a1, a2 @@ -22,18 +22,18 @@ func000000000000001e: # @func000000000000001e ret func0000000000000032: # @func0000000000000032 add a1, a1, a2 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func000000000000001c: # @func000000000000001c add a1, a1, a2 + addi a1, a1, -1 sh3add a0, a1, a0 - addi a0, a0, -8 ret func0000000000000016: # @func0000000000000016 add a1, a1, a2 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func0000000000000012: # @func0000000000000012 add a1, a1, a2 @@ -47,8 +47,8 @@ func000000000000000a: # @func000000000000000a ret func000000000000003e: # @func000000000000003e add a1, a1, a2 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func0000000000000003: # @func0000000000000003 add a1, a1, a2 @@ -57,8 +57,8 @@ func0000000000000003: # @func0000000000000003 ret func0000000000000013: # @func0000000000000013 add a1, a1, a2 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func0000000000000000: # @func0000000000000000 add a1, a1, a2 diff --git a/result/rvb23u64/38c0178b14219b8c.S b/result/rvb23u64/38c0178b14219b8c.S index 6c0f8f6cc06..ac75def7b1c 100644 --- a/result/rvb23u64/38c0178b14219b8c.S +++ b/result/rvb23u64/38c0178b14219b8c.S @@ -1,15 +1,16 @@ func000000000000007b: # @func000000000000007b + slli a2, a2, 1 sext.w a1, a1 + addi a2, a2, 1 sh2add a0, a1, a0 - sh2add a0, a2, a0 - addi a0, a0, 2 + sh1add a0, a2, a0 ret func000000000000003b: # @func000000000000003b - slli a2, a2, 4 + slli a2, a2, 2 sext.w a1, a1 + addi a2, a2, 1 sh2add a0, a1, a0 - add a0, a0, a2 - addi a0, a0, 4 + sh2add a0, a2, a0 ret func0000000000000070: # @func0000000000000070 slli a2, a2, 4 @@ -19,9 +20,9 @@ func0000000000000070: # @func0000000000000070 addi a0, a0, 8 ret func000000000000003a: # @func000000000000003a - slli a2, a2, 4 + slli a2, a2, 2 sext.w a1, a1 + addi a2, a2, 1 add a0, a0, a1 - add a0, a0, a2 - addi a0, a0, 4 + sh2add a0, a2, a0 ret diff --git a/result/rvb23u64/3953e9385700dda6.S b/result/rvb23u64/3953e9385700dda6.S index 4add13294b1..645889ad247 100644 --- a/result/rvb23u64/3953e9385700dda6.S +++ b/result/rvb23u64/3953e9385700dda6.S @@ -1,6 +1,5 @@ func000000000000007f: # @func000000000000007f - slli a1, a1, 1 - sh2add a1, a2, a1 - add a0, a0, a1 + sh1add a1, a2, a1 + sh1add a0, a1, a0 addi a0, a0, 1524 ret diff --git a/result/rvb23u64/39e5705d40f3ad55.S b/result/rvb23u64/39e5705d40f3ad55.S index 9283429b190..2f74105268a 100644 --- a/result/rvb23u64/39e5705d40f3ad55.S +++ b/result/rvb23u64/39e5705d40f3ad55.S @@ -1,28 +1,34 @@ func000000000000003c: # @func000000000000003c - andi a1, a1, -4 - add a0, a0, a1 + srli a1, a1, 2 + addi a1, a1, 8 + sh2add a0, a1, a0 lui a1, 2 - addiw a1, a1, 1324 + addiw a1, a1, 1292 add a0, a0, a1 ret func000000000000001c: # @func000000000000001c - andi a1, a1, -4 - add a0, a0, a1 + srli a1, a1, 2 + addi a1, a1, -271 + sh2add a0, a1, a0 lui a1, 5 - addiw a1, a1, -1740 + addiw a1, a1, -656 add a0, a0, a1 ret func000000000000005e: # @func000000000000005e - add a0, a0, a1 - addi a0, a0, 96 + srli a1, a1, 2 + addi a1, a1, -1 + sh2add a0, a1, a0 + addi a0, a0, 100 ret func000000000000005c: # @func000000000000005c - srli a1, a1, 3 - add a0, a0, a1 - addi a0, a0, 16 + srli a1, a1, 6 + addi a1, a1, -1 + sh3add a0, a1, a0 + addi a0, a0, 24 ret func000000000000003f: # @func000000000000003f srli a1, a1, 6 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 24 + addi a0, a0, 16 ret diff --git a/result/rvb23u64/3aaa1b7b70682656.S b/result/rvb23u64/3aaa1b7b70682656.S index a47b2aa6860..a56172cce08 100644 --- a/result/rvb23u64/3aaa1b7b70682656.S +++ b/result/rvb23u64/3aaa1b7b70682656.S @@ -5,8 +5,8 @@ func0000000000000012: # @func0000000000000012 ret func0000000000000017: # @func0000000000000017 sh3add a1, a2, a1 + addi a1, a1, 60 sh2add a0, a1, a0 - addi a0, a0, 240 ret func0000000000000013: # @func0000000000000013 sh3add a1, a2, a1 diff --git a/result/rvb23u64/3e78cfbcf65f87db.S b/result/rvb23u64/3e78cfbcf65f87db.S index 100ae0a0a20..3b3664bb481 100644 --- a/result/rvb23u64/3e78cfbcf65f87db.S +++ b/result/rvb23u64/3e78cfbcf65f87db.S @@ -28,8 +28,9 @@ func000000000000000f: # @func000000000000000f addi a0, a0, 8 ret func000000000000003f: # @func000000000000003f + addi a1, a1, -2 sh3add a0, a1, a0 - addi a0, a0, -8 + addi a0, a0, 8 ret func000000000000000e: # @func000000000000000e addi a1, a1, 7 @@ -65,8 +66,9 @@ func0000000000000023: # @func0000000000000023 addi a0, a0, 4 ret func0000000000000033: # @func0000000000000033 + addi a1, a1, -2 sh2add a0, a1, a0 - addi a0, a0, -4 + addi a0, a0, 4 ret func000000000000004f: # @func000000000000004f addi a1, a1, 1 diff --git a/result/rvb23u64/3e796f381067abc0.S b/result/rvb23u64/3e796f381067abc0.S index 472f8412cf6..84653f1bc89 100644 --- a/result/rvb23u64/3e796f381067abc0.S +++ b/result/rvb23u64/3e796f381067abc0.S @@ -1,6 +1,8 @@ func000000000000001e: # @func000000000000001e andi a1, a1, 255 + addi a1, a1, -1 sh3add a0, a1, a0 + addi a0, a0, 8 ret func000000000000003c: # @func000000000000003c andi a1, a1, 255 @@ -11,8 +13,9 @@ func000000000000003c: # @func000000000000003c ret func000000000000003f: # @func000000000000003f andi a1, a1, 255 + addi a1, a1, 257 sh2add a0, a1, a0 - addi a0, a0, 1068 + addi a0, a0, 40 ret func000000000000001f: # @func000000000000001f andi a1, a1, 255 @@ -20,7 +23,9 @@ func000000000000001f: # @func000000000000001f ret func000000000000001c: # @func000000000000001c andi a1, a1, 255 + addi a1, a1, -1 sh3add a0, a1, a0 + addi a0, a0, 8 ret func000000000000005c: # @func000000000000005c andi a1, a1, 255 diff --git a/result/rvb23u64/3f521a921a9e4cc1.S b/result/rvb23u64/3f521a921a9e4cc1.S index 523b359680a..6445d3e2a55 100644 --- a/result/rvb23u64/3f521a921a9e4cc1.S +++ b/result/rvb23u64/3f521a921a9e4cc1.S @@ -4,19 +4,19 @@ func0000000000000007: # @func0000000000000007 addi a0, a0, -1 ret func000000000000000c: # @func000000000000000c - andi a1, a1, -4 - add a0, a0, a1 - addi a0, a0, 32 + srli a1, a1, 2 + addi a1, a1, 8 + sh2add a0, a1, a0 ret func0000000000000004: # @func0000000000000004 - andi a1, a1, -4 - add a0, a0, a1 - addi a0, a0, -1084 + srli a1, a1, 2 + addi a1, a1, -271 + sh2add a0, a1, a0 ret func0000000000000006: # @func0000000000000006 srli a1, a1, 56 + addi a1, a1, -1 sh3add a0, a1, a0 - addi a0, a0, -8 ret func000000000000000f: # @func000000000000000f srli a1, a1, 3 @@ -24,20 +24,22 @@ func000000000000000f: # @func000000000000000f addi a0, a0, 1 ret func0000000000000017: # @func0000000000000017 - sh1add a0, a1, a0 - addi a0, a0, -4 + srli a1, a1, 1 + addi a1, a1, -1 + sh2add a0, a1, a0 ret func0000000000000016: # @func0000000000000016 - add a0, a0, a1 - addi a0, a0, -4 + srli a1, a1, 2 + addi a1, a1, -1 + sh2add a0, a1, a0 ret func0000000000000014: # @func0000000000000014 - srli a1, a1, 3 - add a0, a0, a1 - addi a0, a0, -8 + srli a1, a1, 6 + addi a1, a1, -1 + sh3add a0, a1, a0 ret func000000000000001f: # @func000000000000001f - srli a1, a1, 3 - add a0, a0, a1 - addi a0, a0, 8 + srli a1, a1, 6 + addi a1, a1, 1 + sh3add a0, a1, a0 ret diff --git a/result/rvb23u64/3fa6347fe86a084d.S b/result/rvb23u64/3fa6347fe86a084d.S index 5415226fc1c..3e3f7fd4ff6 100644 --- a/result/rvb23u64/3fa6347fe86a084d.S +++ b/result/rvb23u64/3fa6347fe86a084d.S @@ -1,6 +1,7 @@ func000000000000003f: # @func000000000000003f + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 12 + addi a0, a0, 4 ret func0000000000000003: # @func0000000000000003 slli a2, a1, 3 @@ -56,8 +57,9 @@ func0000000000000000: # @func0000000000000000 addi a0, a0, -128 ret func0000000000000028: # @func0000000000000028 + addi a1, a1, 2 sh3add a0, a1, a0 - addi a0, a0, 20 + addi a0, a0, 4 ret func000000000000000f: # @func000000000000000f slli a2, a1, 3 @@ -67,10 +69,12 @@ func000000000000000f: # @func000000000000000f addi a0, a0, -48 ret func000000000000003b: # @func000000000000003b + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 12 + addi a0, a0, 4 ret func0000000000000010: # @func0000000000000010 + addi a1, a1, -1 sh3add a0, a1, a0 - addi a0, a0, -4 + addi a0, a0, 4 ret diff --git a/result/rvb23u64/40c0d7be77507356.S b/result/rvb23u64/40c0d7be77507356.S index 5ffe32e41ee..dda33e774aa 100644 --- a/result/rvb23u64/40c0d7be77507356.S +++ b/result/rvb23u64/40c0d7be77507356.S @@ -4,11 +4,7 @@ func000000000000000c: # @func000000000000000c sh2add a0, a1, a0 ret func000000000000000f: # @func000000000000000f - lui a2, 65535 - slli a2, a2, 4 - addi a2, a2, -256 - and a1, a1, a2 - srli a1, a1, 6 - add a0, a0, a1 - addi a0, a0, 1024 + srliw a1, a1, 8 + ori a1, a1, 256 + sh2add a0, a1, a0 ret diff --git a/result/rvb23u64/40d4fff7c0776f63.S b/result/rvb23u64/40d4fff7c0776f63.S index 152d1f68d0b..8c25644f5b3 100644 --- a/result/rvb23u64/40d4fff7c0776f63.S +++ b/result/rvb23u64/40d4fff7c0776f63.S @@ -1,8 +1,8 @@ func000000000000005f: # @func000000000000005f + addi a2, a2, 1 sh2add a0, a2, a0 slli a1, a1, 7 add a0, a0, a1 - addi a0, a0, 4 ret func0000000000000050: # @func0000000000000050 add a0, a0, a2 diff --git a/result/rvb23u64/41eb18bc03269343.S b/result/rvb23u64/41eb18bc03269343.S index d73e4ae6365..8bd3383564f 100644 --- a/result/rvb23u64/41eb18bc03269343.S +++ b/result/rvb23u64/41eb18bc03269343.S @@ -1,5 +1,5 @@ func00000000000000c4: # @func00000000000000c4 seqz a1, a1 + addi a1, a1, -1 sh3add a0, a1, a0 - addi a0, a0, -8 ret diff --git a/result/rvb23u64/42bdd84c3fe9efe2.S b/result/rvb23u64/42bdd84c3fe9efe2.S index e6e74cdfb05..24626b76d32 100644 --- a/result/rvb23u64/42bdd84c3fe9efe2.S +++ b/result/rvb23u64/42bdd84c3fe9efe2.S @@ -1,8 +1,8 @@ func000000000000001c: # @func000000000000001c andi a1, a1, 255 - slli a1, a1, 4 - add a0, a0, a1 - addi a0, a0, 8 + slli a1, a1, 1 + addi a1, a1, 1 + sh3add a0, a1, a0 ret func000000000000001f: # @func000000000000001f andi a1, a1, 255 diff --git a/result/rvb23u64/43c614176a4a2a84.S b/result/rvb23u64/43c614176a4a2a84.S index e574e6c925d..182cf77a0c8 100644 --- a/result/rvb23u64/43c614176a4a2a84.S +++ b/result/rvb23u64/43c614176a4a2a84.S @@ -1,20 +1,20 @@ func000000000000001b: # @func000000000000001b + addi a2, a2, -1 slli a1, a1, 5 add a0, a0, a1 sh1add a0, a2, a0 - addi a0, a0, -2 ret func000000000000003b: # @func000000000000003b + addi a2, a2, 1 sh2add a1, a1, a1 sh3add a1, a1, a2 sh2add a0, a1, a0 - addi a0, a0, 4 ret func000000000000003f: # @func000000000000003f + addi a2, a2, 1 sh2add a1, a1, a1 sh3add a1, a1, a2 sh2add a0, a1, a0 - addi a0, a0, 4 ret func000000000000000e: # @func000000000000000e li a3, 102 @@ -30,12 +30,12 @@ func0000000000000010: # @func0000000000000010 addi a0, a0, -32 ret func000000000000001e: # @func000000000000001e + addi a2, a2, -1 sh2add a1, a1, a2 sh3add a0, a1, a0 - addi a0, a0, -8 ret func000000000000001a: # @func000000000000001a + addi a2, a2, -1 sh2add a1, a1, a2 sh3add a0, a1, a0 - addi a0, a0, -8 ret diff --git a/result/rvb23u64/43da8f8f5f8cf777.S b/result/rvb23u64/43da8f8f5f8cf777.S index e4735ff58f7..91081d68183 100644 --- a/result/rvb23u64/43da8f8f5f8cf777.S +++ b/result/rvb23u64/43da8f8f5f8cf777.S @@ -5,7 +5,9 @@ func000000000000000c: # @func000000000000000c ret func000000000000001e: # @func000000000000001e sext.w a1, a1 + addi a1, a1, -1 sh3add a0, a1, a0 + addi a0, a0, 8 ret func000000000000001c: # @func000000000000001c sext.w a1, a1 @@ -15,8 +17,9 @@ func000000000000001c: # @func000000000000001c ret func000000000000003c: # @func000000000000003c sext.w a1, a1 + addi a1, a1, 1 sh3add a0, a1, a0 - li a1, 1028 + li a1, 1027 sh3add a0, a1, a0 ret func000000000000002c: # @func000000000000002c @@ -32,8 +35,9 @@ func000000000000000e: # @func000000000000000e ret func000000000000003e: # @func000000000000003e sext.w a1, a1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 108 + addi a0, a0, 104 ret func0000000000000000: # @func0000000000000000 addiw a1, a1, -1 @@ -42,7 +46,8 @@ func0000000000000000: # @func0000000000000000 ret func0000000000000010: # @func0000000000000010 sext.w a1, a1 + addi a1, a1, -1 sh1add a0, a1, a0 addi a0, a0, 2047 - addi a0, a0, 1149 + addi a0, a0, 1151 ret diff --git a/result/rvb23u64/44cbfe105c8e82e6.S b/result/rvb23u64/44cbfe105c8e82e6.S index c38210342f6..f427d9d6719 100644 --- a/result/rvb23u64/44cbfe105c8e82e6.S +++ b/result/rvb23u64/44cbfe105c8e82e6.S @@ -1,6 +1,7 @@ func000000000000003f: # @func000000000000003f + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 48 + addi a0, a0, 40 ret func000000000000000c: # @func000000000000000c slli a2, a1, 3 @@ -25,43 +26,51 @@ func000000000000001f: # @func000000000000001f add a0, a0, a1 ret func000000000000001a: # @func000000000000001a + addi a1, a1, -1 sh3add a0, a1, a0 - addi a0, a0, -40 + addi a0, a0, -32 ret func000000000000003c: # @func000000000000003c + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 552 + addi a0, a0, 544 ret func000000000000001c: # @func000000000000001c + addi a1, a1, -1 sh2add a0, a1, a0 - addi a0, a0, 10 + addi a0, a0, 14 ret func000000000000000f: # @func000000000000000f + addi a1, a1, 8 sh3add a0, a1, a0 - addi a0, a0, 1208 + addi a0, a0, 1144 ret func000000000000002e: # @func000000000000002e add a0, a0, a1 addi a0, a0, 177 ret func0000000000000032: # @func0000000000000032 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 32 + addi a0, a0, 24 ret func000000000000003e: # @func000000000000003e + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 36 + addi a0, a0, 32 ret func0000000000000012: # @func0000000000000012 + addi a1, a1, -226 sh2add a0, a1, a0 lui a1, 12 - addiw a1, a1, 120 + addiw a1, a1, 1024 add a0, a0, a1 ret func0000000000000030: # @func0000000000000030 + addi a1, a1, 2 sh2add a0, a1, a0 lui a1, 12 - addiw a1, a1, 1028 + addiw a1, a1, 1020 add a0, a0, a1 ret func000000000000002f: # @func000000000000002f @@ -88,10 +97,12 @@ func0000000000000020: # @func0000000000000020 addi a0, a0, 39 ret func000000000000003b: # @func000000000000003b + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, -24 + addi a0, a0, -32 ret func0000000000000013: # @func0000000000000013 + addi a1, a1, -1 sh2add a0, a1, a0 - addi a0, a0, 876 + addi a0, a0, 880 ret diff --git a/result/rvb23u64/459ddc642f46a501.S b/result/rvb23u64/459ddc642f46a501.S index a930d02c317..986b5b5769f 100644 --- a/result/rvb23u64/459ddc642f46a501.S +++ b/result/rvb23u64/459ddc642f46a501.S @@ -19,8 +19,8 @@ func0000000000000000: # @func0000000000000000 func0000000000000076: # @func0000000000000076 sext.w a2, a2 sub a1, a1, a2 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func0000000000000034: # @func0000000000000034 zext.w a2, a2 diff --git a/result/rvb23u64/46174941fe38c88d.S b/result/rvb23u64/46174941fe38c88d.S index 60a2402ce0b..8b79057fa94 100644 --- a/result/rvb23u64/46174941fe38c88d.S +++ b/result/rvb23u64/46174941fe38c88d.S @@ -1,10 +1,10 @@ func000000000000003f: # @func000000000000003f add.uw a1, a2, a1 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func0000000000000032: # @func0000000000000032 add.uw a1, a2, a1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret diff --git a/result/rvb23u64/46934a9779dfacbc.S b/result/rvb23u64/46934a9779dfacbc.S index b6347a30b48..ec4e96db11e 100644 --- a/result/rvb23u64/46934a9779dfacbc.S +++ b/result/rvb23u64/46934a9779dfacbc.S @@ -1,9 +1,9 @@ func00000000000001aa: # @func00000000000001aa srli a3, a1, 3 sub a2, a2, a3 + addi a2, a2, 1 add a0, a0, a1 sh3add a0, a2, a0 - addi a0, a0, 8 ret func00000000000001fb: # @func00000000000001fb srli a3, a1, 3 @@ -15,23 +15,23 @@ func00000000000001fb: # @func00000000000001fb func000000000000012a: # @func000000000000012a srli a3, a1, 3 sub a2, a2, a3 + addi a2, a2, 1 add a0, a0, a1 sh3add a0, a2, a0 - addi a0, a0, 8 ret func000000000000017a: # @func000000000000017a srli a3, a1, 1 sub a2, a2, a3 + addi a2, a2, 1 add a0, a0, a1 sh1add a0, a2, a0 - addi a0, a0, 2 ret func000000000000012f: # @func000000000000012f srli a3, a1, 3 sub a2, a2, a3 + addi a2, a2, 1 add a0, a0, a1 sh3add a0, a2, a0 - addi a0, a0, 8 ret func00000000000001eb: # @func00000000000001eb srli a3, a1, 6 @@ -44,7 +44,7 @@ func00000000000001eb: # @func00000000000001eb func000000000000016a: # @func000000000000016a srli a3, a1, 3 sub a2, a2, a3 + addi a2, a2, 1 add a0, a0, a1 sh3add a0, a2, a0 - addi a0, a0, 8 ret diff --git a/result/rvb23u64/46b34e7ce5d66182.S b/result/rvb23u64/46b34e7ce5d66182.S index 00e0c9a88dd..c950f9708b6 100644 --- a/result/rvb23u64/46b34e7ce5d66182.S +++ b/result/rvb23u64/46b34e7ce5d66182.S @@ -1,6 +1,6 @@ func000000000000003f: # @func000000000000003f andi a2, a2, 255 add.uw a1, a1, a2 + addi a1, a1, 2 sh2add a0, a1, a0 - addi a0, a0, 8 ret diff --git a/result/rvb23u64/47d9b735300ba2b8.S b/result/rvb23u64/47d9b735300ba2b8.S index be7f134c03e..8e26abed18a 100644 --- a/result/rvb23u64/47d9b735300ba2b8.S +++ b/result/rvb23u64/47d9b735300ba2b8.S @@ -1,6 +1,6 @@ func0000000000000012: # @func0000000000000012 sext.h a2, a2 add a1, a1, a2 + addi a1, a1, -1 sh2add a0, a1, a0 - addi a0, a0, -4 ret diff --git a/result/rvb23u64/489b3022e5698358.S b/result/rvb23u64/489b3022e5698358.S index 202f1052f04..7c1d18df7e4 100644 --- a/result/rvb23u64/489b3022e5698358.S +++ b/result/rvb23u64/489b3022e5698358.S @@ -1,20 +1,20 @@ func000000000000002e: # @func000000000000002e - srai a1, a1, 1 - add a0, a0, a1 - addi a0, a0, -4 + srai a1, a1, 2 + addi a1, a1, -2 + sh1add a0, a1, a0 ret func000000000000000e: # @func000000000000000e srai a1, a1, 3 + addi a1, a1, -2 sh2add a0, a1, a0 - addi a0, a0, -8 ret func000000000000000c: # @func000000000000000c srai a1, a1, 3 + addi a1, a1, -2 sh2add a0, a1, a0 - addi a0, a0, -8 ret func000000000000002c: # @func000000000000002c - srai a1, a1, 1 - add a0, a0, a1 - addi a0, a0, -16 + srai a1, a1, 4 + addi a1, a1, -2 + sh3add a0, a1, a0 ret diff --git a/result/rvb23u64/49874517b73207ea.S b/result/rvb23u64/49874517b73207ea.S index fa9a1f76a23..af4da0247bc 100644 --- a/result/rvb23u64/49874517b73207ea.S +++ b/result/rvb23u64/49874517b73207ea.S @@ -10,8 +10,8 @@ func000000000000001f: # @func000000000000001f func000000000000001e: # @func000000000000001e andi a1, a1, 1 slli a2, a2, 2 + addi a1, a1, -1 andi a2, a2, -16 add a0, a0, a2 sh3add a0, a1, a0 - addi a0, a0, -8 ret diff --git a/result/rvb23u64/4c880a8e3e18adac.S b/result/rvb23u64/4c880a8e3e18adac.S index 234c3f6cf1b..6ab831c8ee6 100644 --- a/result/rvb23u64/4c880a8e3e18adac.S +++ b/result/rvb23u64/4c880a8e3e18adac.S @@ -1,6 +1,6 @@ func0000000000000007: # @func0000000000000007 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func0000000000000006: # @func0000000000000006 addi a1, a1, 1 @@ -9,8 +9,7 @@ func0000000000000006: # @func0000000000000006 add a0, a0, a1 ret func0000000000000004: # @func0000000000000004 + li a2, 1488 + sh2add a1, a2, a1 sh2add a0, a1, a0 - lui a1, 6 - addiw a1, a1, -768 - add a0, a0, a1 ret diff --git a/result/rvb23u64/4ca099aaea0dbfab.S b/result/rvb23u64/4ca099aaea0dbfab.S index 9934b5a9914..771af9dae5c 100644 --- a/result/rvb23u64/4ca099aaea0dbfab.S +++ b/result/rvb23u64/4ca099aaea0dbfab.S @@ -1,13 +1,12 @@ func000000000000000e: # @func000000000000000e sh1add a1, a1, a1 slliw a1, a1, 1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func000000000000000f: # @func000000000000000f sh1add a1, a1, a1 sext.w a1, a1 - slli a1, a1, 2 - ori a1, a1, 12 - add a0, a0, a1 + ori a1, a1, 3 + sh2add a0, a1, a0 ret diff --git a/result/rvb23u64/4e2874a77a86dfbc.S b/result/rvb23u64/4e2874a77a86dfbc.S index a5f23fca9f0..9f73ec15402 100644 --- a/result/rvb23u64/4e2874a77a86dfbc.S +++ b/result/rvb23u64/4e2874a77a86dfbc.S @@ -8,8 +8,8 @@ func0000000000000070: # @func0000000000000070 func000000000000001b: # @func000000000000001b sh1add a2, a2, a2 add a0, a0, a2 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func0000000000000010: # @func0000000000000010 sh1add a2, a2, a2 @@ -22,19 +22,19 @@ func000000000000007e: # @func000000000000007e li a3, 544 mul a2, a2, a3 add a0, a0, a2 + addi a1, a1, 4 sh2add a0, a1, a0 - addi a0, a0, 16 ret func000000000000007f: # @func000000000000007f li a3, 544 mul a2, a2, a3 add a0, a0, a2 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func000000000000003a: # @func000000000000003a slli a2, a2, 1 sub a0, a0, a2 + addi a1, a1, 1 sh1add a0, a1, a0 - addi a0, a0, 2 ret diff --git a/result/rvb23u64/4e42ce2a4630fd9b.S b/result/rvb23u64/4e42ce2a4630fd9b.S index d3b92d204c3..a8445ead7c0 100644 --- a/result/rvb23u64/4e42ce2a4630fd9b.S +++ b/result/rvb23u64/4e42ce2a4630fd9b.S @@ -1,6 +1,8 @@ func000000000000001a: # @func000000000000001a - sh3add.uw a0, a1, a0 - addi a0, a0, -40 + zext.w a1, a1 + addi a1, a1, -1 + sh3add a0, a1, a0 + addi a0, a0, -32 ret func000000000000007f: # @func000000000000007f sext.w a1, a1 @@ -15,8 +17,9 @@ func000000000000005e: # @func000000000000005e ret func000000000000005f: # @func000000000000005f sext.w a1, a1 + addi a1, a1, -1 sh3add a0, a1, a0 - addi a0, a0, 40 + addi a0, a0, 48 ret func000000000000001f: # @func000000000000001f slli.uw a1, a1, 5 diff --git a/result/rvb23u64/50560485ef8d0efc.S b/result/rvb23u64/50560485ef8d0efc.S index a241ca74a38..563623af34e 100644 --- a/result/rvb23u64/50560485ef8d0efc.S +++ b/result/rvb23u64/50560485ef8d0efc.S @@ -1,6 +1,6 @@ func000000000000000f: # @func000000000000000f slli a1, a1, 48 - srli a1, a1, 46 - add a0, a0, a1 - addi a0, a0, 2 + srli a1, a1, 47 + addi a1, a1, 1 + sh1add a0, a1, a0 ret diff --git a/result/rvb23u64/52b7339f21d1f1aa.S b/result/rvb23u64/52b7339f21d1f1aa.S index 35ee494503d..2e017ac5b52 100644 --- a/result/rvb23u64/52b7339f21d1f1aa.S +++ b/result/rvb23u64/52b7339f21d1f1aa.S @@ -10,7 +10,7 @@ func000000000000000b: # @func000000000000000b func000000000000000a: # @func000000000000000a andi a1, a1, 1 srli a2, a2, 2 + addi a1, a1, -1 sh3add a0, a2, a0 sh3add a0, a1, a0 - addi a0, a0, -8 ret diff --git a/result/rvb23u64/52cb7489db5a9d8e.S b/result/rvb23u64/52cb7489db5a9d8e.S index b43dca23766..4865b036378 100644 --- a/result/rvb23u64/52cb7489db5a9d8e.S +++ b/result/rvb23u64/52cb7489db5a9d8e.S @@ -10,8 +10,8 @@ func0000000000000007: # @func0000000000000007 ret func000000000000001f: # @func000000000000001f slli a1, a1, 1 + addi a1, a1, 1 sh3add.uw a0, a1, a0 - addi a0, a0, 8 ret func0000000000000017: # @func0000000000000017 slli a1, a1, 6 diff --git a/result/rvb23u64/532e24ad5a8d100a.S b/result/rvb23u64/532e24ad5a8d100a.S index a09a461650a..e1d13d4d622 100644 --- a/result/rvb23u64/532e24ad5a8d100a.S +++ b/result/rvb23u64/532e24ad5a8d100a.S @@ -6,12 +6,14 @@ func00000000000000af: # @func00000000000000af addi a0, a0, 8 ret func00000000000000bf: # @func00000000000000bf - srai a1, a1, 1 - add a0, a0, a1 - addi a0, a0, -8 + srai a1, a1, 4 + addi a1, a1, -2 + sh3add a0, a1, a0 + addi a0, a0, 8 ret func00000000000000b3: # @func00000000000000b3 - srai a1, a1, 1 - add a0, a0, a1 - addi a0, a0, -4 + srai a1, a1, 3 + addi a1, a1, -2 + sh2add a0, a1, a0 + addi a0, a0, 4 ret diff --git a/result/rvb23u64/5398d10528673bb3.S b/result/rvb23u64/5398d10528673bb3.S index 070dcaa3e62..aca2572df95 100644 --- a/result/rvb23u64/5398d10528673bb3.S +++ b/result/rvb23u64/5398d10528673bb3.S @@ -11,9 +11,10 @@ func000000000000003f: # @func000000000000003f ret func000000000000007c: # @func000000000000007c andi a1, a1, 31 + addi a1, a1, 2 sh2add a0, a1, a0 addi a0, a0, 2047 - addi a0, a0, 1829 + addi a0, a0, 1821 ret func000000000000003c: # @func000000000000003c andi a1, a1, 255 diff --git a/result/rvb23u64/544ba058970f24e8.S b/result/rvb23u64/544ba058970f24e8.S index 66a0d8fdb4e..64c518a95c0 100644 --- a/result/rvb23u64/544ba058970f24e8.S +++ b/result/rvb23u64/544ba058970f24e8.S @@ -1,8 +1,8 @@ func000000000000007f: # @func000000000000007f - slli a2, a2, 7 - slli a1, a1, 6 + slli a2, a2, 5 + slli a1, a1, 4 or a1, a1, a2 - add a0, a0, a1 + sh2add a0, a1, a0 ret func000000000000007c: # @func000000000000007c slli a2, a2, 9 diff --git a/result/rvb23u64/549e403664d12d93.S b/result/rvb23u64/549e403664d12d93.S index 58f1d568b50..0bc6b9e214f 100644 --- a/result/rvb23u64/549e403664d12d93.S +++ b/result/rvb23u64/549e403664d12d93.S @@ -20,8 +20,8 @@ func0000000000000022: # @func0000000000000022 ret func0000000000000030: # @func0000000000000030 sub a2, a2, a1 + addi a2, a2, 3 sh2add a0, a2, a0 - addi a0, a0, 12 ret func0000000000000023: # @func0000000000000023 sub a2, a2, a1 diff --git a/result/rvb23u64/556381b991756ece.S b/result/rvb23u64/556381b991756ece.S index a98c48427c0..ae0a5b1ca73 100644 --- a/result/rvb23u64/556381b991756ece.S +++ b/result/rvb23u64/556381b991756ece.S @@ -33,10 +33,12 @@ func00000000000000de: # @func00000000000000de addi a0, a0, 77 ret func000000000000019c: # @func000000000000019c + slli a2, a2, 1 slli a1, a1, 7 + addi a2, a2, 1 add a0, a0, a1 - sh2add a0, a2, a0 - addi a0, a0, 22 + sh1add a0, a2, a0 + addi a0, a0, 20 ret func000000000000001c: # @func000000000000001c slli a2, a2, 4 diff --git a/result/rvb23u64/571e8eb8c6d924a2.S b/result/rvb23u64/571e8eb8c6d924a2.S index 80755158387..d1ddd4f090f 100644 --- a/result/rvb23u64/571e8eb8c6d924a2.S +++ b/result/rvb23u64/571e8eb8c6d924a2.S @@ -5,9 +5,9 @@ func000000000000002b: # @func000000000000002b add a0, a0, a1 ret func000000000000002f: # @func000000000000002f - srai a1, a1, 1 - add a0, a0, a1 - addi a0, a0, -4 + srai a1, a1, 2 + addi a1, a1, -2 + sh1add a0, a1, a0 ret func000000000000000b: # @func000000000000000b srai a1, a1, 4 @@ -17,9 +17,9 @@ func000000000000000b: # @func000000000000000b add a0, a0, a1 ret func000000000000002c: # @func000000000000002c - srai a1, a1, 1 - add a0, a0, a1 - addi a0, a0, -4 + srai a1, a1, 2 + addi a1, a1, -2 + sh1add a0, a1, a0 ret func0000000000000028: # @func0000000000000028 srai a1, a1, 1 diff --git a/result/rvb23u64/576382b5566ebe58.S b/result/rvb23u64/576382b5566ebe58.S index bca36f0066b..f271df8e2a2 100644 --- a/result/rvb23u64/576382b5566ebe58.S +++ b/result/rvb23u64/576382b5566ebe58.S @@ -13,10 +13,8 @@ func0000000000000014: # @func0000000000000014 addi a0, a0, -2 ret func0000000000000016: # @func0000000000000016 - not a2, a2 + lui a3, 917504 + orn a2, a3, a2 sh2add a0, a1, a0 - slli a2, a2, 2 - lui a1, 524288 - or a1, a1, a2 - add a0, a0, a1 + sh2add a0, a2, a0 ret diff --git a/result/rvb23u64/57a3067a3421aea1.S b/result/rvb23u64/57a3067a3421aea1.S index c7187bb4691..f217d28828d 100644 --- a/result/rvb23u64/57a3067a3421aea1.S +++ b/result/rvb23u64/57a3067a3421aea1.S @@ -16,8 +16,8 @@ func000000000000000f: # @func000000000000000f func0000000000000013: # @func0000000000000013 sext.w a1, a1 max a1, a1, zero + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func000000000000003f: # @func000000000000003f sext.w a1, a1 diff --git a/result/rvb23u64/585e8f8b6ec045e8.S b/result/rvb23u64/585e8f8b6ec045e8.S index 199f70a9725..b8969abd93f 100644 --- a/result/rvb23u64/585e8f8b6ec045e8.S +++ b/result/rvb23u64/585e8f8b6ec045e8.S @@ -5,11 +5,11 @@ func0000000000000004: # @func0000000000000004 ret func0000000000000006: # @func0000000000000006 sext.w a1, a1 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func0000000000000007: # @func0000000000000007 sext.w a1, a1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret diff --git a/result/rvb23u64/596466d7381a69d6.S b/result/rvb23u64/596466d7381a69d6.S index ecd267c5e81..839a2bfa42c 100644 --- a/result/rvb23u64/596466d7381a69d6.S +++ b/result/rvb23u64/596466d7381a69d6.S @@ -1,7 +1,7 @@ func0000000000000006: # @func0000000000000006 - slli a1, a1, 4 - add a0, a0, a1 - addi a0, a0, 8 + slli a1, a1, 1 + addi a1, a1, 1 + sh3add a0, a1, a0 ret func000000000000000e: # @func000000000000000e slli a1, a1, 5 @@ -9,12 +9,12 @@ func000000000000000e: # @func000000000000000e addi a0, a0, 16 ret func0000000000000004: # @func0000000000000004 - slli a1, a1, 4 - add a0, a0, a1 - addi a0, a0, 8 + slli a1, a1, 1 + addi a1, a1, 1 + sh3add a0, a1, a0 ret func000000000000000c: # @func000000000000000c - slli a1, a1, 4 - add a0, a0, a1 - addi a0, a0, 8 + slli a1, a1, 1 + addi a1, a1, 1 + sh3add a0, a1, a0 ret diff --git a/result/rvb23u64/5ba5972d2cd3363f.S b/result/rvb23u64/5ba5972d2cd3363f.S index ad5ccebd8d6..6835eb68ab6 100644 --- a/result/rvb23u64/5ba5972d2cd3363f.S +++ b/result/rvb23u64/5ba5972d2cd3363f.S @@ -1,7 +1,8 @@ func0000000000000008: # @func0000000000000008 add a0, a0, a1 + addi a0, a0, 1 slli a0, a0, 2 - addi a0, a0, 11 + addi a0, a0, 7 ret func0000000000000000: # @func0000000000000000 add a0, a0, a1 @@ -12,8 +13,9 @@ func0000000000000000: # @func0000000000000000 ret func0000000000000005: # @func0000000000000005 add a0, a0, a1 + addi a0, a0, 3 slli a0, a0, 1 - addi a0, a0, 8 + addi a0, a0, 2 ret func0000000000000080: # @func0000000000000080 add a0, a0, a1 @@ -25,13 +27,15 @@ func0000000000000080: # @func0000000000000080 ret func00000000000000c0: # @func00000000000000c0 add a0, a0, a1 + addi a0, a0, 1 slli a0, a0, 3 - addi a0, a0, 48 + addi a0, a0, 40 ret func000000000000005d: # @func000000000000005d add a0, a0, a1 + addi a0, a0, 2 slli a0, a0, 2 - addi a0, a0, 4 + addi a0, a0, -4 ret func0000000000000040: # @func0000000000000040 add a0, a0, a1 @@ -56,6 +60,7 @@ func0000000000000055: # @func0000000000000055 ret func00000000000000dd: # @func00000000000000dd add a0, a0, a1 + addi a0, a0, 3 slli a0, a0, 3 - addi a0, a0, 16 + addi a0, a0, -8 ret diff --git a/result/rvb23u64/5bdfaebfab418ddb.S b/result/rvb23u64/5bdfaebfab418ddb.S index fa14f2d70b1..9ca95efd7fe 100644 --- a/result/rvb23u64/5bdfaebfab418ddb.S +++ b/result/rvb23u64/5bdfaebfab418ddb.S @@ -1,15 +1,18 @@ func0000000000000155: # @func0000000000000155 add a1, a1, a2 + addi a1, a1, -48 sh3add a0, a1, a0 - addiw a0, a0, -432 + addiw a0, a0, -48 ret func0000000000000175: # @func0000000000000175 add a1, a1, a2 + addi a1, a1, -48 sh3add a0, a1, a0 - addiw a0, a0, -432 + addiw a0, a0, -48 ret func0000000000000000: # @func0000000000000000 add a1, a1, a2 + addi a1, a1, 1 sh3add a0, a1, a0 - addiw a0, a0, -8 + addiw a0, a0, -16 ret diff --git a/result/rvb23u64/5e5718b167bc40ea.S b/result/rvb23u64/5e5718b167bc40ea.S index 731847e90c8..86699e8a7fa 100644 --- a/result/rvb23u64/5e5718b167bc40ea.S +++ b/result/rvb23u64/5e5718b167bc40ea.S @@ -7,6 +7,6 @@ func0000000000000004: # @func0000000000000004 ret func0000000000000006: # @func0000000000000006 sext.h a1, a1 + addi a1, a1, -1 sh2add a0, a1, a0 - addi a0, a0, -4 ret diff --git a/result/rvb23u64/5f6fb7908a91e29d.S b/result/rvb23u64/5f6fb7908a91e29d.S index d52489b6507..c8ed676ad66 100644 --- a/result/rvb23u64/5f6fb7908a91e29d.S +++ b/result/rvb23u64/5f6fb7908a91e29d.S @@ -1,7 +1,8 @@ func0000000000000070: # @func0000000000000070 slliw a1, a1, 2 + addi a1, a1, 2 sh1add a0, a1, a0 - addi a0, a0, 6 + addi a0, a0, 2 ret func000000000000002f: # @func000000000000002f slli a1, a1, 1 diff --git a/result/rvb23u64/5f8293aa5bf3813b.S b/result/rvb23u64/5f8293aa5bf3813b.S index 65994eff737..1d495d3a38a 100644 --- a/result/rvb23u64/5f8293aa5bf3813b.S +++ b/result/rvb23u64/5f8293aa5bf3813b.S @@ -28,12 +28,14 @@ func0000000000000013: # @func0000000000000013 addi a0, a0, 6 ret func000000000000001c: # @func000000000000001c + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 12 + addi a0, a0, 4 ret func000000000000001a: # @func000000000000001a + addi a1, a1, 4 sh2add a0, a1, a0 - addi a0, a0, 12 + addi a0, a0, -4 ret func000000000000000b: # @func000000000000000b ori a1, a1, 1 diff --git a/result/rvb23u64/62d713b4c404c16d.S b/result/rvb23u64/62d713b4c404c16d.S index c54c5bafab2..8c26a90835a 100644 --- a/result/rvb23u64/62d713b4c404c16d.S +++ b/result/rvb23u64/62d713b4c404c16d.S @@ -19,8 +19,9 @@ func0000000000000040: # @func0000000000000040 ret func000000000000005b: # @func000000000000005b sub a1, a1, a2 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 24 + addi a0, a0, 16 ret func000000000000000b: # @func000000000000000b sub a1, a1, a2 diff --git a/result/rvb23u64/62dd316403cb357a.S b/result/rvb23u64/62dd316403cb357a.S index 80f456b8828..edf52fd1212 100644 --- a/result/rvb23u64/62dd316403cb357a.S +++ b/result/rvb23u64/62dd316403cb357a.S @@ -1,12 +1,10 @@ func000000000000000e: # @func000000000000000e mulw a1, a1, a2 - slli a1, a1, 3 - ori a1, a1, 8 - add a0, a0, a1 + ori a1, a1, 1 + sh3add a0, a1, a0 ret func0000000000000006: # @func0000000000000006 mulw a1, a1, a2 - slli a1, a1, 2 - ori a1, a1, 4 - add a0, a0, a1 + ori a1, a1, 1 + sh2add a0, a1, a0 ret diff --git a/result/rvb23u64/6316227d3438cc8f.S b/result/rvb23u64/6316227d3438cc8f.S index 28e84aa7a5e..d76a925d991 100644 --- a/result/rvb23u64/6316227d3438cc8f.S +++ b/result/rvb23u64/6316227d3438cc8f.S @@ -3,8 +3,8 @@ func0000000000000007: # @func0000000000000007 li a3, 8 czero.nez a2, a3, a2 add a1, a1, a2 + addi a1, a1, 8 sh3add a0, a1, a0 - addi a0, a0, 64 ret func0000000000000004: # @func0000000000000004 andi a2, a2, 1 diff --git a/result/rvb23u64/640a98b314b8795c.S b/result/rvb23u64/640a98b314b8795c.S index 5ec8ee7a1d0..cc683ab102b 100644 --- a/result/rvb23u64/640a98b314b8795c.S +++ b/result/rvb23u64/640a98b314b8795c.S @@ -1,24 +1,24 @@ func000000000000003a: # @func000000000000003a slliw a2, a2, 1 + addi a2, a2, 1 sh2add a0, a1, a0 sh2add a0, a2, a0 - addi a0, a0, 4 ret func000000000000001a: # @func000000000000001a slliw a2, a2, 1 + addi a2, a2, 1 sh2add a0, a1, a0 sh2add a0, a2, a0 - addi a0, a0, 4 ret func0000000000000010: # @func0000000000000010 slliw a2, a2, 1 + addi a2, a2, 1 sh2add a0, a1, a0 sh2add a0, a2, a0 - addi a0, a0, 4 ret func0000000000000038: # @func0000000000000038 slliw a2, a2, 1 + addi a2, a2, 1 sh3add a0, a1, a0 sh3add a0, a2, a0 - addi a0, a0, 8 ret diff --git a/result/rvb23u64/656e12b0f7d2f51b.S b/result/rvb23u64/656e12b0f7d2f51b.S index 73ce5c16805..50a9135a485 100644 --- a/result/rvb23u64/656e12b0f7d2f51b.S +++ b/result/rvb23u64/656e12b0f7d2f51b.S @@ -1,18 +1,21 @@ func0000000000000155: # @func0000000000000155 andi a1, a1, 255 add a0, a0, a1 + addi a0, a0, -48 slli a0, a0, 3 - addiw a0, a0, -432 + addiw a0, a0, -48 ret func0000000000000000: # @func0000000000000000 andi a1, a1, 255 add a0, a0, a1 + addi a0, a0, 3 slli a0, a0, 3 - addiw a0, a0, 16 + addiw a0, a0, -8 ret func000000000000015d: # @func000000000000015d andi a1, a1, 255 add a0, a0, a1 + addi a0, a0, -48 slli a0, a0, 3 - addiw a0, a0, -432 + addiw a0, a0, -48 ret diff --git a/result/rvb23u64/66b0ae72971cbdfd.S b/result/rvb23u64/66b0ae72971cbdfd.S index 8db8675ad50..b4ba5c7ef3e 100644 --- a/result/rvb23u64/66b0ae72971cbdfd.S +++ b/result/rvb23u64/66b0ae72971cbdfd.S @@ -2,17 +2,17 @@ func0000000000000087: # @func0000000000000087 andi a2, a2, 255 addi a2, a2, -255 snez a2, a2 + addi a2, a2, -1 sh3add a0, a1, a0 sh3add a0, a2, a0 - addi a0, a0, -8 ret func0000000000000006: # @func0000000000000006 andi a2, a2, 255 addi a2, a2, -255 snez a2, a2 + addi a2, a2, -1 sh3add a0, a1, a0 sh3add a0, a2, a0 - addi a0, a0, -8 ret func0000000000000007: # @func0000000000000007 andi a2, a2, 255 diff --git a/result/rvb23u64/67ddda1badc4e3b4.S b/result/rvb23u64/67ddda1badc4e3b4.S index 2e57c4982dd..941e5eaeda2 100644 --- a/result/rvb23u64/67ddda1badc4e3b4.S +++ b/result/rvb23u64/67ddda1badc4e3b4.S @@ -1,12 +1,16 @@ func000000000000006e: # @func000000000000006e sext.w a2, a2 + addi a2, a2, -1 add a0, a0, a1 sh2add a0, a2, a0 + addi a0, a0, 4 ret func000000000000007e: # @func000000000000007e sext.w a2, a2 + addi a2, a2, -1 sh2add a0, a1, a0 sh2add a0, a2, a0 + addi a0, a0, 4 ret func000000000000000c: # @func000000000000000c addiw a2, a2, -1 diff --git a/result/rvb23u64/68156f4e7b1f8e7d.S b/result/rvb23u64/68156f4e7b1f8e7d.S index ee063c236c7..3fcc8d3163e 100644 --- a/result/rvb23u64/68156f4e7b1f8e7d.S +++ b/result/rvb23u64/68156f4e7b1f8e7d.S @@ -1,13 +1,12 @@ func000000000000003c: # @func000000000000003c slliw a1, a1, 1 - slli a1, a1, 2 - ori a1, a1, 1792 - add a0, a0, a1 + ori a1, a1, 448 + sh2add a0, a1, a0 ret func000000000000003f: # @func000000000000003f slliw a1, a1, 1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func000000000000000b: # @func000000000000000b slli a1, a1, 3 diff --git a/result/rvb23u64/6b1bdd8c5550c8b1.S b/result/rvb23u64/6b1bdd8c5550c8b1.S index c7ba52cf00c..a9fec329540 100644 --- a/result/rvb23u64/6b1bdd8c5550c8b1.S +++ b/result/rvb23u64/6b1bdd8c5550c8b1.S @@ -6,19 +6,22 @@ func0000000000000043: # @func0000000000000043 addi a0, a0, 8 ret func0000000000000040: # @func0000000000000040 + addi a2, a2, 2 sh1add a0, a1, a0 sh1add a0, a2, a0 - addi a0, a0, 6 + addi a0, a0, 2 ret func000000000000007a: # @func000000000000007a + addi a2, a2, 4 sh2add a0, a1, a0 sh2add a0, a2, a0 - addi a0, a0, 12 + addi a0, a0, -4 ret func000000000000007b: # @func000000000000007b + addi a2, a2, 4 sh2add a0, a1, a0 sh2add a0, a2, a0 - addi a0, a0, 20 + addi a0, a0, 4 ret func000000000000006b: # @func000000000000006b slli a2, a2, 4 diff --git a/result/rvb23u64/6b9117cc3b92d15d.S b/result/rvb23u64/6b9117cc3b92d15d.S index a02fa2b58a0..0db967501c4 100644 --- a/result/rvb23u64/6b9117cc3b92d15d.S +++ b/result/rvb23u64/6b9117cc3b92d15d.S @@ -30,9 +30,8 @@ func000000000000001b: # @func000000000000001b addi a0, a0, 8 ret func000000000000001a: # @func000000000000001a - slli a1, a1, 2 - sh3add a1, a2, a1 - add a0, a0, a1 + sh1add a1, a2, a1 + sh2add a0, a1, a0 addi a0, a0, -8 ret func0000000000000070: # @func0000000000000070 @@ -47,14 +46,13 @@ func0000000000000010: # @func0000000000000010 addi a0, a0, 1 ret func0000000000000038: # @func0000000000000038 - slli a2, a2, 5 - sh2add a1, a1, a2 - add a0, a0, a1 + sh3add a1, a2, a1 + sh2add a0, a1, a0 addi a0, a0, 4 ret func000000000000003f: # @func000000000000003f - slli a2, a2, 7 - sh1add a1, a1, a2 - add a0, a0, a1 + slli a2, a2, 6 + or a1, a1, a2 + sh1add a0, a1, a0 addi a0, a0, 2 ret diff --git a/result/rvb23u64/6c54fa0326c177ca.S b/result/rvb23u64/6c54fa0326c177ca.S index 50832f44a86..9b775bab2b3 100644 --- a/result/rvb23u64/6c54fa0326c177ca.S +++ b/result/rvb23u64/6c54fa0326c177ca.S @@ -1,27 +1,27 @@ func0000000000000006: # @func0000000000000006 zext.h a1, a1 + addi a1, a1, -1 sh3add a0, a1, a0 - addi a0, a0, -8 ret func0000000000000004: # @func0000000000000004 zext.h a1, a1 + addi a1, a1, -1 sh1add a0, a1, a0 - addi a0, a0, -2 ret func000000000000000f: # @func000000000000000f zext.h a1, a1 + addi a1, a1, 256 sh1add a0, a1, a0 - addi a0, a0, 512 ret func0000000000000007: # @func0000000000000007 zext.h a1, a1 + addi a1, a1, -1 sh3add a0, a1, a0 - addi a0, a0, -8 ret func0000000000000014: # @func0000000000000014 zext.h a1, a1 + addi a1, a1, -1 sh2add a0, a1, a0 - addi a0, a0, -4 ret func000000000000000c: # @func000000000000000c zext.h a1, a1 @@ -30,11 +30,11 @@ func000000000000000c: # @func000000000000000c ret func0000000000000017: # @func0000000000000017 zext.h a1, a1 + addi a1, a1, -65 sh3add a0, a1, a0 - addi a0, a0, -520 ret func0000000000000016: # @func0000000000000016 zext.h a1, a1 + addi a1, a1, -1 sh2add a0, a1, a0 - addi a0, a0, -4 ret diff --git a/result/rvb23u64/6c610667cc94f0d0.S b/result/rvb23u64/6c610667cc94f0d0.S index 58e8c0a2f64..b1fcdd5d7e1 100644 --- a/result/rvb23u64/6c610667cc94f0d0.S +++ b/result/rvb23u64/6c610667cc94f0d0.S @@ -1,8 +1,8 @@ func0000000000000006: # @func0000000000000006 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func0000000000000004: # @func0000000000000004 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret diff --git a/result/rvb23u64/6d43279510484c4e.S b/result/rvb23u64/6d43279510484c4e.S index bf473e087bf..129de035551 100644 --- a/result/rvb23u64/6d43279510484c4e.S +++ b/result/rvb23u64/6d43279510484c4e.S @@ -1,15 +1,15 @@ func0000000000000016: # @func0000000000000016 slliw a1, a1, 1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func0000000000000006: # @func0000000000000006 slliw a1, a1, 1 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func0000000000000004: # @func0000000000000004 slliw a1, a1, 1 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret diff --git a/result/rvb23u64/6eabc65aea89bb82.S b/result/rvb23u64/6eabc65aea89bb82.S index cf5dc7af4d8..acc0ab60d7d 100644 --- a/result/rvb23u64/6eabc65aea89bb82.S +++ b/result/rvb23u64/6eabc65aea89bb82.S @@ -9,16 +9,18 @@ func00000000000000df: # @func00000000000000df addi a0, a0, 1 ret func00000000000000f3: # @func00000000000000f3 + slli a2, a2, 2 sext.w a1, a1 + addi a2, a2, 1 sh1add a0, a1, a0 - sh3add a0, a2, a0 - addi a0, a0, 2 + sh1add a0, a2, a0 ret func00000000000000f0: # @func00000000000000f0 + slli a2, a2, 2 sext.w a1, a1 + addi a2, a2, 2 sh1add a0, a1, a0 - sh3add a0, a2, a0 - addi a0, a0, 4 + sh1add a0, a2, a0 ret func00000000000000ff: # @func00000000000000ff slli a2, a2, 5 @@ -28,11 +30,11 @@ func00000000000000ff: # @func00000000000000ff addi a0, a0, 16 ret func0000000000000073: # @func0000000000000073 - slli a2, a2, 5 + slli a2, a2, 2 sext.w a1, a1 + addi a2, a2, 1 sh3add a0, a1, a0 - add a0, a0, a2 - addi a0, a0, 8 + sh3add a0, a2, a0 ret func00000000000000d3: # @func00000000000000d3 slli a2, a2, 4 diff --git a/result/rvb23u64/6f4e3453f48c4585.S b/result/rvb23u64/6f4e3453f48c4585.S index 2ed3d9faa2f..bcc23998de6 100644 --- a/result/rvb23u64/6f4e3453f48c4585.S +++ b/result/rvb23u64/6f4e3453f48c4585.S @@ -8,9 +8,9 @@ func000000000000001f: # @func000000000000001f ret func000000000000001e: # @func000000000000001e andi a1, a1, 1 + addi a1, a1, -1 sh1add a1, a2, a1 sh3add a0, a1, a0 - addi a0, a0, -8 ret func000000000000001c: # @func000000000000001c andi a1, a1, 1 diff --git a/result/rvb23u64/7082fe81e97af96a.S b/result/rvb23u64/7082fe81e97af96a.S index 68bc3f4af5f..0d17d6d8b35 100644 --- a/result/rvb23u64/7082fe81e97af96a.S +++ b/result/rvb23u64/7082fe81e97af96a.S @@ -1,7 +1,7 @@ func000000000000002f: # @func000000000000002f - srai a1, a1, 1 - add a0, a0, a1 - addi a0, a0, -4 + srai a1, a1, 2 + addi a1, a1, -2 + sh1add a0, a1, a0 ret func000000000000002b: # @func000000000000002b srai a1, a1, 1 @@ -17,7 +17,7 @@ func000000000000000b: # @func000000000000000b add a0, a0, a1 ret func000000000000002c: # @func000000000000002c - srai a1, a1, 1 - add a0, a0, a1 - addi a0, a0, -4 + srai a1, a1, 2 + addi a1, a1, -2 + sh1add a0, a1, a0 ret diff --git a/result/rvb23u64/71935bc0e55ed406.S b/result/rvb23u64/71935bc0e55ed406.S index 6dc3f79fc82..74672f3142b 100644 --- a/result/rvb23u64/71935bc0e55ed406.S +++ b/result/rvb23u64/71935bc0e55ed406.S @@ -1,6 +1,8 @@ func0000000000000037: # @func0000000000000037 - sh1add a0, a1, a0 - addi a0, a0, -12 + addi a1, a1, -4 + srli a1, a1, 1 + addi a1, a1, -1 + sh2add a0, a1, a0 ret func0000000000000006: # @func0000000000000006 addi a1, a1, 7 diff --git a/result/rvb23u64/7295e04d22cae3ad.S b/result/rvb23u64/7295e04d22cae3ad.S index 56803b0f801..dd1e22a5c52 100644 --- a/result/rvb23u64/7295e04d22cae3ad.S +++ b/result/rvb23u64/7295e04d22cae3ad.S @@ -1,4 +1,5 @@ func000000000000000e: # @func000000000000000e + addi a1, a1, -1 sh3add a0, a1, a0 - addi a0, a0, 8 + addi a0, a0, 16 ret diff --git a/result/rvb23u64/72af7e051ddd82fc.S b/result/rvb23u64/72af7e051ddd82fc.S index 2a1fa1b511e..a85166af51f 100644 --- a/result/rvb23u64/72af7e051ddd82fc.S +++ b/result/rvb23u64/72af7e051ddd82fc.S @@ -1,8 +1,8 @@ func000000000000001c: # @func000000000000001c andi a2, a2, 255 - slli a2, a2, 19 - sh3add a1, a1, a2 - add a0, a0, a1 + slli a2, a2, 16 + or a1, a1, a2 + sh3add a0, a1, a0 ret func000000000000001f: # @func000000000000001f andi a2, a2, 255 diff --git a/result/rvb23u64/7377e457864e53c1.S b/result/rvb23u64/7377e457864e53c1.S index 70f76cb8ff5..ddd52d56a3c 100644 --- a/result/rvb23u64/7377e457864e53c1.S +++ b/result/rvb23u64/7377e457864e53c1.S @@ -11,6 +11,6 @@ func0000000000000006: # @func0000000000000006 addi a0, a0, 1 ret func0000000000000004: # @func0000000000000004 + addi a1, a1, 12 sh3add a0, a1, a0 - addi a0, a0, 96 ret diff --git a/result/rvb23u64/75d76ffaf1ca3f8e.S b/result/rvb23u64/75d76ffaf1ca3f8e.S index 6fb3c2cb7b1..f8cb49f6325 100644 --- a/result/rvb23u64/75d76ffaf1ca3f8e.S +++ b/result/rvb23u64/75d76ffaf1ca3f8e.S @@ -5,6 +5,6 @@ func000000000000000f: # @func000000000000000f ret func000000000000000c: # @func000000000000000c or a1, a1, a2 + addi a1, a1, 16 sh2add a0, a1, a0 - addi a0, a0, 64 ret diff --git a/result/rvb23u64/76f4e8a7b72b01e2.S b/result/rvb23u64/76f4e8a7b72b01e2.S index 1fbf5ce386e..d6cfa0c3afa 100644 --- a/result/rvb23u64/76f4e8a7b72b01e2.S +++ b/result/rvb23u64/76f4e8a7b72b01e2.S @@ -10,8 +10,8 @@ func0000000000000017: # @func0000000000000017 ret func0000000000000007: # @func0000000000000007 addw a1, a1, a2 + addi a1, a1, -1 sh1add a0, a1, a0 - addi a0, a0, -2 ret func0000000000000006: # @func0000000000000006 addw a1, a1, a2 diff --git a/result/rvb23u64/770752c801645076.S b/result/rvb23u64/770752c801645076.S index ac9748af499..ab09255db6c 100644 --- a/result/rvb23u64/770752c801645076.S +++ b/result/rvb23u64/770752c801645076.S @@ -15,9 +15,9 @@ func000000000000003f: # @func000000000000003f func000000000000003b: # @func000000000000003b sext.w a2, a2 seqz a2, a2 + addi a2, a2, 3 sh2add a0, a1, a0 sh2add a0, a2, a0 - addi a0, a0, 12 ret func000000000000009f: # @func000000000000009f sext.w a2, a2 diff --git a/result/rvb23u64/773316f8c5d112c9.S b/result/rvb23u64/773316f8c5d112c9.S index 7e289c62f13..e7cf2126b78 100644 --- a/result/rvb23u64/773316f8c5d112c9.S +++ b/result/rvb23u64/773316f8c5d112c9.S @@ -7,15 +7,15 @@ func000000000000002b: # @func000000000000002b ret func000000000000002f: # @func000000000000002f sub a1, a1, a2 - srai a1, a1, 1 - add a0, a0, a1 - addi a0, a0, -16 + srai a1, a1, 4 + addi a1, a1, -2 + sh3add a0, a1, a0 ret func000000000000002c: # @func000000000000002c sub a1, a1, a2 - srai a1, a1, 1 - add a0, a0, a1 - addi a0, a0, -8 + srai a1, a1, 3 + addi a1, a1, -2 + sh2add a0, a1, a0 ret func0000000000000028: # @func0000000000000028 sub a1, a1, a2 diff --git a/result/rvb23u64/79227ee8c2aca101.S b/result/rvb23u64/79227ee8c2aca101.S index 08ea31c904b..3bd67a094a1 100644 --- a/result/rvb23u64/79227ee8c2aca101.S +++ b/result/rvb23u64/79227ee8c2aca101.S @@ -1,13 +1,14 @@ func000000000000002e: # @func000000000000002e sext.w a2, a2 add a1, a1, a2 - sh3add a0, a1, a0 - addi a0, a0, 4 + slli a1, a1, 1 + addi a1, a1, 1 + sh2add a0, a1, a0 ret func0000000000000026: # @func0000000000000026 sext.w a2, a2 add a1, a1, a2 - slli a1, a1, 4 - add a0, a0, a1 - addi a0, a0, 12 + slli a1, a1, 2 + addi a1, a1, 3 + sh2add a0, a1, a0 ret diff --git a/result/rvb23u64/79f607899e39072c.S b/result/rvb23u64/79f607899e39072c.S index 8ff4a140a2c..66b20da2308 100644 --- a/result/rvb23u64/79f607899e39072c.S +++ b/result/rvb23u64/79f607899e39072c.S @@ -1,19 +1,23 @@ func000000000000001b: # @func000000000000001b + addi a2, a2, -1 slli a1, a1, 7 add a0, a0, a1 sh3add a0, a2, a0 - addi a0, a0, 8 + addi a0, a0, 16 ret func000000000000003f: # @func000000000000003f + addi a2, a2, 1 sh3add a1, a1, a1 sh3add a0, a1, a0 sh3add a0, a2, a0 - addi a0, a0, 16 + addi a0, a0, 8 ret func000000000000001f: # @func000000000000001f + addi a2, a2, -1 sh3add a1, a1, a1 sh3add a0, a1, a0 sh3add a0, a2, a0 + addi a0, a0, 8 ret func000000000000001a: # @func000000000000001a slli a1, a1, 5 @@ -22,9 +26,10 @@ func000000000000001a: # @func000000000000001a addi a0, a0, 15 ret func0000000000000010: # @func0000000000000010 + addi a2, a2, -1 li a3, 888 mul a1, a1, a3 add a0, a0, a1 sh2add a0, a2, a0 - addi a0, a0, 440 + addi a0, a0, 444 ret diff --git a/result/rvb23u64/7a782f8b949f38bb.S b/result/rvb23u64/7a782f8b949f38bb.S index bb5621e9b70..0fdd1e3c45d 100644 --- a/result/rvb23u64/7a782f8b949f38bb.S +++ b/result/rvb23u64/7a782f8b949f38bb.S @@ -1,7 +1,7 @@ func0000000000000046: # @func0000000000000046 sub a2, a2, a1 + addi a2, a2, -4 sh1add a0, a2, a0 - addi a0, a0, -8 ret func0000000000000066: # @func0000000000000066 sub a2, a2, a1 diff --git a/result/rvb23u64/7d6e21ec25a773a9.S b/result/rvb23u64/7d6e21ec25a773a9.S index a789bbf9178..f32688ea86f 100644 --- a/result/rvb23u64/7d6e21ec25a773a9.S +++ b/result/rvb23u64/7d6e21ec25a773a9.S @@ -1,5 +1,6 @@ func000000000000001e: # @func000000000000001e sext.b a1, a1 + addi a1, a1, -49 sh2add a0, a1, a0 - addi a0, a0, 372 + addi a0, a0, 568 ret diff --git a/result/rvb23u64/7e4552f1739f8d25.S b/result/rvb23u64/7e4552f1739f8d25.S index a9db2265dc5..faf21fac56d 100644 --- a/result/rvb23u64/7e4552f1739f8d25.S +++ b/result/rvb23u64/7e4552f1739f8d25.S @@ -9,7 +9,6 @@ func000000000000003c: # @func000000000000003c add a0, a0, a1 ret func000000000000001f: # @func000000000000001f - slli.uw a2, a2, 4 - sh2add a1, a1, a2 - add a0, a0, a1 + sh2add.uw a1, a2, a1 + sh2add a0, a1, a0 ret diff --git a/result/rvb23u64/7e474334dfe113cd.S b/result/rvb23u64/7e474334dfe113cd.S index 81144582752..6b734545eb5 100644 --- a/result/rvb23u64/7e474334dfe113cd.S +++ b/result/rvb23u64/7e474334dfe113cd.S @@ -1,23 +1,23 @@ func0000000000000006: # @func0000000000000006 + addi a2, a2, -113 lui a3, 12 addiw a3, a3, 1024 mul a1, a1, a3 add a0, a0, a1 sh2add a0, a2, a0 - addi a0, a0, -452 ret func000000000000000e: # @func000000000000000e + addi a2, a2, 113 lui a3, 12 addiw a3, a3, 1024 mul a1, a1, a3 add a0, a0, a1 sh2add a0, a2, a0 - addi a0, a0, 452 ret func000000000000000f: # @func000000000000000f + addi a2, a2, 1 li a3, 408 mul a1, a1, a3 add a0, a0, a1 sh2add a0, a2, a0 - addi a0, a0, 4 ret diff --git a/result/rvb23u64/7ec4be13b916c992.S b/result/rvb23u64/7ec4be13b916c992.S index 9bf293eed1a..7a3f1afb57b 100644 --- a/result/rvb23u64/7ec4be13b916c992.S +++ b/result/rvb23u64/7ec4be13b916c992.S @@ -18,19 +18,17 @@ func0000000000000004: # @func0000000000000004 ret func000000000000000f: # @func000000000000000f andi a2, a2, 56 - slli a1, a1, 7 - sh1add a1, a2, a1 - add a0, a0, a1 + slli a1, a1, 6 + or a1, a1, a2 + sh1add a0, a1, a0 ret func000000000000000e: # @func000000000000000e andi a2, a2, 1 - slli a2, a2, 2 - sh3add a1, a1, a2 - add a0, a0, a1 + sh1add a1, a1, a2 + sh2add a0, a1, a0 ret func0000000000000016: # @func0000000000000016 andi a1, a1, 3 - slli a2, a2, 5 - sh3add a1, a1, a2 - add a0, a0, a1 + sh2add a1, a2, a1 + sh3add a0, a1, a0 ret diff --git a/result/rvb23u64/7edc0349dd7f7f50.S b/result/rvb23u64/7edc0349dd7f7f50.S index f4fef3b19c2..ca47ca73765 100644 --- a/result/rvb23u64/7edc0349dd7f7f50.S +++ b/result/rvb23u64/7edc0349dd7f7f50.S @@ -30,9 +30,9 @@ func000000000000001b: # @func000000000000001b addi a0, a0, -16 ret func0000000000000010: # @func0000000000000010 + addi a2, a2, -1 sh2add a1, a2, a1 li a2, 1040 mul a0, a0, a2 add a0, a0, a1 - addi a0, a0, -4 ret diff --git a/result/rvb23u64/7f0a75e4762827b7.S b/result/rvb23u64/7f0a75e4762827b7.S index 9cf661ca42f..dfdaf3bfda2 100644 --- a/result/rvb23u64/7f0a75e4762827b7.S +++ b/result/rvb23u64/7f0a75e4762827b7.S @@ -42,8 +42,8 @@ func0000000000000016: # @func0000000000000016 ret func000000000000001b: # @func000000000000001b sub a1, a1, a2 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func0000000000000000: # @func0000000000000000 not a2, a2 @@ -62,8 +62,8 @@ func0000000000000036: # @func0000000000000036 ret func0000000000000003: # @func0000000000000003 sub a1, a1, a2 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func0000000000000022: # @func0000000000000022 not a2, a2 @@ -93,13 +93,13 @@ func000000000000003a: # @func000000000000003a ret func0000000000000038: # @func0000000000000038 sub a1, a1, a2 + addi a1, a1, -2 sh3add a0, a1, a0 - addi a0, a0, -16 ret func000000000000001f: # @func000000000000001f sub a1, a1, a2 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func000000000000002a: # @func000000000000002a not a2, a2 diff --git a/result/rvb23u64/7f1e434a65f42897.S b/result/rvb23u64/7f1e434a65f42897.S index 1e62b320c95..5da5dbb8eec 100644 --- a/result/rvb23u64/7f1e434a65f42897.S +++ b/result/rvb23u64/7f1e434a65f42897.S @@ -1,27 +1,30 @@ func000000000000002e: # @func000000000000002e - ori a1, a1, 4 - add a0, a0, a1 + srli a1, a1, 2 + ori a1, a1, 1 + sh2add a0, a1, a0 addi a0, a0, -8 ret func000000000000000e: # @func000000000000000e - ori a1, a1, 8 - andi a1, a1, -8 - add a0, a0, a1 + srli a1, a1, 3 + ori a1, a1, 1 + sh3add a0, a1, a0 addi a0, a0, -16 ret func000000000000002f: # @func000000000000002f - ori a1, a1, 2 - add a0, a0, a1 + srli a1, a1, 1 + ori a1, a1, 1 + sh1add a0, a1, a0 addi a0, a0, -4 ret func000000000000002c: # @func000000000000002c - ori a1, a1, 4 - add a0, a0, a1 + srli a1, a1, 2 + ori a1, a1, 1 + sh2add a0, a1, a0 addi a0, a0, -8 ret func000000000000000c: # @func000000000000000c - ori a1, a1, 8 - andi a1, a1, -8 - add a0, a0, a1 + srli a1, a1, 3 + ori a1, a1, 1 + sh3add a0, a1, a0 addi a0, a0, -16 ret diff --git a/result/rvb23u64/7f304fcee332d19f.S b/result/rvb23u64/7f304fcee332d19f.S index 1de0dbd684d..76b64b770b1 100644 --- a/result/rvb23u64/7f304fcee332d19f.S +++ b/result/rvb23u64/7f304fcee332d19f.S @@ -10,10 +10,9 @@ func000000000000000f: # @func000000000000000f ret func000000000000001c: # @func000000000000001c zext.h a1, a1 + li a2, 1453 + sh2add a1, a2, a1 sh2add a0, a1, a0 - lui a1, 6 - addiw a1, a1, -1328 - add a0, a0, a1 ret func000000000000000c: # @func000000000000000c andi a1, a1, 255 diff --git a/result/rvb23u64/80312a235197efdd.S b/result/rvb23u64/80312a235197efdd.S index e3c09afab68..8e6406e724a 100644 --- a/result/rvb23u64/80312a235197efdd.S +++ b/result/rvb23u64/80312a235197efdd.S @@ -1,8 +1,7 @@ func000000000000007c: # @func000000000000007c - slli a1, a1, 2 - ori a1, a1, 8 - andi a1, a1, -8 - add a0, a0, a1 + srli a1, a1, 1 + ori a1, a1, 1 + sh3add a0, a1, a0 addi a0, a0, 4 ret func000000000000007f: # @func000000000000007f diff --git a/result/rvb23u64/81f0c037f5c1bca6.S b/result/rvb23u64/81f0c037f5c1bca6.S index 50cd4a9d584..01657f5eec7 100644 --- a/result/rvb23u64/81f0c037f5c1bca6.S +++ b/result/rvb23u64/81f0c037f5c1bca6.S @@ -1,7 +1,7 @@ func000000000000001f: # @func000000000000001f - slli a1, a1, 4 - add a0, a0, a1 - addi a0, a0, 8 + slli a1, a1, 1 + addi a1, a1, 1 + sh3add a0, a1, a0 ret func0000000000000017: # @func0000000000000017 sh1add a0, a1, a0 @@ -21,9 +21,9 @@ func0000000000000004: # @func0000000000000004 addi a0, a0, 1 ret func000000000000000f: # @func000000000000000f - slli a1, a1, 4 - add a0, a0, a1 - addi a0, a0, 4 + slli a1, a1, 2 + addi a1, a1, 1 + sh2add a0, a1, a0 ret func0000000000000007: # @func0000000000000007 slli a1, a1, 5 diff --git a/result/rvb23u64/8239ffeb9448a3e9.S b/result/rvb23u64/8239ffeb9448a3e9.S index 38e04726a30..034649341da 100644 --- a/result/rvb23u64/8239ffeb9448a3e9.S +++ b/result/rvb23u64/8239ffeb9448a3e9.S @@ -8,8 +8,7 @@ func00000000000000fc: # @func00000000000000fc func00000000000000ff: # @func00000000000000ff sh1add a1, a1, a1 slliw a1, a1, 2 - slli a1, a1, 2 - ori a1, a1, 128 - add a0, a0, a1 + ori a1, a1, 32 + sh2add a0, a1, a0 addi a0, a0, 4 ret diff --git a/result/rvb23u64/840f61da6f38a464.S b/result/rvb23u64/840f61da6f38a464.S index 4385d97e33b..f08aa400b02 100644 --- a/result/rvb23u64/840f61da6f38a464.S +++ b/result/rvb23u64/840f61da6f38a464.S @@ -1,10 +1,10 @@ func0000000000000007: # @func0000000000000007 sext.b a1, a1 + addi a1, a1, -49 sh2add a0, a1, a0 - addi a0, a0, -196 ret func0000000000000006: # @func0000000000000006 sext.b a1, a1 + addi a1, a1, -49 sh2add a0, a1, a0 - addi a0, a0, -196 ret diff --git a/result/rvb23u64/84abffaabd45af72.S b/result/rvb23u64/84abffaabd45af72.S index 5563e85afd6..ca833935bf9 100644 --- a/result/rvb23u64/84abffaabd45af72.S +++ b/result/rvb23u64/84abffaabd45af72.S @@ -1,7 +1,7 @@ func000000000000001f: # @func000000000000001f + addi a2, a2, 1 sh3add a1, a1, a2 sh2add a0, a1, a0 - addi a0, a0, 4 ret func000000000000001e: # @func000000000000001e add a0, a0, a1 @@ -9,10 +9,10 @@ func000000000000001e: # @func000000000000001e addi a0, a0, 1 ret func000000000000001b: # @func000000000000001b + addi a2, a2, 1 sh2add a1, a1, a1 sh2add a1, a1, a2 sh3add a0, a1, a0 - addi a0, a0, 8 ret func0000000000000010: # @func0000000000000010 sh2add a0, a1, a0 diff --git a/result/rvb23u64/854901396f68c23d.S b/result/rvb23u64/854901396f68c23d.S index 6cde4fc5126..41bd3ccdcd4 100644 --- a/result/rvb23u64/854901396f68c23d.S +++ b/result/rvb23u64/854901396f68c23d.S @@ -12,6 +12,7 @@ func0000000000000000: # @func0000000000000000 ret func00000000000000d4: # @func00000000000000d4 subw a2, a2, a1 + addi a2, a2, 1 sh2add a0, a2, a0 - addiw a0, a0, 4 + sext.w a0, a0 ret diff --git a/result/rvb23u64/871d1e35b232f275.S b/result/rvb23u64/871d1e35b232f275.S index 24f8410378b..9319cadf252 100644 --- a/result/rvb23u64/871d1e35b232f275.S +++ b/result/rvb23u64/871d1e35b232f275.S @@ -19,7 +19,6 @@ func0000000000000002: # @func0000000000000002 sh2add a0, a1, a0 ret func0000000000000000: # @func0000000000000000 - slli a1, a1, 3 - ori a1, a1, -16 - add a0, a0, a1 + ori a1, a1, -2 + sh3add a0, a1, a0 ret diff --git a/result/rvb23u64/925b0753ff886b4f.S b/result/rvb23u64/925b0753ff886b4f.S index 65c682c52e6..8a2fe6ce1ef 100644 --- a/result/rvb23u64/925b0753ff886b4f.S +++ b/result/rvb23u64/925b0753ff886b4f.S @@ -1,5 +1,4 @@ func0000000000000007: # @func0000000000000007 - srliw a1, a1, 1 - sh3add a0, a1, a0 - addi a0, a0, 4 + ori a1, a1, 1 + sh2add.uw a0, a1, a0 ret diff --git a/result/rvb23u64/92b377fc65bdafef.S b/result/rvb23u64/92b377fc65bdafef.S index e4e76456f6c..67acc4464d5 100644 --- a/result/rvb23u64/92b377fc65bdafef.S +++ b/result/rvb23u64/92b377fc65bdafef.S @@ -1,8 +1,8 @@ func0000000000000006: # @func0000000000000006 - slli a1, a1, 3 - andi a1, a1, -16 - add a0, a0, a1 - addi a0, a0, 4 + slli a1, a1, 1 + andi a1, a1, -4 + addi a1, a1, 1 + sh2add a0, a1, a0 ret func000000000000001f: # @func000000000000001f slli a1, a1, 4 diff --git a/result/rvb23u64/92e88352eeab8e91.S b/result/rvb23u64/92e88352eeab8e91.S index fdac05bed04..3b4651b6b0e 100644 --- a/result/rvb23u64/92e88352eeab8e91.S +++ b/result/rvb23u64/92e88352eeab8e91.S @@ -15,6 +15,6 @@ func0000000000000002: # @func0000000000000002 func000000000000000f: # @func000000000000000f andi a2, a2, 1 sub a1, a1, a2 + addi a1, a1, 2 sh3add a0, a1, a0 - addi a0, a0, 16 ret diff --git a/result/rvb23u64/931b9cafe972c5d7.S b/result/rvb23u64/931b9cafe972c5d7.S index dfe7730668d..c421d0bde06 100644 --- a/result/rvb23u64/931b9cafe972c5d7.S +++ b/result/rvb23u64/931b9cafe972c5d7.S @@ -1,8 +1,6 @@ func0000000000000003: # @func0000000000000003 - ori a1, a0, 1 - slli a0, a0, 1 - ori a0, a0, 2 - add a0, a0, a1 + ori a0, a0, 1 + sh1add a0, a0, a0 ret func0000000000000001: # @func0000000000000001 slli a0, a0, 32 @@ -18,10 +16,8 @@ func0000000000000007: # @func0000000000000007 addi a0, a0, 3 ret func0000000000000000: # @func0000000000000000 - ori a1, a0, 1 - slli a0, a0, 1 - ori a0, a0, 2 - add a0, a0, a1 + ori a0, a0, 1 + sh1add a0, a0, a0 ret func0000000000000006: # @func0000000000000006 sh1add a0, a0, a0 diff --git a/result/rvb23u64/95af505f207771b5.S b/result/rvb23u64/95af505f207771b5.S index 74ed9416661..6b25f1c8ead 100644 --- a/result/rvb23u64/95af505f207771b5.S +++ b/result/rvb23u64/95af505f207771b5.S @@ -8,7 +8,6 @@ func0000000000000007: # @func0000000000000007 ret func0000000000000004: # @func0000000000000004 andi a2, a2, 1 - slli a1, a1, 2 - sh3add a1, a2, a1 - add a0, a0, a1 + sh1add a1, a2, a1 + sh2add a0, a1, a0 ret diff --git a/result/rvb23u64/95cd65d4b403f1e7.S b/result/rvb23u64/95cd65d4b403f1e7.S index 913529b2e38..3cb81b52f23 100644 --- a/result/rvb23u64/95cd65d4b403f1e7.S +++ b/result/rvb23u64/95cd65d4b403f1e7.S @@ -32,7 +32,8 @@ func00000000000001f0: # @func00000000000001f0 sh2add a0, a1, a0 ret func00000000000000c0: # @func00000000000000c0 - sh1add a1, a2, a1 + slli a2, a2, 2 + addi a2, a2, 1 + sh2add a0, a2, a0 sh3add a0, a1, a0 - addi a0, a0, 4 ret diff --git a/result/rvb23u64/95d309571633dd79.S b/result/rvb23u64/95d309571633dd79.S index d6a9d2dfbdf..eef89af5698 100644 --- a/result/rvb23u64/95d309571633dd79.S +++ b/result/rvb23u64/95d309571633dd79.S @@ -21,8 +21,9 @@ func000000000000000f: # @func000000000000000f ret func000000000000005e: # @func000000000000005e sub a1, a1, a2 + addi a1, a1, 3 sh2add a0, a1, a0 - addi a0, a0, 312 + addi a0, a0, 300 ret func000000000000001c: # @func000000000000001c not a2, a2 @@ -32,6 +33,7 @@ func000000000000001c: # @func000000000000001c ret func000000000000000c: # @func000000000000000c sub a1, a1, a2 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 16 + addi a0, a0, 8 ret diff --git a/result/rvb23u64/95eef9f3098332be.S b/result/rvb23u64/95eef9f3098332be.S index cd09773e0ef..440ae5fe7fb 100644 --- a/result/rvb23u64/95eef9f3098332be.S +++ b/result/rvb23u64/95eef9f3098332be.S @@ -1,6 +1,6 @@ func000000000000000f: # @func000000000000000f + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func0000000000000000: # @func0000000000000000 slli a2, a1, 3 @@ -14,12 +14,12 @@ func0000000000000004: # @func0000000000000004 addi a0, a0, 1 ret func0000000000000008: # @func0000000000000008 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func0000000000000003: # @func0000000000000003 + addi a1, a1, -1 sh3add a0, a1, a0 - addi a0, a0, -8 ret func0000000000000006: # @func0000000000000006 add a0, a0, a1 diff --git a/result/rvb23u64/9615b2e3a6b06db2.S b/result/rvb23u64/9615b2e3a6b06db2.S index 67d4e9ee3eb..5e6d794bf8d 100644 --- a/result/rvb23u64/9615b2e3a6b06db2.S +++ b/result/rvb23u64/9615b2e3a6b06db2.S @@ -1,7 +1,7 @@ func000000000000006e: # @func000000000000006e sh1add a1, a2, a1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func000000000000002e: # @func000000000000002e slli a2, a2, 5 @@ -44,6 +44,6 @@ func000000000000007c: # @func000000000000007c func000000000000003f: # @func000000000000003f slli a2, a2, 5 add a1, a1, a2 + addi a1, a1, 16 sh2add a0, a1, a0 - addi a0, a0, 64 ret diff --git a/result/rvb23u64/983b28b6a5b48e6f.S b/result/rvb23u64/983b28b6a5b48e6f.S index 82754edd13c..9ed2a246d89 100644 --- a/result/rvb23u64/983b28b6a5b48e6f.S +++ b/result/rvb23u64/983b28b6a5b48e6f.S @@ -35,9 +35,10 @@ func000000000000003f: # @func000000000000003f addi a0, a0, 12 ret func0000000000000073: # @func0000000000000073 + addi a1, a1, 2 sh1add a0, a1, a0 lui a1, 225 - addiw a1, a1, 1284 + addiw a1, a1, 1280 add a0, a0, a1 ret func0000000000000003: # @func0000000000000003 diff --git a/result/rvb23u64/98e02c8a16f4686a.S b/result/rvb23u64/98e02c8a16f4686a.S index 6ca95fed2d8..aae9d679b77 100644 --- a/result/rvb23u64/98e02c8a16f4686a.S +++ b/result/rvb23u64/98e02c8a16f4686a.S @@ -1,7 +1,7 @@ func0000000000000006: # @func0000000000000006 sraiw a1, a1, 6 + addi a1, a1, -1 sh3add a0, a1, a0 - addi a0, a0, -8 ret func0000000000000007: # @func0000000000000007 sraiw a1, a1, 10 diff --git a/result/rvb23u64/9926ac9d90d7b58a.S b/result/rvb23u64/9926ac9d90d7b58a.S index a97f69b4816..a027b855cd0 100644 --- a/result/rvb23u64/9926ac9d90d7b58a.S +++ b/result/rvb23u64/9926ac9d90d7b58a.S @@ -27,9 +27,10 @@ func000000000000002a: # @func000000000000002a addi a0, a0, 24 ret func0000000000000030: # @func0000000000000030 + addi a2, a2, 1 add a0, a0, a1 sh2add a0, a2, a0 - addi a0, a0, 5 + addi a0, a0, 1 ret func0000000000000000: # @func0000000000000000 slli a2, a2, 4 diff --git a/result/rvb23u64/99f43a0f9eb63781.S b/result/rvb23u64/99f43a0f9eb63781.S index a7351cf6e0a..8fe47c698cb 100644 --- a/result/rvb23u64/99f43a0f9eb63781.S +++ b/result/rvb23u64/99f43a0f9eb63781.S @@ -1,21 +1,18 @@ func000000000000009a: # @func000000000000009a sext.w a2, a2 - slli a2, a2, 2 - sh3add a1, a1, a2 - add a0, a0, a1 + sh1add a1, a1, a2 + sh2add a0, a1, a0 addi a0, a0, -8 ret func000000000000009b: # @func000000000000009b sext.w a2, a2 - slli a2, a2, 2 - sh3add a1, a1, a2 - add a0, a0, a1 + sh1add a1, a1, a2 + sh2add a0, a1, a0 addi a0, a0, 8 ret func00000000000000b8: # @func00000000000000b8 sext.w a2, a2 - slli a1, a1, 5 - sh2add a1, a2, a1 - add a0, a0, a1 + sh3add a1, a1, a2 + sh2add a0, a1, a0 addi a0, a0, 4 ret diff --git a/result/rvb23u64/9b0a0ba0e976456e.S b/result/rvb23u64/9b0a0ba0e976456e.S index 7b5dd7f4fe6..63bfa5081a9 100644 --- a/result/rvb23u64/9b0a0ba0e976456e.S +++ b/result/rvb23u64/9b0a0ba0e976456e.S @@ -10,20 +10,23 @@ func000000000000001c: # @func000000000000001c ret func000000000000003e: # @func000000000000003e sext.w a1, a1 - slli a1, a1, 5 - add a0, a0, a1 - addi a0, a0, 16 + slli a1, a1, 2 + addi a1, a1, 1 + sh3add a0, a1, a0 + addi a0, a0, 8 ret func000000000000001e: # @func000000000000001e slliw a1, a1, 1 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 16 + addi a0, a0, 8 ret func000000000000003c: # @func000000000000003c sext.w a1, a1 - slli a1, a1, 4 - add a0, a0, a1 - addi a0, a0, 56 + slli a1, a1, 1 + addi a1, a1, 1 + sh3add a0, a1, a0 + addi a0, a0, 48 ret func0000000000000030: # @func0000000000000030 sext.w a1, a1 diff --git a/result/rvb23u64/9c0af2965b39ff14.S b/result/rvb23u64/9c0af2965b39ff14.S index 9dfba343cad..709c66ef921 100644 --- a/result/rvb23u64/9c0af2965b39ff14.S +++ b/result/rvb23u64/9c0af2965b39ff14.S @@ -14,6 +14,6 @@ func00000000000000d0: # @func00000000000000d0 li a3, 272 mul a2, a2, a3 add a0, a0, a2 + addi a1, a1, -1 sh3add a0, a1, a0 - addi a0, a0, -8 ret diff --git a/result/rvb23u64/9cb1f1a10201364b.S b/result/rvb23u64/9cb1f1a10201364b.S index dcc3a2e4154..1b59f98552a 100644 --- a/result/rvb23u64/9cb1f1a10201364b.S +++ b/result/rvb23u64/9cb1f1a10201364b.S @@ -10,8 +10,9 @@ func000000000000007f: # @func000000000000007f ret func000000000000007b: # @func000000000000007b sh3add a0, a0, a2 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 24 + addi a0, a0, 16 ret func0000000000000013: # @func0000000000000013 li a3, 912 @@ -28,6 +29,7 @@ func000000000000007e: # @func000000000000007e ret func000000000000005a: # @func000000000000005a add a0, a0, a2 + addi a1, a1, 1 sh1add a0, a1, a0 - addi a0, a0, -2 + addi a0, a0, -4 ret diff --git a/result/rvb23u64/9e325ffaa2399842.S b/result/rvb23u64/9e325ffaa2399842.S index 1bfc59b3aad..8fff11e91f4 100644 --- a/result/rvb23u64/9e325ffaa2399842.S +++ b/result/rvb23u64/9e325ffaa2399842.S @@ -1,7 +1,7 @@ func000000000000000f: # @func000000000000000f andi a1, a1, 255 + addi a1, a1, 256 sh2add a0, a1, a0 - addi a0, a0, 1024 ret func000000000000000c: # @func000000000000000c ori a1, a1, 64 diff --git a/result/rvb23u64/a1124a241d55907c.S b/result/rvb23u64/a1124a241d55907c.S index 2e0e280c186..46dec770e7e 100644 --- a/result/rvb23u64/a1124a241d55907c.S +++ b/result/rvb23u64/a1124a241d55907c.S @@ -12,13 +12,13 @@ func00000000000000fc: # @func00000000000000fc ret func0000000000000078: # @func0000000000000078 sub a2, a2, a1 + addi a2, a2, 1 sh1add a0, a2, a0 - addi a0, a0, 2 ret func00000000000000d4: # @func00000000000000d4 sub a2, a2, a1 + addi a2, a2, 1 sh1add a0, a2, a0 - addi a0, a0, 2 ret func00000000000000d0: # @func00000000000000d0 sub a2, a2, a1 diff --git a/result/rvb23u64/a144acbf76873007.S b/result/rvb23u64/a144acbf76873007.S index 9c977bb7a1e..b74fcaf5bb0 100644 --- a/result/rvb23u64/a144acbf76873007.S +++ b/result/rvb23u64/a144acbf76873007.S @@ -1,10 +1,14 @@ func0000000000000020: # @func0000000000000020 - sub a0, a1, a0 - slli a0, a0, 3 + sub a1, a1, a0 + addi a1, a1, 1 + slli a0, a1, 3 + addi a0, a0, -8 ret func000000000000002d: # @func000000000000002d - sub a0, a1, a0 - slli a0, a0, 3 + sub a1, a1, a0 + addi a1, a1, 1 + slli a0, a1, 3 + addi a0, a0, -8 ret func0000000000000070: # @func0000000000000070 not a0, a0 @@ -19,10 +23,14 @@ func000000000000007d: # @func000000000000007d addi a0, a0, -8 ret func0000000000000060: # @func0000000000000060 - sub a0, a1, a0 - slli a0, a0, 3 + sub a1, a1, a0 + addi a1, a1, 1 + slli a0, a1, 3 + addi a0, a0, -8 ret func000000000000006d: # @func000000000000006d - sub a0, a1, a0 - slli a0, a0, 3 + sub a1, a1, a0 + addi a1, a1, 1 + slli a0, a1, 3 + addi a0, a0, -8 ret diff --git a/result/rvb23u64/a16c81fc60cf376c.S b/result/rvb23u64/a16c81fc60cf376c.S index 0419bf5a1c2..538fb5a8022 100644 --- a/result/rvb23u64/a16c81fc60cf376c.S +++ b/result/rvb23u64/a16c81fc60cf376c.S @@ -1,18 +1,18 @@ func0000000000000007: # @func0000000000000007 - slli a1, a1, 49 - srli a1, a1, 47 - add a0, a0, a1 - addi a0, a0, 2 + slli a1, a1, 1 + addi a1, a1, 1 + zext.h a1, a1 + sh1add a0, a1, a0 ret func000000000000000f: # @func000000000000000f - slli a1, a1, 49 - srli a1, a1, 47 - add a0, a0, a1 - addi a0, a0, 2 + slli a1, a1, 1 + addi a1, a1, 1 + zext.h a1, a1 + sh1add a0, a1, a0 ret func000000000000001f: # @func000000000000001f - slli a1, a1, 3 - andi a1, a1, 8 - add a0, a0, a1 - addi a0, a0, 4 + slli a1, a1, 1 + andi a1, a1, 2 + addi a1, a1, 1 + sh2add a0, a1, a0 ret diff --git a/result/rvb23u64/a21b563b631d3393.S b/result/rvb23u64/a21b563b631d3393.S index 628cf85f638..4145028e86d 100644 --- a/result/rvb23u64/a21b563b631d3393.S +++ b/result/rvb23u64/a21b563b631d3393.S @@ -1,38 +1,38 @@ func0000000000000013: # @func0000000000000013 - slli a2, a2, 4 + slli a2, a2, 1 + addi a2, a2, 1 sh3add a0, a1, a0 - add a0, a0, a2 - addi a0, a0, 8 + sh3add a0, a2, a0 ret func0000000000000010: # @func0000000000000010 - slli a2, a2, 4 + slli a2, a2, 1 + addi a2, a2, 1 sh3add a0, a1, a0 - add a0, a0, a2 - addi a0, a0, 8 + sh3add a0, a2, a0 ret func0000000000000033: # @func0000000000000033 - slli a2, a2, 4 + slli a2, a2, 1 + addi a2, a2, 1 sh3add a0, a1, a0 - add a0, a0, a2 - addi a0, a0, 8 + sh3add a0, a2, a0 ret func0000000000000030: # @func0000000000000030 - slli a2, a2, 4 + slli a2, a2, 1 + addi a2, a2, 1 sh3add a0, a1, a0 - add a0, a0, a2 - addi a0, a0, 8 + sh3add a0, a2, a0 ret func0000000000000012: # @func0000000000000012 - slli a2, a2, 4 + slli a2, a2, 1 + addi a2, a2, 1 sh3add a0, a1, a0 - add a0, a0, a2 - addi a0, a0, 8 + sh3add a0, a2, a0 ret func0000000000000032: # @func0000000000000032 - slli a2, a2, 4 + slli a2, a2, 1 + addi a2, a2, 1 sh3add a0, a1, a0 - add a0, a0, a2 - addi a0, a0, 8 + sh3add a0, a2, a0 ret func0000000000000072: # @func0000000000000072 sh2add a0, a2, a0 diff --git a/result/rvb23u64/a282245dc607dff1.S b/result/rvb23u64/a282245dc607dff1.S index 754683368be..128a2e9d129 100644 --- a/result/rvb23u64/a282245dc607dff1.S +++ b/result/rvb23u64/a282245dc607dff1.S @@ -9,8 +9,8 @@ func0000000000000004: # @func0000000000000004 ret func0000000000000006: # @func0000000000000006 sext.w a1, a1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func0000000000000007: # @func0000000000000007 sext.w a1, a1 diff --git a/result/rvb23u64/a5a6f55f9912a874.S b/result/rvb23u64/a5a6f55f9912a874.S index 55298dffe2c..6e0d180fb2a 100644 --- a/result/rvb23u64/a5a6f55f9912a874.S +++ b/result/rvb23u64/a5a6f55f9912a874.S @@ -1,7 +1,8 @@ func000000000000003f: # @func000000000000003f andi a1, a1, 255 + addi a1, a1, 256 sh2add a0, a1, a0 - addi a0, a0, 1096 + addi a0, a0, 72 ret func000000000000002f: # @func000000000000002f ori a1, a1, 13 diff --git a/result/rvb23u64/a848e38690a3e4f5.S b/result/rvb23u64/a848e38690a3e4f5.S index ec001628c0c..0112e9894de 100644 --- a/result/rvb23u64/a848e38690a3e4f5.S +++ b/result/rvb23u64/a848e38690a3e4f5.S @@ -51,6 +51,6 @@ func0000000000000008: # @func0000000000000008 ret func000000000000003f: # @func000000000000003f andi a1, a1, 255 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret diff --git a/result/rvb23u64/a943cb1f653b5fce.S b/result/rvb23u64/a943cb1f653b5fce.S index e5adc1bfcea..f29b5957380 100644 --- a/result/rvb23u64/a943cb1f653b5fce.S +++ b/result/rvb23u64/a943cb1f653b5fce.S @@ -1,8 +1,9 @@ func000000000000003f: # @func000000000000003f - slli a0, a0, 2 + addi a0, a0, -1 li a1, 1 - addi a0, a0, 11 + slli a0, a0, 2 slli a1, a1, 34 + addi a0, a0, 15 addi a1, a1, -8 and a0, a0, a1 ret @@ -13,6 +14,8 @@ func000000000000000f: # @func000000000000000f andi a0, a0, -8 ret func000000000000002f: # @func000000000000002f - slli a0, a0, 33 - srli a0, a0, 32 + addi a0, a0, -1 + slli a0, a0, 1 + addi a0, a0, 2 + zext.w a0, a0 ret diff --git a/result/rvb23u64/aa40e6d34090dfcb.S b/result/rvb23u64/aa40e6d34090dfcb.S index 321b3991046..d63fe0d8dde 100644 --- a/result/rvb23u64/aa40e6d34090dfcb.S +++ b/result/rvb23u64/aa40e6d34090dfcb.S @@ -1,14 +1,14 @@ func0000000000000007: # @func0000000000000007 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func0000000000000006: # @func0000000000000006 add a0, a0, a1 addi a0, a0, 4 ret func0000000000000004: # @func0000000000000004 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func0000000000000002: # @func0000000000000002 ori a1, a1, 32 diff --git a/result/rvb23u64/abde69a1a5dada9a.S b/result/rvb23u64/abde69a1a5dada9a.S index ee0f6c401e3..fefa2ca1dc2 100644 --- a/result/rvb23u64/abde69a1a5dada9a.S +++ b/result/rvb23u64/abde69a1a5dada9a.S @@ -1,45 +1,45 @@ func0000000000000004: # @func0000000000000004 slliw a1, a1, 1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func0000000000000064: # @func0000000000000064 slliw a1, a1, 2 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func0000000000000006: # @func0000000000000006 slliw a1, a1, 1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func000000000000000e: # @func000000000000000e slliw a1, a1, 1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func0000000000000026: # @func0000000000000026 slliw a1, a1, 1 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func0000000000000036: # @func0000000000000036 slliw a1, a1, 1 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func000000000000006e: # @func000000000000006e slliw a1, a1, 1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func000000000000002e: # @func000000000000002e slliw a1, a1, 1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func0000000000000046: # @func0000000000000046 slliw a1, a1, 2 + addi a1, a1, 2 sh2add a0, a1, a0 - addi a0, a0, 8 ret diff --git a/result/rvb23u64/ad2c16c48ddb2cec.S b/result/rvb23u64/ad2c16c48ddb2cec.S index 8aba86822c1..11c44c13615 100644 --- a/result/rvb23u64/ad2c16c48ddb2cec.S +++ b/result/rvb23u64/ad2c16c48ddb2cec.S @@ -21,9 +21,9 @@ func0000000000000007: # @func0000000000000007 ret func0000000000000006: # @func0000000000000006 andi a1, a1, 1 + addi a1, a1, -1 sh3add a0, a2, a0 sh3add a0, a1, a0 - addi a0, a0, -8 ret func000000000000000b: # @func000000000000000b li a3, 1 diff --git a/result/rvb23u64/adf23ced988fa085.S b/result/rvb23u64/adf23ced988fa085.S index 655c152fcb2..8a87fe7a406 100644 --- a/result/rvb23u64/adf23ced988fa085.S +++ b/result/rvb23u64/adf23ced988fa085.S @@ -1,17 +1,17 @@ func000000000000000e: # @func000000000000000e add a1, a1, a2 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func000000000000001f: # @func000000000000001f add a1, a1, a2 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func0000000000000006: # @func0000000000000006 add a1, a1, a2 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func000000000000000c: # @func000000000000000c add a1, a1, a2 diff --git a/result/rvb23u64/ae10769cafcfebad.S b/result/rvb23u64/ae10769cafcfebad.S index 4f1aef8e22c..f24d9cf36ee 100644 --- a/result/rvb23u64/ae10769cafcfebad.S +++ b/result/rvb23u64/ae10769cafcfebad.S @@ -9,7 +9,7 @@ func0000000000000002: # @func0000000000000002 addi a0, a0, -32 ret func0000000000000008: # @func0000000000000008 - slli a1, a1, 4 - add a0, a0, a1 - addi a0, a0, -16 + slli a1, a1, 1 + addi a1, a1, -2 + sh3add a0, a1, a0 ret diff --git a/result/rvb23u64/ae50748ed4a4ad7c.S b/result/rvb23u64/ae50748ed4a4ad7c.S index 8db15ff77af..e422409dc6d 100644 --- a/result/rvb23u64/ae50748ed4a4ad7c.S +++ b/result/rvb23u64/ae50748ed4a4ad7c.S @@ -5,13 +5,13 @@ func000000000000000c: # @func000000000000000c ret func000000000000002e: # @func000000000000002e sub a1, a1, a2 - slli a1, a1, 4 - add a0, a0, a1 - addi a0, a0, 8 + slli a1, a1, 1 + addi a1, a1, 1 + sh3add a0, a1, a0 ret func0000000000000004: # @func0000000000000004 sub a1, a1, a2 - slli a1, a1, 4 - add a0, a0, a1 - addi a0, a0, 8 + slli a1, a1, 1 + addi a1, a1, 1 + sh3add a0, a1, a0 ret diff --git a/result/rvb23u64/b027ac01294ecf74.S b/result/rvb23u64/b027ac01294ecf74.S index 926f170c751..e4a7f38d15b 100644 --- a/result/rvb23u64/b027ac01294ecf74.S +++ b/result/rvb23u64/b027ac01294ecf74.S @@ -4,38 +4,39 @@ func000000000000017e: # @func000000000000017e addi a0, a0, 1 ret func000000000000009b: # @func000000000000009b - slli a2, a2, 4 - slli a1, a1, 4 - add a0, a0, a1 - add a0, a0, a2 - addi a0, a0, 4 + slli a2, a2, 2 + addi a2, a2, 1 + sh2add a1, a1, a2 + sh2add a0, a1, a0 ret func00000000000000bf: # @func00000000000000bf - slli a2, a2, 4 - slli a1, a1, 4 - add a0, a0, a1 - add a0, a0, a2 - addi a0, a0, 4 + slli a2, a2, 2 + addi a2, a2, 1 + sh2add a1, a1, a2 + sh2add a0, a1, a0 ret func00000000000001f0: # @func00000000000001f0 - slli a2, a2, 6 + slli a2, a2, 4 slli a1, a1, 7 + addi a2, a2, 16 add a0, a0, a1 - add a0, a0, a2 - addi a0, a0, 64 + sh2add a0, a2, a0 ret func00000000000001bb: # @func00000000000001bb + slli a2, a2, 1 + addi a2, a2, 1 sh2add a0, a1, a0 - sh2add a0, a2, a0 - addi a0, a0, 2 + sh1add a0, a2, a0 ret func00000000000001ff: # @func00000000000001ff + slli a2, a2, 1 + addi a2, a2, 1 sh2add a0, a1, a0 - sh2add a0, a2, a0 - addi a0, a0, 2 + sh1add a0, a2, a0 ret func00000000000001bf: # @func00000000000001bf + slli a2, a2, 1 + addi a2, a2, 1 sh2add a0, a1, a0 - sh2add a0, a2, a0 - addi a0, a0, 2 + sh1add a0, a2, a0 ret diff --git a/result/rvb23u64/b288dc1fadf28cf5.S b/result/rvb23u64/b288dc1fadf28cf5.S index 348749059ae..115c264462f 100644 --- a/result/rvb23u64/b288dc1fadf28cf5.S +++ b/result/rvb23u64/b288dc1fadf28cf5.S @@ -1,8 +1,8 @@ func0000000000000013: # @func0000000000000013 slli a1, a1, 33 srli a1, a1, 33 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func000000000000000b: # @func000000000000000b andi a1, a1, 15 diff --git a/result/rvb23u64/b29a087699444e17.S b/result/rvb23u64/b29a087699444e17.S index 314d52ef73e..52329b1c159 100644 --- a/result/rvb23u64/b29a087699444e17.S +++ b/result/rvb23u64/b29a087699444e17.S @@ -24,8 +24,8 @@ func0000000000000002: # @func0000000000000002 func0000000000000036: # @func0000000000000036 zext.w a2, a2 sub a1, a1, a2 + addi a1, a1, 4 sh2add a0, a1, a0 - addi a0, a0, 16 ret func0000000000000056: # @func0000000000000056 not a2, a2 diff --git a/result/rvb23u64/b4a6516ce2f0988f.S b/result/rvb23u64/b4a6516ce2f0988f.S index 76a5ab18ea0..067e4a350dd 100644 --- a/result/rvb23u64/b4a6516ce2f0988f.S +++ b/result/rvb23u64/b4a6516ce2f0988f.S @@ -5,18 +5,18 @@ func0000000000000004: # @func0000000000000004 ret func000000000000000e: # @func000000000000000e sext.w a1, a1 - slli a1, a1, 5 - add a0, a0, a1 - addi a0, a0, 8 + slli a1, a1, 2 + addi a1, a1, 1 + sh3add a0, a1, a0 ret func0000000000000006: # @func0000000000000006 slliw a1, a1, 1 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func000000000000000c: # @func000000000000000c sext.w a1, a1 - slli a1, a1, 4 - add a0, a0, a1 - addi a0, a0, 8 + slli a1, a1, 1 + addi a1, a1, 1 + sh3add a0, a1, a0 ret diff --git a/result/rvb23u64/b4cc41c4280b4098.S b/result/rvb23u64/b4cc41c4280b4098.S index 22f3b7e07f4..4032e1fb99a 100644 --- a/result/rvb23u64/b4cc41c4280b4098.S +++ b/result/rvb23u64/b4cc41c4280b4098.S @@ -1,5 +1,5 @@ func0000000000000000: # @func0000000000000000 add a1, a1, a2 + addi a1, a1, 9 sh1add a0, a1, a0 - addi a0, a0, 18 ret diff --git a/result/rvb23u64/b4d70202c66fabd0.S b/result/rvb23u64/b4d70202c66fabd0.S index 3238404e6ae..18b10d8b896 100644 --- a/result/rvb23u64/b4d70202c66fabd0.S +++ b/result/rvb23u64/b4d70202c66fabd0.S @@ -16,21 +16,24 @@ func00000000000000ff: # @func00000000000000ff func0000000000000012: # @func0000000000000012 add a1, a1, a2 lui a2, 12 + addi a1, a1, -224 sh2add a0, a1, a0 - addiw a1, a2, 128 + addiw a1, a2, 1024 add a0, a0, a1 ret func0000000000000032: # @func0000000000000032 add a1, a1, a2 lui a2, 12 + addi a1, a1, 224 sh2add a0, a1, a0 - addiw a1, a2, 1920 + addiw a1, a2, 1024 add a0, a0, a1 ret func000000000000001c: # @func000000000000001c add a1, a1, a2 lui a2, 74 + addi a1, a1, -1 sh3add a0, a1, a0 - addiw a1, a2, -96 + addiw a1, a2, -88 add a0, a0, a1 ret diff --git a/result/rvb23u64/b4dc0abe87782418.S b/result/rvb23u64/b4dc0abe87782418.S index 13a7b5b10a8..2119d0fec30 100644 --- a/result/rvb23u64/b4dc0abe87782418.S +++ b/result/rvb23u64/b4dc0abe87782418.S @@ -1,12 +1,12 @@ func0000000000000006: # @func0000000000000006 mul a1, a1, a2 slliw a1, a1, 1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func000000000000000e: # @func000000000000000e mul a1, a1, a2 slliw a1, a1, 1 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret diff --git a/result/rvb23u64/b58c223ebdde8192.S b/result/rvb23u64/b58c223ebdde8192.S index 8a748c5f332..621946b149d 100644 --- a/result/rvb23u64/b58c223ebdde8192.S +++ b/result/rvb23u64/b58c223ebdde8192.S @@ -1,11 +1,11 @@ func000000000000000c: # @func000000000000000c andi a1, a1, 7 + ori a1, a1, 1472 + bseti a1, a1, 11 sh2add a0, a1, a0 - li a1, 1760 - sh3add a0, a1, a0 ret func000000000000000f: # @func000000000000000f andi a1, a1, 2 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret diff --git a/result/rvb23u64/b5b6a99de2fb3ba5.S b/result/rvb23u64/b5b6a99de2fb3ba5.S index 1bbe2387859..2f86a565439 100644 --- a/result/rvb23u64/b5b6a99de2fb3ba5.S +++ b/result/rvb23u64/b5b6a99de2fb3ba5.S @@ -8,8 +8,8 @@ func000000000000000f: # @func000000000000000f sext.w a1, a1 addi a1, a1, -2 seqz a1, a1 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func0000000000000067: # @func0000000000000067 sext.w a1, a1 diff --git a/result/rvb23u64/b5d63db3f9c7a6b6.S b/result/rvb23u64/b5d63db3f9c7a6b6.S index 029370d06f9..cfb98f82d8b 100644 --- a/result/rvb23u64/b5d63db3f9c7a6b6.S +++ b/result/rvb23u64/b5d63db3f9c7a6b6.S @@ -12,9 +12,10 @@ func000000000000008a: # @func000000000000008a ret func0000000000000310: # @func0000000000000310 li a3, 272 + addi a0, a0, -1 mul a2, a2, a3 add a1, a1, a2 sh3add a0, a0, a1 - li a1, 1564 + li a1, 1565 sh3add a0, a1, a0 ret diff --git a/result/rvb23u64/b8dc05e9814c52b3.S b/result/rvb23u64/b8dc05e9814c52b3.S index 95f47eaf8f7..0cd4c6655e9 100644 --- a/result/rvb23u64/b8dc05e9814c52b3.S +++ b/result/rvb23u64/b8dc05e9814c52b3.S @@ -5,17 +5,19 @@ func000000000000005c: # @func000000000000005c add a0, a0, a1 ret func000000000000007f: # @func000000000000007f - slli a1, a1, 5 - add a0, a0, a1 - addi a0, a0, 24 + slli a1, a1, 2 + addi a1, a1, 1 + sh3add a0, a1, a0 + addi a0, a0, 16 ret func0000000000000010: # @func0000000000000010 sh1add a0, a1, a0 ret func000000000000003f: # @func000000000000003f - slli a1, a1, 4 - add a0, a0, a1 - addi a0, a0, 60 + slli a1, a1, 2 + addi a1, a1, 1 + sh2add a0, a1, a0 + addi a0, a0, 56 ret func000000000000007c: # @func000000000000007c sh1add a0, a1, a0 @@ -31,7 +33,8 @@ func0000000000000050: # @func0000000000000050 addi a0, a0, 29 ret func000000000000001c: # @func000000000000001c - slli a1, a1, 4 - add a0, a0, a1 - addi a0, a0, 88 + slli a1, a1, 1 + addi a1, a1, 1 + sh3add a0, a1, a0 + addi a0, a0, 80 ret diff --git a/result/rvb23u64/b9eebd09a8e5e964.S b/result/rvb23u64/b9eebd09a8e5e964.S index bd8d8c35d37..4b8bd9f2ac1 100644 --- a/result/rvb23u64/b9eebd09a8e5e964.S +++ b/result/rvb23u64/b9eebd09a8e5e964.S @@ -1,24 +1,24 @@ func000000000000001a: # @func000000000000001a slliw a2, a2, 1 + addi a2, a2, 1 sh2add a1, a2, a1 sh2add a0, a0, a1 - addi a0, a0, 4 ret func000000000000003b: # @func000000000000003b slliw a2, a2, 3 + addi a2, a2, 4 sh2add a1, a2, a1 sh2add a0, a0, a1 - addi a0, a0, 16 ret func0000000000000010: # @func0000000000000010 slliw a2, a2, 1 + addi a2, a2, 1 sh2add a1, a2, a1 sh2add a0, a0, a1 - addi a0, a0, 4 ret func0000000000000030: # @func0000000000000030 slliw a2, a2, 1 + addi a2, a2, 1 sh3add a1, a2, a1 sh3add a0, a0, a1 - addi a0, a0, 8 ret diff --git a/result/rvb23u64/bae7ea8e58f4bd07.S b/result/rvb23u64/bae7ea8e58f4bd07.S index 5da0bd0111b..ce3e9b09c0f 100644 --- a/result/rvb23u64/bae7ea8e58f4bd07.S +++ b/result/rvb23u64/bae7ea8e58f4bd07.S @@ -4,9 +4,9 @@ func000000000000000e: # @func000000000000000e add a0, a0, a2 ret func000000000000001a: # @func000000000000001a + addi a2, a2, 1 add a0, a0, a1 sh2add a0, a2, a0 - addi a0, a0, 4 ret func0000000000000010: # @func0000000000000010 sh3add a0, a1, a0 @@ -14,9 +14,9 @@ func0000000000000010: # @func0000000000000010 addi a0, a0, 16 ret func000000000000001b: # @func000000000000001b + addi a2, a2, 1 sh1add a0, a1, a0 sh1add a0, a2, a0 - addi a0, a0, 2 ret func000000000000001f: # @func000000000000001f add a0, a0, a1 @@ -24,9 +24,9 @@ func000000000000001f: # @func000000000000001f addi a0, a0, 1 ret func0000000000000013: # @func0000000000000013 + addi a2, a2, 1 sh3add a0, a1, a0 sh3add a0, a2, a0 - addi a0, a0, 8 ret func000000000000001e: # @func000000000000001e add a0, a0, a1 @@ -39,13 +39,13 @@ func0000000000000012: # @func0000000000000012 addi a0, a0, 1 ret func000000000000001c: # @func000000000000001c + addi a2, a2, 1 slli a1, a1, 7 add a0, a0, a1 sh1add a0, a2, a0 - addi a0, a0, 2 ret func0000000000000018: # @func0000000000000018 + addi a2, a2, 1 sh3add a0, a1, a0 sh3add a0, a2, a0 - addi a0, a0, 8 ret diff --git a/result/rvb23u64/bbec0b0c6dd7de90.S b/result/rvb23u64/bbec0b0c6dd7de90.S index ad6741ff763..cb2bb753807 100644 --- a/result/rvb23u64/bbec0b0c6dd7de90.S +++ b/result/rvb23u64/bbec0b0c6dd7de90.S @@ -1,11 +1,10 @@ func0000000000000000: # @func0000000000000000 - not a2, a2 + lui a3, 131072 + addi a3, a3, -1 + slli a3, a3, 32 + orn a2, a3, a2 sh3add a0, a1, a0 - li a1, -1 - slli a2, a2, 3 - slli a1, a1, 35 - or a1, a1, a2 - add a0, a0, a1 + sh3add a0, a2, a0 ret func0000000000000010: # @func0000000000000010 not a2, a2 diff --git a/result/rvb23u64/bf7801d9a767372e.S b/result/rvb23u64/bf7801d9a767372e.S index 9307b2703ea..b93ce04ecb4 100644 --- a/result/rvb23u64/bf7801d9a767372e.S +++ b/result/rvb23u64/bf7801d9a767372e.S @@ -7,8 +7,8 @@ func0000000000000006: # @func0000000000000006 func0000000000000007: # @func0000000000000007 bseti a2, zero, 11 minu a1, a1, a2 + addi a1, a1, -1 sh3add a0, a1, a0 - addi a0, a0, -8 ret func000000000000000f: # @func000000000000000f li a2, 32 diff --git a/result/rvb23u64/c0603aca66e9f147.S b/result/rvb23u64/c0603aca66e9f147.S index a34fdfad2ca..600aa9ed1ad 100644 --- a/result/rvb23u64/c0603aca66e9f147.S +++ b/result/rvb23u64/c0603aca66e9f147.S @@ -3,8 +3,9 @@ func000000000000003c: # @func000000000000003c li a3, 2 czero.nez a2, a3, a2 add a1, a1, a2 + addi a1, a1, 2 sh2add a0, a1, a0 - addiw a0, a0, 8 + sext.w a0, a0 ret func0000000000000000: # @func0000000000000000 andi a2, a2, 1 diff --git a/result/rvb23u64/c16cdef546b01e20.S b/result/rvb23u64/c16cdef546b01e20.S index 5bdfe262e94..3eb489904e4 100644 --- a/result/rvb23u64/c16cdef546b01e20.S +++ b/result/rvb23u64/c16cdef546b01e20.S @@ -1,10 +1,10 @@ func000000000000002e: # @func000000000000002e - srli a1, a1, 1 - add a0, a0, a1 - addi a0, a0, -8 + srli a1, a1, 3 + addi a1, a1, -2 + sh2add a0, a1, a0 ret func000000000000002f: # @func000000000000002f - srli a1, a1, 1 - add a0, a0, a1 - addi a0, a0, -8 + srli a1, a1, 3 + addi a1, a1, -2 + sh2add a0, a1, a0 ret diff --git a/result/rvb23u64/c40f2dd059a28044.S b/result/rvb23u64/c40f2dd059a28044.S index 7f696ee2e30..f9886d03e90 100644 --- a/result/rvb23u64/c40f2dd059a28044.S +++ b/result/rvb23u64/c40f2dd059a28044.S @@ -1,8 +1,8 @@ func0000000000000070: # @func0000000000000070 slliw a2, a2, 1 + addi a2, a2, 1 sh2add a1, a2, a1 sh2add a0, a0, a1 - addi a0, a0, 4 ret func000000000000002f: # @func000000000000002f slli a2, a2, 3 @@ -12,7 +12,7 @@ func000000000000002f: # @func000000000000002f ret func00000000000000ff: # @func00000000000000ff slliw a2, a2, 1 + addi a2, a2, 1 sh2add a1, a2, a1 sh2add a0, a0, a1 - addi a0, a0, 4 ret diff --git a/result/rvb23u64/c5bfcc45817d7846.S b/result/rvb23u64/c5bfcc45817d7846.S index 450e9ac44a3..49196e6c773 100644 --- a/result/rvb23u64/c5bfcc45817d7846.S +++ b/result/rvb23u64/c5bfcc45817d7846.S @@ -1,24 +1,24 @@ func0000000000000013: # @func0000000000000013 sext.w a2, a2 sh3add a0, a2, a0 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func000000000000001b: # @func000000000000001b sext.w a2, a2 sh3add a0, a2, a0 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func0000000000000010: # @func0000000000000010 sext.w a2, a2 sh2add a0, a2, a0 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func000000000000001a: # @func000000000000001a sext.w a2, a2 add a0, a0, a2 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret diff --git a/result/rvb23u64/c5ece0222de40f05.S b/result/rvb23u64/c5ece0222de40f05.S index 68d6b37d1b7..c228dcdc4b6 100644 --- a/result/rvb23u64/c5ece0222de40f05.S +++ b/result/rvb23u64/c5ece0222de40f05.S @@ -5,6 +5,6 @@ func0000000000000006: # @func0000000000000006 ret func000000000000001f: # @func000000000000001f add a1, a1, a2 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret diff --git a/result/rvb23u64/c8b9dc0a1ab124f0.S b/result/rvb23u64/c8b9dc0a1ab124f0.S index c66cec013e0..b312f121d03 100644 --- a/result/rvb23u64/c8b9dc0a1ab124f0.S +++ b/result/rvb23u64/c8b9dc0a1ab124f0.S @@ -1,6 +1,6 @@ func000000000000003f: # @func000000000000003f andi a1, a1, 255 add.uw a1, a2, a1 + addi a1, a1, 2 sh2add a0, a1, a0 - addi a0, a0, 8 ret diff --git a/result/rvb23u64/c8c2203ec431c116.S b/result/rvb23u64/c8c2203ec431c116.S index 5546c9dd5db..15a368e618c 100644 --- a/result/rvb23u64/c8c2203ec431c116.S +++ b/result/rvb23u64/c8c2203ec431c116.S @@ -14,6 +14,8 @@ func000000000000001b: # @func000000000000001b addi a0, a0, 62 ret func0000000000000073: # @func0000000000000073 - sh3add a0, a1, a0 - addi a0, a0, 6 + slli a1, a1, 1 + addi a1, a1, 1 + sh2add a0, a1, a0 + addi a0, a0, 2 ret diff --git a/result/rvb23u64/c8ebd06d5187d245.S b/result/rvb23u64/c8ebd06d5187d245.S index bf71cdf775f..0844decdf4c 100644 --- a/result/rvb23u64/c8ebd06d5187d245.S +++ b/result/rvb23u64/c8ebd06d5187d245.S @@ -1,10 +1,10 @@ func0000000000000007: # @func0000000000000007 + addi a1, a1, -1 sh3add a0, a1, a0 - addi a0, a0, -8 ret func0000000000000002: # @func0000000000000002 + addi a1, a1, -1 sh3add a0, a1, a0 - addi a0, a0, -8 ret func0000000000000006: # @func0000000000000006 add a0, a0, a1 diff --git a/result/rvb23u64/c96f10c44dd1ba10.S b/result/rvb23u64/c96f10c44dd1ba10.S index 1f886418725..68b95b13684 100644 --- a/result/rvb23u64/c96f10c44dd1ba10.S +++ b/result/rvb23u64/c96f10c44dd1ba10.S @@ -7,5 +7,7 @@ func000000000000001c: # @func000000000000001c ret func000000000000001e: # @func000000000000001e sext.h a1, a1 + addi a1, a1, -1 sh2add a0, a1, a0 + addi a0, a0, 4 ret diff --git a/result/rvb23u64/caf6f6412efc47d1.S b/result/rvb23u64/caf6f6412efc47d1.S index a8ab5d318ef..020bcc770c1 100644 --- a/result/rvb23u64/caf6f6412efc47d1.S +++ b/result/rvb23u64/caf6f6412efc47d1.S @@ -1,6 +1,6 @@ func000000000000003f: # @func000000000000003f andi a2, a2, 255 add a1, a1, a2 + addi a1, a1, 2 sh2add a0, a1, a0 - addi a0, a0, 8 ret diff --git a/result/rvb23u64/cbb866f69fd01b8e.S b/result/rvb23u64/cbb866f69fd01b8e.S index 163158ffc9d..e1770128cd8 100644 --- a/result/rvb23u64/cbb866f69fd01b8e.S +++ b/result/rvb23u64/cbb866f69fd01b8e.S @@ -1,18 +1,18 @@ func000000000000000e: # @func000000000000000e sext.w a2, a2 add a1, a1, a2 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func000000000000001f: # @func000000000000001f sext.w a2, a2 add a1, a1, a2 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func0000000000000006: # @func0000000000000006 sext.w a2, a2 add a1, a1, a2 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret diff --git a/result/rvb23u64/cd030f32fa20c788.S b/result/rvb23u64/cd030f32fa20c788.S index bc3a6727fb6..18d17ee1e13 100644 --- a/result/rvb23u64/cd030f32fa20c788.S +++ b/result/rvb23u64/cd030f32fa20c788.S @@ -3,13 +3,15 @@ func00000000000000df: # @func00000000000000df li a3, 168 mul a2, a2, a3 add a1, a1, a2 + addi a0, a0, -1 sh3add a0, a0, a1 - addi a0, a0, 48 + addi a0, a0, 56 ret func00000000000000ff: # @func00000000000000ff sh2add.uw a1, a2, a1 + addi a0, a0, 1 sh2add a0, a0, a1 - addi a0, a0, 16 + addi a0, a0, 12 ret func0000000000000010: # @func0000000000000010 add.uw a1, a2, a1 diff --git a/result/rvb23u64/ce3e218b320e926c.S b/result/rvb23u64/ce3e218b320e926c.S index 9025cf0f5d1..423aa97f35d 100644 --- a/result/rvb23u64/ce3e218b320e926c.S +++ b/result/rvb23u64/ce3e218b320e926c.S @@ -1,18 +1,20 @@ func0000000000000050: # @func0000000000000050 - sh3add a1, a2, a1 + slli a2, a2, 1 + addi a2, a2, 1 + sh2add a1, a2, a1 sh2add a0, a0, a1 - addi a0, a0, 4 ret func0000000000000070: # @func0000000000000070 - slli a2, a2, 10 - add a1, a1, a2 + slli a2, a2, 8 + addi a2, a2, 1 + sh2add a1, a2, a1 sh2add a0, a0, a1 - addi a0, a0, 4 ret func000000000000007f: # @func000000000000007f - sh3add a1, a2, a1 + slli a2, a2, 1 + addi a2, a2, 1 + sh2add a1, a2, a1 add a0, a0, a1 - addi a0, a0, 4 ret func0000000000000030: # @func0000000000000030 slli a2, a2, 5 @@ -27,15 +29,16 @@ func0000000000000010: # @func0000000000000010 addi a0, a0, 4 ret func000000000000003f: # @func000000000000003f - slli a2, a2, 9 - add a1, a1, a2 + slli a2, a2, 6 + addi a2, a2, 1 + sh3add a1, a2, a1 sh3add a0, a0, a1 - addi a0, a0, 8 ret func0000000000000018: # @func0000000000000018 - sh3add a1, a2, a1 + slli a2, a2, 1 + addi a2, a2, 1 + sh2add a1, a2, a1 sh2add a0, a0, a1 - addi a0, a0, 4 ret func000000000000001b: # @func000000000000001b slli a2, a2, 6 diff --git a/result/rvb23u64/d0260881ad9c5489.S b/result/rvb23u64/d0260881ad9c5489.S index 926a55f75d6..2e41304b1a1 100644 --- a/result/rvb23u64/d0260881ad9c5489.S +++ b/result/rvb23u64/d0260881ad9c5489.S @@ -1,10 +1,12 @@ func00000000000000ff: # @func00000000000000ff sh1add a1, a1, a1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 8 + addi a0, a0, 4 ret func00000000000000fc: # @func00000000000000fc sh1add a1, a1, a1 + addi a1, a1, 1 sh1add a0, a1, a0 - addi a0, a0, 754 + addi a0, a0, 752 ret diff --git a/result/rvb23u64/d033490df5746d04.S b/result/rvb23u64/d033490df5746d04.S index 9d3c0fe817b..1bd0f3725e0 100644 --- a/result/rvb23u64/d033490df5746d04.S +++ b/result/rvb23u64/d033490df5746d04.S @@ -5,6 +5,6 @@ func0000000000000004: # @func0000000000000004 ret func0000000000000006: # @func0000000000000006 slliw a1, a1, 1 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret diff --git a/result/rvb23u64/d18525d647b196f5.S b/result/rvb23u64/d18525d647b196f5.S index 518044249b8..1280a4c3a78 100644 --- a/result/rvb23u64/d18525d647b196f5.S +++ b/result/rvb23u64/d18525d647b196f5.S @@ -40,8 +40,8 @@ func0000000000000008: # @func0000000000000008 sltu a0, a0, a1 ret func00000000000001e1: # @func00000000000001e1 + addi a2, a2, -1 sh1add a1, a2, a1 - addi a1, a1, -2 xor a0, a0, a1 seqz a0, a0 ret diff --git a/result/rvb23u64/d1b174814e6db248.S b/result/rvb23u64/d1b174814e6db248.S index bbb78bacace..cadb1749ad1 100644 --- a/result/rvb23u64/d1b174814e6db248.S +++ b/result/rvb23u64/d1b174814e6db248.S @@ -14,15 +14,17 @@ func000000000000002c: # @func000000000000002c add a0, a0, a1 ret func0000000000000073: # @func0000000000000073 + addi a1, a1, 2 sh1add a0, a1, a0 lui a1, 150 - addiw a1, a1, 772 + addiw a1, a1, 768 add a0, a0, a1 ret func000000000000007f: # @func000000000000007f + addi a1, a1, 2 sh1add a0, a1, a0 lui a1, 163 - addiw a1, a1, -1276 + addiw a1, a1, -1280 add a0, a0, a1 ret func000000000000002f: # @func000000000000002f @@ -39,8 +41,9 @@ func000000000000006f: # @func000000000000006f addi a0, a0, 192 ret func000000000000001c: # @func000000000000001c + addi a1, a1, -2 sh2add a0, a1, a0 - addi a0, a0, 32 + addi a0, a0, 40 ret func000000000000006c: # @func000000000000006c addi a1, a1, 7 diff --git a/result/rvb23u64/d287d2b02fb315a6.S b/result/rvb23u64/d287d2b02fb315a6.S index 29d4d53cd06..1c1cb2f853e 100644 --- a/result/rvb23u64/d287d2b02fb315a6.S +++ b/result/rvb23u64/d287d2b02fb315a6.S @@ -3,8 +3,9 @@ func000000000000001f: # @func000000000000001f li a3, 8 czero.nez a2, a3, a2 add a1, a1, a2 + addi a1, a1, 8 sh3add a0, a1, a0 - addi a0, a0, 184 + addi a0, a0, 120 ret func000000000000001c: # @func000000000000001c andi a2, a2, 1 diff --git a/result/rvb23u64/d28eba4486690cdc.S b/result/rvb23u64/d28eba4486690cdc.S index 05a7bda05ec..acca5dfaf54 100644 --- a/result/rvb23u64/d28eba4486690cdc.S +++ b/result/rvb23u64/d28eba4486690cdc.S @@ -10,8 +10,9 @@ func000000000000001c: # @func000000000000001c ret func000000000000001f: # @func000000000000001f sh1add a1, a1, a1 - sh3add a0, a1, a0 - addi a0, a0, 4 + slli a1, a1, 1 + addi a1, a1, 1 + sh2add a0, a1, a0 ret func000000000000000e: # @func000000000000000e li a2, 528 @@ -27,8 +28,9 @@ func000000000000000c: # @func000000000000000c ret func0000000000000006: # @func0000000000000006 sh1add a1, a1, a1 - sh3add a0, a1, a0 - addi a0, a0, 4 + slli a1, a1, 1 + addi a1, a1, 1 + sh2add a0, a1, a0 ret func000000000000001d: # @func000000000000001d sh1add a1, a1, a1 diff --git a/result/rvb23u64/d628cbcbea30b947.S b/result/rvb23u64/d628cbcbea30b947.S index 7aefdcf56c7..da44979b6fd 100644 --- a/result/rvb23u64/d628cbcbea30b947.S +++ b/result/rvb23u64/d628cbcbea30b947.S @@ -1,6 +1,6 @@ func0000000000000081: # @func0000000000000081 + addi a2, a2, 1 sh2add a1, a2, a1 - addi a1, a1, 4 xor a0, a0, a1 seqz a0, a0 ret diff --git a/result/rvb23u64/d63affc4df089dbc.S b/result/rvb23u64/d63affc4df089dbc.S index 3c86ad14eb7..a6f489aaaa4 100644 --- a/result/rvb23u64/d63affc4df089dbc.S +++ b/result/rvb23u64/d63affc4df089dbc.S @@ -1,5 +1,7 @@ func000000000000004e: # @func000000000000004e sext.h a2, a2 add a1, a1, a2 + addi a1, a1, -1 sh2add a0, a1, a0 + addi a0, a0, 4 ret diff --git a/result/rvb23u64/d6fb414ce0191a8a.S b/result/rvb23u64/d6fb414ce0191a8a.S index 41178369d3d..72bd9b6e4f3 100644 --- a/result/rvb23u64/d6fb414ce0191a8a.S +++ b/result/rvb23u64/d6fb414ce0191a8a.S @@ -10,9 +10,10 @@ func0000000000000070: # @func0000000000000070 addi a0, a0, 8 ret func000000000000007b: # @func000000000000007b + slli a2, a2, 1 + addi a2, a2, 1 sh2add a0, a1, a0 - sh2add a0, a2, a0 - addi a0, a0, 2 + sh1add a0, a2, a0 ret func000000000000005e: # @func000000000000005e add a0, a0, a1 @@ -30,42 +31,44 @@ func000000000000007f: # @func000000000000007f addi a0, a0, 1 ret func0000000000000073: # @func0000000000000073 + slli a2, a2, 2 + addi a2, a2, 1 sh1add a0, a1, a0 - sh3add a0, a2, a0 - addi a0, a0, 2 + sh1add a0, a2, a0 ret func000000000000003e: # @func000000000000003e + slli a2, a2, 2 + addi a2, a2, 2 sh1add a0, a1, a0 - sh3add a0, a2, a0 - addi a0, a0, 4 + sh1add a0, a2, a0 ret func000000000000003b: # @func000000000000003b - slli a2, a2, 4 + slli a2, a2, 2 + addi a2, a2, 4 sh2add a0, a1, a0 - add a0, a0, a2 - addi a0, a0, 16 + sh2add a0, a2, a0 ret func000000000000003a: # @func000000000000003a - slli a2, a2, 4 + slli a2, a2, 2 + addi a2, a2, 1 sh2add a0, a1, a0 - add a0, a0, a2 - addi a0, a0, 4 + sh2add a0, a2, a0 ret func000000000000001a: # @func000000000000001a - slli a2, a2, 4 + slli a2, a2, 2 + addi a2, a2, 4 sh2add a0, a1, a0 - add a0, a0, a2 - addi a0, a0, 16 + sh2add a0, a2, a0 ret func0000000000000033: # @func0000000000000033 - slli a2, a2, 5 + slli a2, a2, 2 + addi a2, a2, 1 sh3add a0, a1, a0 - add a0, a0, a2 - addi a0, a0, 8 + sh3add a0, a2, a0 ret func0000000000000018: # @func0000000000000018 - slli a2, a2, 4 + slli a2, a2, 1 + addi a2, a2, 1 sh3add a0, a1, a0 - add a0, a0, a2 - addi a0, a0, 8 + sh3add a0, a2, a0 ret diff --git a/result/rvb23u64/d763a4cda6ddae85.S b/result/rvb23u64/d763a4cda6ddae85.S index c909210f4cd..05f2b4c262c 100644 --- a/result/rvb23u64/d763a4cda6ddae85.S +++ b/result/rvb23u64/d763a4cda6ddae85.S @@ -1,16 +1,16 @@ func00000000000000fc: # @func00000000000000fc slliw a1, a1, 1 - lui a2, 2 - slli a1, a1, 2 - addiw a2, a2, 1292 - ori a1, a1, 1792 - add a0, a0, a2 + ori a1, a1, 448 + sh2add a0, a1, a0 + lui a1, 2 + addiw a1, a1, 1292 add a0, a0, a1 ret func00000000000000ff: # @func00000000000000ff slliw a1, a1, 1 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 112 + addi a0, a0, 104 ret func000000000000002f: # @func000000000000002f slli a1, a1, 3 @@ -20,8 +20,9 @@ func000000000000002f: # @func000000000000002f ret func00000000000000f0: # @func00000000000000f0 slliw a1, a1, 1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, -516 + addi a0, a0, -520 ret func0000000000000030: # @func0000000000000030 slliw a1, a1, 1 diff --git a/result/rvb23u64/d7da2cee437933d9.S b/result/rvb23u64/d7da2cee437933d9.S index 1bbfab93246..259f0b2bfe6 100644 --- a/result/rvb23u64/d7da2cee437933d9.S +++ b/result/rvb23u64/d7da2cee437933d9.S @@ -12,26 +12,26 @@ func0000000000000030: # @func0000000000000030 func0000000000000033: # @func0000000000000033 sext.w a2, a2 sh1add a0, a2, a0 + addi a1, a1, 1 sh1add a0, a1, a0 - addi a0, a0, 2 ret func000000000000003f: # @func000000000000003f sext.w a2, a2 sh1add a0, a2, a0 + addi a1, a1, 2 sh1add a0, a1, a0 - addi a0, a0, 4 ret func000000000000003e: # @func000000000000003e sext.w a2, a2 sh1add a0, a2, a0 + addi a1, a1, 2 sh1add a0, a1, a0 - addi a0, a0, 4 ret func000000000000001c: # @func000000000000001c slli.uw a2, a2, 7 add a0, a0, a2 + addi a1, a1, 1 sh1add a0, a1, a0 - addi a0, a0, 2 ret func0000000000000013: # @func0000000000000013 add.uw a0, a2, a0 diff --git a/result/rvb23u64/d911555a82a6d8c9.S b/result/rvb23u64/d911555a82a6d8c9.S index 639b86f3e3e..da0ab20c2cb 100644 --- a/result/rvb23u64/d911555a82a6d8c9.S +++ b/result/rvb23u64/d911555a82a6d8c9.S @@ -1,24 +1,24 @@ func000000000000001b: # @func000000000000001b slliw a2, a2, 1 sh2add a0, a2, a0 + addi a1, a1, 1 sh1add a0, a1, a0 - addi a0, a0, 2 ret func0000000000000030: # @func0000000000000030 slliw a2, a2, 2 sh2add a0, a2, a0 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func000000000000003b: # @func000000000000003b slliw a2, a2, 1 sh2add a0, a2, a0 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func000000000000003a: # @func000000000000003a slliw a2, a2, 4 add a0, a0, a2 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret diff --git a/result/rvb23u64/d935203df5545c9f.S b/result/rvb23u64/d935203df5545c9f.S index 75ee199c043..4d83403e175 100644 --- a/result/rvb23u64/d935203df5545c9f.S +++ b/result/rvb23u64/d935203df5545c9f.S @@ -1,8 +1,8 @@ func0000000000000010: # @func0000000000000010 snez a2, a2 + addi a2, a2, -1 sh2add a0, a1, a0 sh2add a0, a2, a0 - addi a0, a0, -4 ret func0000000000000142: # @func0000000000000142 lui a3, 1819 diff --git a/result/rvb23u64/d9bf47fbda436b16.S b/result/rvb23u64/d9bf47fbda436b16.S index 0563b321b43..f35932514fd 100644 --- a/result/rvb23u64/d9bf47fbda436b16.S +++ b/result/rvb23u64/d9bf47fbda436b16.S @@ -1,6 +1,6 @@ func00000000000000c4: # @func00000000000000c4 seqz a1, a1 + addi a1, a1, -1 sh3add a0, a1, a0 - addi a0, a0, -8 andi a0, a0, -8 ret diff --git a/result/rvb23u64/d9e359e1a0da7f5c.S b/result/rvb23u64/d9e359e1a0da7f5c.S index 29b46aba667..b1836e5d628 100644 --- a/result/rvb23u64/d9e359e1a0da7f5c.S +++ b/result/rvb23u64/d9e359e1a0da7f5c.S @@ -1,7 +1,8 @@ func000000000000001a: # @func000000000000001a slliw a1, a1, 2 + addi a1, a1, 3 sh2add a0, a1, a0 - addi a0, a0, 4 + addi a0, a0, -8 ret func000000000000003b: # @func000000000000003b sext.w a1, a1 @@ -30,6 +31,7 @@ func0000000000000013: # @func0000000000000013 ret func0000000000000018: # @func0000000000000018 slliw a1, a1, 1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 8 + addi a0, a0, 4 ret diff --git a/result/rvb23u64/da81414e43a9af79.S b/result/rvb23u64/da81414e43a9af79.S index f5133fce202..9de0c9094e1 100644 --- a/result/rvb23u64/da81414e43a9af79.S +++ b/result/rvb23u64/da81414e43a9af79.S @@ -16,8 +16,9 @@ func0000000000000010: # @func0000000000000010 addi a0, a0, -8 ret func000000000000003b: # @func000000000000003b + addi a1, a1, -2 sh2add a0, a1, a0 - addi a0, a0, -4 + addi a0, a0, 4 ret func000000000000000b: # @func000000000000000b li a2, 5 @@ -83,6 +84,7 @@ func0000000000000028: # @func0000000000000028 addi a0, a0, 4 ret func0000000000000030: # @func0000000000000030 + addi a1, a1, -1 sh2add a0, a1, a0 - addi a0, a0, 4 + addi a0, a0, 8 ret diff --git a/result/rvb23u64/da9fda10c2724ca0.S b/result/rvb23u64/da9fda10c2724ca0.S index bf11294a25b..5509a524f9d 100644 --- a/result/rvb23u64/da9fda10c2724ca0.S +++ b/result/rvb23u64/da9fda10c2724ca0.S @@ -1,8 +1,8 @@ func000000000000001c: # @func000000000000001c zext.h a2, a2 - slli a1, a1, 19 - sh3add a1, a2, a1 - add a0, a0, a1 + slli a1, a1, 16 + or a1, a1, a2 + sh3add a0, a1, a0 ret func000000000000003f: # @func000000000000003f zext.h a2, a2 diff --git a/result/rvb23u64/db21494309674e03.S b/result/rvb23u64/db21494309674e03.S index 9199e8c1fd7..5afa148efda 100644 --- a/result/rvb23u64/db21494309674e03.S +++ b/result/rvb23u64/db21494309674e03.S @@ -5,23 +5,26 @@ func000000000000000e: # @func000000000000000e addi a0, a0, -32 ret func000000000000002e: # @func000000000000002e - ori a1, a1, 8 - add a0, a0, a1 + srli a1, a1, 3 + ori a1, a1, 1 + sh3add a0, a1, a0 addi a0, a0, -16 ret func000000000000002f: # @func000000000000002f - ori a1, a1, 4 - add a0, a0, a1 + srli a1, a1, 2 + ori a1, a1, 1 + sh2add a0, a1, a0 addi a0, a0, -8 ret func000000000000000f: # @func000000000000000f - ori a1, a1, 8 - andi a1, a1, -8 - add a0, a0, a1 + srli a1, a1, 3 + ori a1, a1, 1 + sh3add a0, a1, a0 addi a0, a0, -16 ret func000000000000002c: # @func000000000000002c - ori a1, a1, 8 - add a0, a0, a1 + srli a1, a1, 3 + ori a1, a1, 1 + sh3add a0, a1, a0 addi a0, a0, -16 ret diff --git a/result/rvb23u64/dc1665c51e637aa1.S b/result/rvb23u64/dc1665c51e637aa1.S index a8ab5d318ef..020bcc770c1 100644 --- a/result/rvb23u64/dc1665c51e637aa1.S +++ b/result/rvb23u64/dc1665c51e637aa1.S @@ -1,6 +1,6 @@ func000000000000003f: # @func000000000000003f andi a2, a2, 255 add a1, a1, a2 + addi a1, a1, 2 sh2add a0, a1, a0 - addi a0, a0, 8 ret diff --git a/result/rvb23u64/dcd0f7b00497174b.S b/result/rvb23u64/dcd0f7b00497174b.S index aa49b693878..ac566087baa 100644 --- a/result/rvb23u64/dcd0f7b00497174b.S +++ b/result/rvb23u64/dcd0f7b00497174b.S @@ -1,14 +1,14 @@ func0000000000000068: # @func0000000000000068 srli a2, a2, 3 sub a1, a1, a2 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func000000000000006a: # @func000000000000006a srli a2, a2, 3 sub a1, a1, a2 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func000000000000007f: # @func000000000000007f srli a2, a2, 3 @@ -19,14 +19,14 @@ func000000000000007f: # @func000000000000007f func0000000000000048: # @func0000000000000048 srli a2, a2, 3 sub a1, a1, a2 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func000000000000004a: # @func000000000000004a srli a2, a2, 3 sub a1, a1, a2 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func000000000000007b: # @func000000000000007b srli a2, a2, 5 @@ -38,8 +38,8 @@ func000000000000007b: # @func000000000000007b func000000000000005e: # @func000000000000005e srli a2, a2, 1 sub a1, a1, a2 + addi a1, a1, 1 sh1add a0, a1, a0 - addi a0, a0, 2 ret func000000000000005c: # @func000000000000005c sh3add a0, a1, a0 @@ -50,8 +50,8 @@ func000000000000005c: # @func000000000000005c func000000000000004b: # @func000000000000004b srli a2, a2, 3 sub a1, a1, a2 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func0000000000000017: # @func0000000000000017 srai a2, a2, 32 @@ -64,14 +64,14 @@ func0000000000000017: # @func0000000000000017 func0000000000000043: # @func0000000000000043 srli a2, a2, 3 sub a1, a1, a2 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func0000000000000072: # @func0000000000000072 srli a2, a2, 3 sub a1, a1, a2 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func0000000000000074: # @func0000000000000074 srli a2, a2, 5 @@ -90,12 +90,12 @@ func0000000000000040: # @func0000000000000040 func0000000000000058: # @func0000000000000058 srli a2, a2, 3 sub a1, a1, a2 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func000000000000005a: # @func000000000000005a srli a2, a2, 3 sub a1, a1, a2 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret diff --git a/result/rvb23u64/de2853856873ab43.S b/result/rvb23u64/de2853856873ab43.S index ca0e72d6874..2fc3993f30a 100644 --- a/result/rvb23u64/de2853856873ab43.S +++ b/result/rvb23u64/de2853856873ab43.S @@ -10,6 +10,7 @@ func000000000000001c: # @func000000000000001c ret func000000000000001e: # @func000000000000001e sext.w a1, a1 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 16 + addi a0, a0, 8 ret diff --git a/result/rvb23u64/de8963ee1c250b17.S b/result/rvb23u64/de8963ee1c250b17.S index 344bffdbe78..d56f6a565e8 100644 --- a/result/rvb23u64/de8963ee1c250b17.S +++ b/result/rvb23u64/de8963ee1c250b17.S @@ -1,14 +1,13 @@ func000000000000000c: # @func000000000000000c slli a1, a1, 33 - srai a1, a1, 30 - add a0, a0, a1 - addi a0, a0, 4 + srai a1, a1, 32 + addi a1, a1, 1 + sh2add a0, a1, a0 ret func000000000000000e: # @func000000000000000e sext.w a1, a1 - slli a1, a1, 1 - ori a1, a1, 2 - add a0, a0, a1 + ori a1, a1, 1 + sh1add a0, a1, a0 ret func000000000000000a: # @func000000000000000a sext.w a1, a1 @@ -18,7 +17,6 @@ func000000000000000a: # @func000000000000000a func0000000000000002: # @func0000000000000002 slli a1, a1, 28 srai a1, a1, 32 - slli a1, a1, 3 - ori a1, a1, 8 - add a0, a0, a1 + ori a1, a1, 1 + sh3add a0, a1, a0 ret diff --git a/result/rvb23u64/df1bc352673174fd.S b/result/rvb23u64/df1bc352673174fd.S index 654d40359db..89994248373 100644 --- a/result/rvb23u64/df1bc352673174fd.S +++ b/result/rvb23u64/df1bc352673174fd.S @@ -5,14 +5,16 @@ func0000000000000190: # @func0000000000000190 addi a0, a0, 872 ret func00000000000001fb: # @func00000000000001fb - slli a2, a2, 4 + slli a2, a2, 1 + addi a2, a2, 1 sh3add a0, a0, a1 - add a0, a0, a2 - addi a0, a0, 24 + sh3add a0, a2, a0 + addi a0, a0, 16 ret func00000000000000fb: # @func00000000000000fb - slli a2, a2, 5 + slli a2, a2, 2 + addi a2, a2, 1 sh3add a0, a0, a1 - add a0, a0, a2 - addi a0, a0, 24 + sh3add a0, a2, a0 + addi a0, a0, 16 ret diff --git a/result/rvb23u64/df3722885f053d96.S b/result/rvb23u64/df3722885f053d96.S index c4eb7bfef94..c39a7f70bca 100644 --- a/result/rvb23u64/df3722885f053d96.S +++ b/result/rvb23u64/df3722885f053d96.S @@ -6,16 +6,19 @@ func0000000000000055: # @func0000000000000055 ret func000000000000007d: # @func000000000000007d add a1, a1, a2 + addi a1, a1, -1 sh1add a0, a1, a0 - addiw a0, a0, -2 + sext.w a0, a0 ret func000000000000005d: # @func000000000000005d add a1, a1, a2 + addi a1, a1, -1 sh1add a0, a1, a0 - addiw a0, a0, -2 + sext.w a0, a0 ret func0000000000000015: # @func0000000000000015 add a1, a1, a2 + addi a1, a1, -5 sh2add a0, a1, a0 - addiw a0, a0, -20 + sext.w a0, a0 ret diff --git a/result/rvb23u64/e01557e8b8cfb17d.S b/result/rvb23u64/e01557e8b8cfb17d.S index 58dffb24493..70c44057d4c 100644 --- a/result/rvb23u64/e01557e8b8cfb17d.S +++ b/result/rvb23u64/e01557e8b8cfb17d.S @@ -1,8 +1,9 @@ func000000000000003c: # @func000000000000003c andi a1, a1, 7 + addi a1, a1, 440 sh2add a0, a1, a0 - lui a1, 3 - addiw a1, a1, -1044 + lui a1, 2 + addiw a1, a1, 1292 add a0, a0, a1 ret func000000000000003f: # @func000000000000003f diff --git a/result/rvb23u64/e16d83cc825f4c86.S b/result/rvb23u64/e16d83cc825f4c86.S index d95bc211ca5..4402d1bced0 100644 --- a/result/rvb23u64/e16d83cc825f4c86.S +++ b/result/rvb23u64/e16d83cc825f4c86.S @@ -1,12 +1,10 @@ func000000000000000e: # @func000000000000000e - slli a1, a1, 3 - ori a1, a1, 8 - add a0, a0, a1 + ori a1, a1, 1 + sh3add a0, a1, a0 addi a0, a0, -16 ret func000000000000000c: # @func000000000000000c - slli a1, a1, 3 - ori a1, a1, 8 - add a0, a0, a1 + ori a1, a1, 1 + sh3add a0, a1, a0 addi a0, a0, -16 ret diff --git a/result/rvb23u64/e20614c7ce8f613e.S b/result/rvb23u64/e20614c7ce8f613e.S index 68b2ca2ba28..36a799635db 100644 --- a/result/rvb23u64/e20614c7ce8f613e.S +++ b/result/rvb23u64/e20614c7ce8f613e.S @@ -15,8 +15,8 @@ func000000000000000b: # @func000000000000000b add a0, a0, a1 ret func000000000000000f: # @func000000000000000f + addi a1, a1, -2 sh1add a0, a1, a0 - addi a0, a0, -4 ret func000000000000001b: # @func000000000000001b addi a1, a1, 63 diff --git a/result/rvb23u64/e238d6fb473bc269.S b/result/rvb23u64/e238d6fb473bc269.S index c7db1c215fc..a6588f97560 100644 --- a/result/rvb23u64/e238d6fb473bc269.S +++ b/result/rvb23u64/e238d6fb473bc269.S @@ -1,15 +1,18 @@ func0000000000000355: # @func0000000000000355 sh3add a0, a1, a0 + addi a0, a0, -48 slli a0, a0, 3 - addiw a0, a0, -432 + addiw a0, a0, -48 ret func000000000000035d: # @func000000000000035d sh3add a0, a1, a0 + addi a0, a0, -48 slli a0, a0, 3 - addiw a0, a0, -432 + addiw a0, a0, -48 ret func0000000000000155: # @func0000000000000155 sh3add a0, a1, a0 + addi a0, a0, -48 slli a0, a0, 3 - addiw a0, a0, -432 + addiw a0, a0, -48 ret diff --git a/result/rvb23u64/e3e102c6d86f2799.S b/result/rvb23u64/e3e102c6d86f2799.S index c021756461e..8d6825df5dc 100644 --- a/result/rvb23u64/e3e102c6d86f2799.S +++ b/result/rvb23u64/e3e102c6d86f2799.S @@ -5,7 +5,7 @@ func000000000000003f: # @func000000000000003f ret func000000000000003c: # @func000000000000003c andi a1, a1, 255 - slli a1, a1, 4 - add a0, a0, a1 - addi a0, a0, 8 + slli a1, a1, 1 + addi a1, a1, 1 + sh3add a0, a1, a0 ret diff --git a/result/rvb23u64/e3f985501319b97c.S b/result/rvb23u64/e3f985501319b97c.S index 5c205c278e1..872497a8102 100644 --- a/result/rvb23u64/e3f985501319b97c.S +++ b/result/rvb23u64/e3f985501319b97c.S @@ -1,12 +1,14 @@ func00000000000000ff: # @func00000000000000ff add a1, a1, a2 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 14 + addi a0, a0, 6 ret func000000000000004f: # @func000000000000004f add a1, a1, a2 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 36 + addi a0, a0, 32 ret func000000000000000b: # @func000000000000000b add a1, a1, a2 diff --git a/result/rvb23u64/e5ee1374600055f9.S b/result/rvb23u64/e5ee1374600055f9.S index 7f5b5ff140a..0a72f48800c 100644 --- a/result/rvb23u64/e5ee1374600055f9.S +++ b/result/rvb23u64/e5ee1374600055f9.S @@ -25,13 +25,13 @@ func000000000000001f: # @func000000000000001f ret func000000000000001c: # @func000000000000001c slliw a1, a1, 1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func000000000000000f: # @func000000000000000f slliw a1, a1, 1 + addi a1, a1, 1 sh1add a0, a1, a0 - addi a0, a0, 2 ret func000000000000002b: # @func000000000000002b slli a1, a1, 1 diff --git a/result/rvb23u64/e8dc1942363581e2.S b/result/rvb23u64/e8dc1942363581e2.S index 8f819bccd6f..ef0e89a9c25 100644 --- a/result/rvb23u64/e8dc1942363581e2.S +++ b/result/rvb23u64/e8dc1942363581e2.S @@ -14,8 +14,8 @@ func0000000000000004: # @func0000000000000004 add a0, a0, a1 ret func000000000000000e: # @func000000000000000e + addi a1, a1, -2 sh1add a0, a1, a0 - addi a0, a0, -4 ret func000000000000000a: # @func000000000000000a addi a1, a1, -1 @@ -23,8 +23,8 @@ func000000000000000a: # @func000000000000000a add a0, a0, a1 ret func000000000000000f: # @func000000000000000f + addi a1, a1, -8 sh2add a0, a1, a0 - addi a0, a0, -32 ret func0000000000000014: # @func0000000000000014 bseti a2, zero, 32 diff --git a/result/rvb23u64/e95f297c3c0f9754.S b/result/rvb23u64/e95f297c3c0f9754.S index ef7b1069583..ba03a858b6a 100644 --- a/result/rvb23u64/e95f297c3c0f9754.S +++ b/result/rvb23u64/e95f297c3c0f9754.S @@ -11,6 +11,7 @@ func000000000000005e: # @func000000000000005e ret func000000000000005c: # @func000000000000005c zext.h a1, a1 + addi a1, a1, -1 sh2add a0, a1, a0 - addi a0, a0, 20 + addi a0, a0, 24 ret diff --git a/result/rvb23u64/ea2d0ed64f3706df.S b/result/rvb23u64/ea2d0ed64f3706df.S index dc555c44d75..e0c21dc5d8f 100644 --- a/result/rvb23u64/ea2d0ed64f3706df.S +++ b/result/rvb23u64/ea2d0ed64f3706df.S @@ -13,6 +13,6 @@ func0000000000000002: # @func0000000000000002 func0000000000000006: # @func0000000000000006 li a2, 8 maxu a1, a1, a2 + addi a1, a1, -8 sh3add a0, a1, a0 - addi a0, a0, -64 ret diff --git a/result/rvb23u64/ea4906fb3ca935e5.S b/result/rvb23u64/ea4906fb3ca935e5.S index c760540c848..11f5dc41afc 100644 --- a/result/rvb23u64/ea4906fb3ca935e5.S +++ b/result/rvb23u64/ea4906fb3ca935e5.S @@ -1,27 +1,27 @@ func0000000000000010: # @func0000000000000010 + addi a2, a2, 1 sh2add a1, a2, a1 sh2add a0, a0, a1 - addi a0, a0, 4 ret func000000000000001f: # @func000000000000001f + addi a2, a2, 1 sh2add a1, a2, a1 add a0, a0, a1 - addi a0, a0, 4 ret func000000000000001e: # @func000000000000001e + addi a2, a2, 3 sh2add a1, a2, a1 add a0, a0, a1 - addi a0, a0, 12 ret func000000000000001c: # @func000000000000001c + addi a2, a2, 2 sh3add a1, a2, a1 sh3add a0, a0, a1 - addi a0, a0, 16 ret func0000000000000018: # @func0000000000000018 + addi a2, a2, 1 sh2add a1, a2, a1 sh2add a0, a0, a1 - addi a0, a0, 4 ret func000000000000001b: # @func000000000000001b slli a2, a2, 5 diff --git a/result/rvb23u64/eb2988438a7831ff.S b/result/rvb23u64/eb2988438a7831ff.S index 7d4f9e77aa6..aa90c1bcb47 100644 --- a/result/rvb23u64/eb2988438a7831ff.S +++ b/result/rvb23u64/eb2988438a7831ff.S @@ -6,11 +6,13 @@ func000000000000005e: # @func000000000000005e ret func00000000000000ce: # @func00000000000000ce sub a2, a2, a1 + addi a2, a2, 1 sh1add a0, a2, a0 - addi a0, a0, 198 + addi a0, a0, 196 ret func00000000000000de: # @func00000000000000de sub a2, a2, a1 + addi a2, a2, 4 sh2add a0, a2, a0 - addi a0, a0, 288 + addi a0, a0, 272 ret diff --git a/result/rvb23u64/eb49be33e896056b.S b/result/rvb23u64/eb49be33e896056b.S index e8e5e4cc7a7..31aad7930a5 100644 --- a/result/rvb23u64/eb49be33e896056b.S +++ b/result/rvb23u64/eb49be33e896056b.S @@ -1,7 +1,7 @@ func000000000000007c: # @func000000000000007c srliw a1, a1, 3 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func000000000000002c: # @func000000000000002c srliw a1, a1, 5 diff --git a/result/rvb23u64/ebc3f438072cfd62.S b/result/rvb23u64/ebc3f438072cfd62.S index 2b0ad64139b..3e8a3daf0da 100644 --- a/result/rvb23u64/ebc3f438072cfd62.S +++ b/result/rvb23u64/ebc3f438072cfd62.S @@ -22,11 +22,15 @@ func00000000000000ff: # @func00000000000000ff ret func00000000000000fb: # @func00000000000000fb slliw a1, a1, 1 + addi a1, a1, 1 sh3add a0, a1, a0 + addi a0, a0, -8 ret func000000000000007b: # @func000000000000007b slliw a1, a1, 2 + addi a1, a1, 1 sh2add a0, a1, a0 + addi a0, a0, -4 ret func00000000000000f0: # @func00000000000000f0 slliw a1, a1, 2 diff --git a/result/rvb23u64/ebd6655e1d308878.S b/result/rvb23u64/ebd6655e1d308878.S index 38e0e41aba4..5262aee2be7 100644 --- a/result/rvb23u64/ebd6655e1d308878.S +++ b/result/rvb23u64/ebd6655e1d308878.S @@ -1,21 +1,27 @@ func000000000000001c: # @func000000000000001c + addi a0, a0, -1 sh2add a0, a0, a1 - addi a0, a0, 28 + addi a0, a0, 32 ret func000000000000000e: # @func000000000000000e + addi a0, a0, -1 sh3add a0, a0, a1 - addi a0, a0, 8 + addi a0, a0, 16 ret func000000000000003f: # @func000000000000003f + addi a0, a0, 1 sh2add a0, a0, a1 - addi a0, a0, 12 + addi a0, a0, 8 ret func000000000000003c: # @func000000000000003c + addi a0, a0, 1 sh3add a0, a0, a1 - addi a0, a0, 48 + addi a0, a0, 40 ret func000000000000001f: # @func000000000000001f + addi a0, a0, -1 sh3add a0, a0, a1 + addi a0, a0, 8 ret func000000000000001e: # @func000000000000001e sh1add a0, a0, a0 diff --git a/result/rvb23u64/ebe8ec25d57aadfd.S b/result/rvb23u64/ebe8ec25d57aadfd.S index a2938e5ebcc..ee52d830cac 100644 --- a/result/rvb23u64/ebe8ec25d57aadfd.S +++ b/result/rvb23u64/ebe8ec25d57aadfd.S @@ -10,14 +10,16 @@ func000000000000008a: # @func000000000000008a ret func0000000000000010: # @func0000000000000010 add a0, a0, a2 + addi a1, a1, -1 sh3add a0, a1, a0 - li a1, 1564 + li a1, 1565 sh3add a0, a1, a0 ret func00000000000000ea: # @func00000000000000ea sh2add a0, a0, a2 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 8 + addi a0, a0, 4 ret func00000000000000d0: # @func00000000000000d0 add a0, a0, a2 diff --git a/result/rvb23u64/ec864ee487874f48.S b/result/rvb23u64/ec864ee487874f48.S index efa62c9271e..2bb883c322f 100644 --- a/result/rvb23u64/ec864ee487874f48.S +++ b/result/rvb23u64/ec864ee487874f48.S @@ -1,14 +1,13 @@ func000000000000000f: # @func000000000000000f - srli a1, a1, 14 - andi a1, a1, 1020 - add a0, a0, a1 - addi a0, a0, 1024 + slli a1, a1, 40 + srli a1, a1, 56 + addi a1, a1, 256 + sh2add a0, a1, a0 ret func000000000000000c: # @func000000000000000c - srli a1, a1, 3 - andi a1, a1, 508 - add a0, a0, a1 - lui a1, 5 - addiw a1, a1, 512 - add a0, a0, a1 + slli a1, a1, 52 + srli a1, a1, 57 + li a2, 1312 + sh2add a1, a2, a1 + sh2add a0, a1, a0 ret diff --git a/result/rvb23u64/ecce752e8c6e06cb.S b/result/rvb23u64/ecce752e8c6e06cb.S index 96c3852c379..8e35b7257fc 100644 --- a/result/rvb23u64/ecce752e8c6e06cb.S +++ b/result/rvb23u64/ecce752e8c6e06cb.S @@ -14,8 +14,8 @@ func0000000000000010: # @func0000000000000010 ret func000000000000003f: # @func000000000000003f andi a2, a2, 56 - slli a1, a1, 7 - sh1add a1, a2, a1 - add a0, a0, a1 + slli a1, a1, 6 + or a1, a1, a2 + sh1add a0, a1, a0 addi a0, a0, 2 ret diff --git a/result/rvb23u64/ed06fe4d3349feaa.S b/result/rvb23u64/ed06fe4d3349feaa.S index bcf14da3181..fa8ab507246 100644 --- a/result/rvb23u64/ed06fe4d3349feaa.S +++ b/result/rvb23u64/ed06fe4d3349feaa.S @@ -1,12 +1,12 @@ func000000000000000c: # @func000000000000000c - srai a1, a1, 30 - add a0, a0, a1 - addi a0, a0, 4 + srai a1, a1, 32 + addi a1, a1, 1 + sh2add a0, a1, a0 ret func000000000000000e: # @func000000000000000e - srai a1, a1, 31 - add a0, a0, a1 - addi a0, a0, 2 + srai a1, a1, 32 + addi a1, a1, 1 + sh1add a0, a1, a0 ret func000000000000000a: # @func000000000000000a srai a1, a1, 32 @@ -15,7 +15,6 @@ func000000000000000a: # @func000000000000000a ret func0000000000000002: # @func0000000000000002 srai a1, a1, 32 - slli a1, a1, 3 - ori a1, a1, 8 - add a0, a0, a1 + ori a1, a1, 1 + sh3add a0, a1, a0 ret diff --git a/result/rvb23u64/ed456b9402b7120e.S b/result/rvb23u64/ed456b9402b7120e.S index 4b521946761..1a1f25c4d03 100644 --- a/result/rvb23u64/ed456b9402b7120e.S +++ b/result/rvb23u64/ed456b9402b7120e.S @@ -1,10 +1,10 @@ func000000000000003f: # @func000000000000003f sh1add a1, a1, a1 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func000000000000003c: # @func000000000000003c sh1add a1, a1, a1 + addi a1, a1, 1 sh1add a0, a1, a0 - addi a0, a0, 2 ret diff --git a/result/rvb23u64/ed7b0e9c6903d103.S b/result/rvb23u64/ed7b0e9c6903d103.S index 30f8bf96987..90528000108 100644 --- a/result/rvb23u64/ed7b0e9c6903d103.S +++ b/result/rvb23u64/ed7b0e9c6903d103.S @@ -8,8 +8,8 @@ func0000000000000010: # @func0000000000000010 srliw a2, a2, 7 slli a2, a2, 7 sh2add a0, a2, a0 + addi a1, a1, 16 sh2add a0, a1, a0 - addi a0, a0, 64 ret func000000000000001e: # @func000000000000001e andi a2, a2, 7 @@ -21,6 +21,6 @@ func000000000000001e: # @func000000000000001e func000000000000001f: # @func000000000000001f andi a2, a2, 7 sh3add a0, a2, a0 + addi a1, a1, 8 sh3add a0, a1, a0 - addi a0, a0, 64 ret diff --git a/result/rvb23u64/ee465f5365934c33.S b/result/rvb23u64/ee465f5365934c33.S index 7e6f9ce86bb..1f47ffe0e96 100644 --- a/result/rvb23u64/ee465f5365934c33.S +++ b/result/rvb23u64/ee465f5365934c33.S @@ -1,12 +1,12 @@ func000000000000001c: # @func000000000000001c - slli a2, a2, 19 - sh3add a1, a1, a2 - add a0, a0, a1 + slli a2, a2, 16 + or a1, a1, a2 + sh3add a0, a1, a0 ret func0000000000000004: # @func0000000000000004 - slli a2, a2, 9 - sh3add a1, a1, a2 - add a0, a0, a1 + slli a2, a2, 6 + or a1, a1, a2 + sh3add a0, a1, a0 ret func000000000000001f: # @func000000000000001f slli a2, a2, 8 @@ -30,9 +30,8 @@ func0000000000000006: # @func0000000000000006 add a0, a0, a1 ret func000000000000000e: # @func000000000000000e - slli a1, a1, 2 - sh3add a1, a2, a1 - add a0, a0, a1 + sh1add a1, a2, a1 + sh2add a0, a1, a0 ret func000000000000001b: # @func000000000000001b slli a2, a2, 5 diff --git a/result/rvb23u64/ef40c8421ba7e137.S b/result/rvb23u64/ef40c8421ba7e137.S index 3617687a677..1cc08a2463a 100644 --- a/result/rvb23u64/ef40c8421ba7e137.S +++ b/result/rvb23u64/ef40c8421ba7e137.S @@ -10,8 +10,8 @@ func000000000000000b: # @func000000000000000b ret func0000000000000013: # @func0000000000000013 srliw a1, a1, 1 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func000000000000003f: # @func000000000000003f srliw a1, a1, 2 @@ -25,8 +25,8 @@ func0000000000000008: # @func0000000000000008 ret func0000000000000033: # @func0000000000000033 srliw a1, a1, 1 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func0000000000000028: # @func0000000000000028 srliw a1, a1, 3 diff --git a/result/rvb23u64/efe85c3f2ea7e031.S b/result/rvb23u64/efe85c3f2ea7e031.S index 39c766d7d63..8bafc030149 100644 --- a/result/rvb23u64/efe85c3f2ea7e031.S +++ b/result/rvb23u64/efe85c3f2ea7e031.S @@ -1,8 +1,8 @@ func0000000000000074: # @func0000000000000074 andi a2, a2, 255 sub a1, a1, a2 + addi a1, a1, 1 sh1add a0, a1, a0 - addi a0, a0, 2 ret func0000000000000034: # @func0000000000000034 andi a2, a2, 255 @@ -19,8 +19,8 @@ func0000000000000036: # @func0000000000000036 func0000000000000076: # @func0000000000000076 andi a2, a2, 255 sub a1, a1, a2 + addi a1, a1, 1 sh1add a0, a1, a0 - addi a0, a0, 2 ret func0000000000000014: # @func0000000000000014 andi a2, a2, 255 diff --git a/result/rvb23u64/f083efcecc906395.S b/result/rvb23u64/f083efcecc906395.S index d41c5a74e33..a8009dc9320 100644 --- a/result/rvb23u64/f083efcecc906395.S +++ b/result/rvb23u64/f083efcecc906395.S @@ -26,9 +26,9 @@ func000000000000003b: # @func000000000000003b addi a0, a0, 1 ret func000000000000002e: # @func000000000000002e + addi a2, a2, 1 sh2add a0, a1, a0 sh2add a0, a2, a0 - addi a0, a0, 4 ret func0000000000000030: # @func0000000000000030 slli a1, a1, 5 @@ -37,9 +37,9 @@ func0000000000000030: # @func0000000000000030 addi a0, a0, 8 ret func0000000000000010: # @func0000000000000010 + addi a2, a2, -1 add a0, a0, a1 sh3add a0, a2, a0 - addi a0, a0, -8 ret func000000000000001f: # @func000000000000001f sh1add a2, a2, a2 @@ -51,14 +51,14 @@ func000000000000001f: # @func000000000000001f addi a0, a0, -96 ret func000000000000002a: # @func000000000000002a + addi a2, a2, 1 sh2add a0, a1, a0 sh2add a0, a2, a0 - addi a0, a0, 4 ret func000000000000000e: # @func000000000000000e + addi a2, a2, 1 add a0, a0, a1 sh3add a0, a2, a0 - addi a0, a0, 8 ret func000000000000001e: # @func000000000000001e li a3, 84 diff --git a/result/rvb23u64/f0b7363c8dac63cf.S b/result/rvb23u64/f0b7363c8dac63cf.S index d85f58e01a9..affaf0f0807 100644 --- a/result/rvb23u64/f0b7363c8dac63cf.S +++ b/result/rvb23u64/f0b7363c8dac63cf.S @@ -1,8 +1,8 @@ func0000000000000004: # @func0000000000000004 add a1, a1, a2 slliw a1, a1, 1 + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 8 ret func000000000000002e: # @func000000000000002e add a1, a1, a2 @@ -25,6 +25,6 @@ func0000000000000006: # @func0000000000000006 func0000000000000026: # @func0000000000000026 add a1, a1, a2 slliw a1, a1, 1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret diff --git a/result/rvb23u64/f189c35909e35aa4.S b/result/rvb23u64/f189c35909e35aa4.S index b29356649d6..b600b187118 100644 --- a/result/rvb23u64/f189c35909e35aa4.S +++ b/result/rvb23u64/f189c35909e35aa4.S @@ -1,5 +1,7 @@ func000000000000005e: # @func000000000000005e sext.w a2, a2 add a1, a1, a2 + addi a1, a1, -1 sh2add a0, a1, a0 + addi a0, a0, 4 ret diff --git a/result/rvb23u64/f28f05e471f4929f.S b/result/rvb23u64/f28f05e471f4929f.S index 19664a6710a..ae7fb89f65b 100644 --- a/result/rvb23u64/f28f05e471f4929f.S +++ b/result/rvb23u64/f28f05e471f4929f.S @@ -1,10 +1,10 @@ func000000000000000e: # @func000000000000000e srai a1, a1, 2 + addi a1, a1, -2 sh1add a0, a1, a0 - addi a0, a0, -4 ret func000000000000000c: # @func000000000000000c srai a1, a1, 3 + addi a1, a1, -2 sh2add a0, a1, a0 - addi a0, a0, -8 ret diff --git a/result/rvb23u64/f38cd5a4bf61954b.S b/result/rvb23u64/f38cd5a4bf61954b.S index da274177b58..1a6664fe9fe 100644 --- a/result/rvb23u64/f38cd5a4bf61954b.S +++ b/result/rvb23u64/f38cd5a4bf61954b.S @@ -25,13 +25,13 @@ func000000000000000a: # @func000000000000000a ret func0000000000000036: # @func0000000000000036 add a1, a1, a2 + addi a1, a1, -1 sh1add a0, a1, a0 - addi a0, a0, -2 ret func0000000000000037: # @func0000000000000037 add a1, a1, a2 + addi a1, a1, -1 sh2add a0, a1, a0 - addi a0, a0, -4 ret func0000000000000012: # @func0000000000000012 add a1, a1, a2 @@ -61,6 +61,6 @@ func0000000000000014: # @func0000000000000014 ret func0000000000000004: # @func0000000000000004 add a1, a1, a2 + addi a1, a1, -1 sh3add a0, a1, a0 - addi a0, a0, -8 ret diff --git a/result/rvb23u64/f4f875df4615de16.S b/result/rvb23u64/f4f875df4615de16.S index eb01190e684..1c7d859daf4 100644 --- a/result/rvb23u64/f4f875df4615de16.S +++ b/result/rvb23u64/f4f875df4615de16.S @@ -3,17 +3,19 @@ func000000000000000e: # @func000000000000000e addi a0, a0, 4 ret func000000000000001f: # @func000000000000001f - sh3add a0, a1, a0 - addi a0, a0, 4 + slli a1, a1, 1 + addi a1, a1, 1 + sh2add a0, a1, a0 ret func000000000000001c: # @func000000000000001c - slli a1, a1, 4 - add a0, a0, a1 - addi a0, a0, 8 + slli a1, a1, 1 + addi a1, a1, 1 + sh3add a0, a1, a0 ret func0000000000000014: # @func0000000000000014 - sh3add a0, a1, a0 - addi a0, a0, 4 + slli a1, a1, 1 + addi a1, a1, 1 + sh2add a0, a1, a0 ret func000000000000000c: # @func000000000000000c slli a1, a1, 4 @@ -35,9 +37,9 @@ func0000000000000004: # @func0000000000000004 addi a0, a0, 32 ret func000000000000000f: # @func000000000000000f - slli a1, a1, 10 - add a0, a0, a1 - addi a0, a0, 4 + slli a1, a1, 8 + addi a1, a1, 1 + sh2add a0, a1, a0 ret func0000000000000016: # @func0000000000000016 sh1add a0, a1, a0 @@ -49,6 +51,7 @@ func000000000000001d: # @func000000000000001d addi a0, a0, 8 ret func0000000000000017: # @func0000000000000017 - sh3add a0, a1, a0 - addi a0, a0, 4 + slli a1, a1, 1 + addi a1, a1, 1 + sh2add a0, a1, a0 ret diff --git a/result/rvb23u64/f524ac700dbb809f.S b/result/rvb23u64/f524ac700dbb809f.S index 886c3acacff..2547bfefd89 100644 --- a/result/rvb23u64/f524ac700dbb809f.S +++ b/result/rvb23u64/f524ac700dbb809f.S @@ -25,8 +25,9 @@ func00000000000000bf: # @func00000000000000bf ret func000000000000007f: # @func000000000000007f andi a1, a1, 255 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 280 + addi a0, a0, 276 ret func000000000000002f: # @func000000000000002f andi a1, a1, 255 @@ -50,11 +51,13 @@ func00000000000000ac: # @func00000000000000ac ret func000000000000007c: # @func000000000000007c andi a1, a1, 255 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 132 + addi a0, a0, 128 ret func00000000000000ff: # @func00000000000000ff andi a1, a1, 255 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 784 + addi a0, a0, 780 ret diff --git a/result/rvb23u64/fa3e056243029a39.S b/result/rvb23u64/fa3e056243029a39.S index 5c16730f29c..578479cf551 100644 --- a/result/rvb23u64/fa3e056243029a39.S +++ b/result/rvb23u64/fa3e056243029a39.S @@ -1,30 +1,30 @@ func0000000000000013: # @func0000000000000013 + addi a2, a2, 1 sh3add a0, a1, a0 sh3add a0, a2, a0 - addi a0, a0, 8 ret func0000000000000010: # @func0000000000000010 + addi a2, a2, 1 sh3add a0, a1, a0 sh3add a0, a2, a0 - addi a0, a0, 8 ret func0000000000000012: # @func0000000000000012 + addi a2, a2, 1 sh3add a0, a1, a0 sh3add a0, a2, a0 - addi a0, a0, 8 ret func000000000000001a: # @func000000000000001a + addi a2, a2, 1 sh2add a0, a1, a0 sh2add a0, a2, a0 - addi a0, a0, 4 ret func0000000000000014: # @func0000000000000014 + addi a2, a2, 1 sh2add a0, a2, a0 sh2add a0, a1, a0 - addi a0, a0, 4 ret func000000000000001f: # @func000000000000001f + addi a2, a2, 1 sh2add a0, a2, a0 sh2add a0, a1, a0 - addi a0, a0, 4 ret diff --git a/result/rvb23u64/fa836b730820c2cf.S b/result/rvb23u64/fa836b730820c2cf.S index 87e913381c5..6a937fa1d55 100644 --- a/result/rvb23u64/fa836b730820c2cf.S +++ b/result/rvb23u64/fa836b730820c2cf.S @@ -39,8 +39,9 @@ func000000000000000c: # @func000000000000000c addi a0, a0, 30 ret func000000000000000e: # @func000000000000000e + addi a1, a1, 1 sh3add a0, a1, a0 - addi a0, a0, 12 + addi a0, a0, 4 ret func0000000000000008: # @func0000000000000008 slli a1, a1, 4 diff --git a/result/rvb23u64/fbdf73ac10c8f599.S b/result/rvb23u64/fbdf73ac10c8f599.S index 0603b8de893..958248cb67b 100644 --- a/result/rvb23u64/fbdf73ac10c8f599.S +++ b/result/rvb23u64/fbdf73ac10c8f599.S @@ -1,8 +1,8 @@ func00000000000001ff: # @func00000000000001ff - slli a2, a2, 7 - slli a1, a1, 6 + slli a2, a2, 5 + slli a1, a1, 4 or a1, a1, a2 - add a0, a0, a1 + sh2add a0, a1, a0 addi a0, a0, 1024 ret func00000000000001f0: # @func00000000000001f0 diff --git a/result/rvb23u64/fdcbdf0b6020a744.S b/result/rvb23u64/fdcbdf0b6020a744.S index ca718188b6b..f9c5fa4a0eb 100644 --- a/result/rvb23u64/fdcbdf0b6020a744.S +++ b/result/rvb23u64/fdcbdf0b6020a744.S @@ -24,8 +24,8 @@ func000000000000000b: # @func000000000000000b sh3add a0, a1, a0 ret func000000000000001f: # @func000000000000001f + addi a1, a1, 2 sh1add a0, a1, a0 - addi a0, a0, 4 ret func000000000000001b: # @func000000000000001b addi a1, a1, 1 @@ -33,8 +33,8 @@ func000000000000001b: # @func000000000000001b sh3add a0, a1, a0 ret func0000000000000004: # @func0000000000000004 + addi a1, a1, -2 sh2add a0, a1, a0 - addi a0, a0, -8 ret func0000000000000018: # @func0000000000000018 addi a1, a1, 7 diff --git a/result/rvb23u64/fe0337e7e56dd983.S b/result/rvb23u64/fe0337e7e56dd983.S index b88fec64f2e..3661a57081b 100644 --- a/result/rvb23u64/fe0337e7e56dd983.S +++ b/result/rvb23u64/fe0337e7e56dd983.S @@ -24,27 +24,27 @@ func000000000000002b: # @func000000000000002b ret func0000000000000070: # @func0000000000000070 slliw a2, a2, 2 + addi a2, a2, 2 sh1add a0, a1, a0 sh1add a0, a2, a0 - addi a0, a0, 4 ret func0000000000000073: # @func0000000000000073 slliw a2, a2, 1 + addi a2, a2, 1 sh1add a0, a1, a0 sh1add a0, a2, a0 - addi a0, a0, 2 ret func000000000000003f: # @func000000000000003f slliw a2, a2, 1 + addi a2, a2, 1 sh1add a0, a1, a0 sh1add a0, a2, a0 - addi a0, a0, 2 ret func00000000000000f3: # @func00000000000000f3 slliw a2, a2, 1 + addi a2, a2, 1 sh3add a0, a1, a0 sh3add a0, a2, a0 - addi a0, a0, 8 ret func0000000000000020: # @func0000000000000020 slli a2, a2, 3 diff --git a/result/rvb23u64/fe6569e6e0bd5bfb.S b/result/rvb23u64/fe6569e6e0bd5bfb.S index 118ece1e331..f52ac8ca31d 100644 --- a/result/rvb23u64/fe6569e6e0bd5bfb.S +++ b/result/rvb23u64/fe6569e6e0bd5bfb.S @@ -6,8 +6,8 @@ func0000000000000002: # @func0000000000000002 func0000000000000017: # @func0000000000000017 sext.w a1, a1 sh1add a1, a1, a1 + addi a1, a1, 1 sh1add a0, a1, a0 - addi a0, a0, 2 ret func0000000000000003: # @func0000000000000003 sh1add a1, a1, a1 @@ -17,8 +17,8 @@ func0000000000000003: # @func0000000000000003 func0000000000000016: # @func0000000000000016 sext.w a1, a1 sh1add a1, a1, a1 + addi a1, a1, 1 sh2add a0, a1, a0 - addi a0, a0, 4 ret func0000000000000000: # @func0000000000000000 sh1add a1, a1, a1 @@ -28,6 +28,6 @@ func0000000000000000: # @func0000000000000000 func0000000000000007: # @func0000000000000007 sh2add a1, a1, a1 sext.w a1, a1 + addi a1, a1, -5 sh3add a0, a1, a0 - addi a0, a0, -40 ret diff --git a/result/rvb23u64/feb3d3f1b51f1ff0.S b/result/rvb23u64/feb3d3f1b51f1ff0.S index 3b064f03886..2d855fe4fcd 100644 --- a/result/rvb23u64/feb3d3f1b51f1ff0.S +++ b/result/rvb23u64/feb3d3f1b51f1ff0.S @@ -1,25 +1,28 @@ func000000000000002e: # @func000000000000002e sub a1, a1, a2 - ori a1, a1, 4 - add a0, a0, a1 + srli a1, a1, 2 + ori a1, a1, 1 + sh2add a0, a1, a0 addi a0, a0, -8 ret func000000000000000e: # @func000000000000000e sub a1, a1, a2 - ori a1, a1, 8 - andi a1, a1, -8 - add a0, a0, a1 + srli a1, a1, 3 + ori a1, a1, 1 + sh3add a0, a1, a0 addi a0, a0, -16 ret func000000000000002f: # @func000000000000002f sub a1, a1, a2 - ori a1, a1, 8 - add a0, a0, a1 + srli a1, a1, 3 + ori a1, a1, 1 + sh3add a0, a1, a0 addi a0, a0, -16 ret func000000000000002c: # @func000000000000002c sub a1, a1, a2 - ori a1, a1, 8 - add a0, a0, a1 + srli a1, a1, 3 + ori a1, a1, 1 + sh3add a0, a1, a0 addi a0, a0, -16 ret diff --git a/result/rvb23u64/fef535cc466456c6.S b/result/rvb23u64/fef535cc466456c6.S index 964cb11130e..88c091d1fa0 100644 --- a/result/rvb23u64/fef535cc466456c6.S +++ b/result/rvb23u64/fef535cc466456c6.S @@ -1,18 +1,18 @@ func000000000000002e: # @func000000000000002e sub a1, a1, a2 - srai a1, a1, 1 - add a0, a0, a1 - addi a0, a0, -4 + srai a1, a1, 2 + addi a1, a1, -2 + sh1add a0, a1, a0 ret func000000000000000e: # @func000000000000000e sub a1, a1, a2 srai a1, a1, 3 + addi a1, a1, -2 sh2add a0, a1, a0 - addi a0, a0, -8 ret func000000000000002c: # @func000000000000002c sub a1, a1, a2 - srai a1, a1, 1 - add a0, a0, a1 - addi a0, a0, -16 + srai a1, a1, 4 + addi a1, a1, -2 + sh3add a0, a1, a0 ret diff --git a/scripts/setup_pre_commit_patch.sh b/scripts/setup_pre_commit_patch.sh index d8d993d1b31..65ccc462969 100755 --- a/scripts/setup_pre_commit_patch.sh +++ b/scripts/setup_pre_commit_patch.sh @@ -2,7 +2,7 @@ set -euo pipefail shopt -s inherit_errexit -export GITHUB_PATCH_ID="/llvm-project/commit/" +export GITHUB_PATCH_ID="llvm/llvm-project/pull/119527" # Please rebase manually # git fetch origin