@@ -729,13 +729,13 @@ define i64 @fcvt_l_d_sat(double %a) nounwind {
729729; RV32IZFINXZDINX-NEXT: sw s0, 8(sp) # 4-byte Folded Spill
730730; RV32IZFINXZDINX-NEXT: sw s1, 4(sp) # 4-byte Folded Spill
731731; RV32IZFINXZDINX-NEXT: sw s2, 0(sp) # 4-byte Folded Spill
732- ; RV32IZFINXZDINX-NEXT: lui a2 , %hi(.LCPI12_0)
733- ; RV32IZFINXZDINX-NEXT: lw a4 , %lo(.LCPI12_0)(a2 )
734- ; RV32IZFINXZDINX-NEXT: addi a2, a2 , %lo(.LCPI12_0)
735- ; RV32IZFINXZDINX-NEXT: lw a5 , 4(a2 )
732+ ; RV32IZFINXZDINX-NEXT: lui a3 , %hi(.LCPI12_0)
733+ ; RV32IZFINXZDINX-NEXT: lw a2 , %lo(.LCPI12_0)(a3 )
734+ ; RV32IZFINXZDINX-NEXT: addi a3, a3 , %lo(.LCPI12_0)
735+ ; RV32IZFINXZDINX-NEXT: lw a3 , 4(a3 )
736736; RV32IZFINXZDINX-NEXT: mv s1, a1
737737; RV32IZFINXZDINX-NEXT: mv s0, a0
738- ; RV32IZFINXZDINX-NEXT: fle.d s2, a4 , s0
738+ ; RV32IZFINXZDINX-NEXT: fle.d s2, a2 , s0
739739; RV32IZFINXZDINX-NEXT: call __fixdfdi
740740; RV32IZFINXZDINX-NEXT: lui a3, 524288
741741; RV32IZFINXZDINX-NEXT: lui a2, 524288
@@ -981,15 +981,15 @@ define i64 @fcvt_lu_d_sat(double %a) nounwind {
981981; RV32IZFINXZDINX-NEXT: mv s1, a1
982982; RV32IZFINXZDINX-NEXT: mv s0, a0
983983; RV32IZFINXZDINX-NEXT: call __fixunsdfdi
984- ; RV32IZFINXZDINX-NEXT: fle.d a2 , zero, s0
984+ ; RV32IZFINXZDINX-NEXT: fle.d a4 , zero, s0
985985; RV32IZFINXZDINX-NEXT: lui a3, %hi(.LCPI14_0)
986- ; RV32IZFINXZDINX-NEXT: lw a4 , %lo(.LCPI14_0)(a3)
986+ ; RV32IZFINXZDINX-NEXT: lw a2 , %lo(.LCPI14_0)(a3)
987987; RV32IZFINXZDINX-NEXT: addi a3, a3, %lo(.LCPI14_0)
988- ; RV32IZFINXZDINX-NEXT: lw a5 , 4(a3)
989- ; RV32IZFINXZDINX-NEXT: neg a2, a2
990- ; RV32IZFINXZDINX-NEXT: and a0, a2 , a0
991- ; RV32IZFINXZDINX-NEXT: and a1, a2 , a1
992- ; RV32IZFINXZDINX-NEXT: flt.d a2, a4 , s0
988+ ; RV32IZFINXZDINX-NEXT: lw a3 , 4(a3)
989+ ; RV32IZFINXZDINX-NEXT: neg a4, a4
990+ ; RV32IZFINXZDINX-NEXT: and a0, a4 , a0
991+ ; RV32IZFINXZDINX-NEXT: and a1, a4 , a1
992+ ; RV32IZFINXZDINX-NEXT: flt.d a2, a2 , s0
993993; RV32IZFINXZDINX-NEXT: neg a2, a2
994994; RV32IZFINXZDINX-NEXT: or a0, a2, a0
995995; RV32IZFINXZDINX-NEXT: or a1, a2, a1
@@ -1650,17 +1650,17 @@ define signext i16 @fcvt_w_s_sat_i16(double %a) nounwind {
16501650;
16511651; RV32IZFINXZDINX-LABEL: fcvt_w_s_sat_i16:
16521652; RV32IZFINXZDINX: # %bb.0: # %start
1653- ; RV32IZFINXZDINX-NEXT: lui a2, %hi(.LCPI26_0)
1654- ; RV32IZFINXZDINX-NEXT: lui a3, %hi(.LCPI26_1)
1655- ; RV32IZFINXZDINX-NEXT: lw a4, %lo(.LCPI26_0)(a2)
1656- ; RV32IZFINXZDINX-NEXT: addi a2, a2, %lo(.LCPI26_0)
1657- ; RV32IZFINXZDINX-NEXT: lw a5, 4(a2)
1658- ; RV32IZFINXZDINX-NEXT: lw a2, %lo(.LCPI26_1)(a3)
1659- ; RV32IZFINXZDINX-NEXT: addi a3, a3, %lo(.LCPI26_1)
1653+ ; RV32IZFINXZDINX-NEXT: lui a3, %hi(.LCPI26_0)
1654+ ; RV32IZFINXZDINX-NEXT: lui a5, %hi(.LCPI26_1)
1655+ ; RV32IZFINXZDINX-NEXT: lw a2, %lo(.LCPI26_0)(a3)
1656+ ; RV32IZFINXZDINX-NEXT: addi a3, a3, %lo(.LCPI26_0)
16601657; RV32IZFINXZDINX-NEXT: lw a3, 4(a3)
1658+ ; RV32IZFINXZDINX-NEXT: lw a4, %lo(.LCPI26_1)(a5)
1659+ ; RV32IZFINXZDINX-NEXT: addi a5, a5, %lo(.LCPI26_1)
1660+ ; RV32IZFINXZDINX-NEXT: lw a5, 4(a5)
16611661; RV32IZFINXZDINX-NEXT: feq.d a6, a0, a0
1662- ; RV32IZFINXZDINX-NEXT: fmax.d a0, a0, a4
1663- ; RV32IZFINXZDINX-NEXT: fmin.d a0, a0, a2
1662+ ; RV32IZFINXZDINX-NEXT: fmax.d a0, a0, a2
1663+ ; RV32IZFINXZDINX-NEXT: fmin.d a0, a0, a4
16641664; RV32IZFINXZDINX-NEXT: fcvt.w.d a0, a0, rtz
16651665; RV32IZFINXZDINX-NEXT: neg a1, a6
16661666; RV32IZFINXZDINX-NEXT: and a0, a1, a0
@@ -1848,12 +1848,12 @@ define zeroext i16 @fcvt_wu_s_sat_i16(double %a) nounwind {
18481848;
18491849; RV32IZFINXZDINX-LABEL: fcvt_wu_s_sat_i16:
18501850; RV32IZFINXZDINX: # %bb.0: # %start
1851- ; RV32IZFINXZDINX-NEXT: lui a2 , %hi(.LCPI28_0)
1852- ; RV32IZFINXZDINX-NEXT: lw a4 , %lo(.LCPI28_0)(a2 )
1853- ; RV32IZFINXZDINX-NEXT: addi a2, a2 , %lo(.LCPI28_0)
1854- ; RV32IZFINXZDINX-NEXT: lw a5 , 4(a2 )
1851+ ; RV32IZFINXZDINX-NEXT: lui a3 , %hi(.LCPI28_0)
1852+ ; RV32IZFINXZDINX-NEXT: lw a2 , %lo(.LCPI28_0)(a3 )
1853+ ; RV32IZFINXZDINX-NEXT: addi a3, a3 , %lo(.LCPI28_0)
1854+ ; RV32IZFINXZDINX-NEXT: lw a3 , 4(a3 )
18551855; RV32IZFINXZDINX-NEXT: fmax.d a0, a0, zero
1856- ; RV32IZFINXZDINX-NEXT: fmin.d a0, a0, a4
1856+ ; RV32IZFINXZDINX-NEXT: fmin.d a0, a0, a2
18571857; RV32IZFINXZDINX-NEXT: fcvt.wu.d a0, a0, rtz
18581858; RV32IZFINXZDINX-NEXT: ret
18591859;
@@ -2026,17 +2026,17 @@ define signext i8 @fcvt_w_s_sat_i8(double %a) nounwind {
20262026;
20272027; RV32IZFINXZDINX-LABEL: fcvt_w_s_sat_i8:
20282028; RV32IZFINXZDINX: # %bb.0: # %start
2029- ; RV32IZFINXZDINX-NEXT: lui a2, %hi(.LCPI30_0)
2030- ; RV32IZFINXZDINX-NEXT: lui a3, %hi(.LCPI30_1)
2031- ; RV32IZFINXZDINX-NEXT: lw a4, %lo(.LCPI30_0)(a2)
2032- ; RV32IZFINXZDINX-NEXT: addi a2, a2, %lo(.LCPI30_0)
2033- ; RV32IZFINXZDINX-NEXT: lw a5, 4(a2)
2034- ; RV32IZFINXZDINX-NEXT: lw a2, %lo(.LCPI30_1)(a3)
2035- ; RV32IZFINXZDINX-NEXT: addi a3, a3, %lo(.LCPI30_1)
2029+ ; RV32IZFINXZDINX-NEXT: lui a3, %hi(.LCPI30_0)
2030+ ; RV32IZFINXZDINX-NEXT: lui a5, %hi(.LCPI30_1)
2031+ ; RV32IZFINXZDINX-NEXT: lw a2, %lo(.LCPI30_0)(a3)
2032+ ; RV32IZFINXZDINX-NEXT: addi a3, a3, %lo(.LCPI30_0)
20362033; RV32IZFINXZDINX-NEXT: lw a3, 4(a3)
2034+ ; RV32IZFINXZDINX-NEXT: lw a4, %lo(.LCPI30_1)(a5)
2035+ ; RV32IZFINXZDINX-NEXT: addi a5, a5, %lo(.LCPI30_1)
2036+ ; RV32IZFINXZDINX-NEXT: lw a5, 4(a5)
20372037; RV32IZFINXZDINX-NEXT: feq.d a6, a0, a0
2038- ; RV32IZFINXZDINX-NEXT: fmax.d a0, a0, a4
2039- ; RV32IZFINXZDINX-NEXT: fmin.d a0, a0, a2
2038+ ; RV32IZFINXZDINX-NEXT: fmax.d a0, a0, a2
2039+ ; RV32IZFINXZDINX-NEXT: fmin.d a0, a0, a4
20402040; RV32IZFINXZDINX-NEXT: fcvt.w.d a0, a0, rtz
20412041; RV32IZFINXZDINX-NEXT: neg a1, a6
20422042; RV32IZFINXZDINX-NEXT: and a0, a1, a0
@@ -2224,12 +2224,12 @@ define zeroext i8 @fcvt_wu_s_sat_i8(double %a) nounwind {
22242224;
22252225; RV32IZFINXZDINX-LABEL: fcvt_wu_s_sat_i8:
22262226; RV32IZFINXZDINX: # %bb.0: # %start
2227- ; RV32IZFINXZDINX-NEXT: lui a2 , %hi(.LCPI32_0)
2228- ; RV32IZFINXZDINX-NEXT: lw a4 , %lo(.LCPI32_0)(a2 )
2229- ; RV32IZFINXZDINX-NEXT: addi a2, a2 , %lo(.LCPI32_0)
2230- ; RV32IZFINXZDINX-NEXT: lw a5 , 4(a2 )
2227+ ; RV32IZFINXZDINX-NEXT: lui a3 , %hi(.LCPI32_0)
2228+ ; RV32IZFINXZDINX-NEXT: lw a2 , %lo(.LCPI32_0)(a3 )
2229+ ; RV32IZFINXZDINX-NEXT: addi a3, a3 , %lo(.LCPI32_0)
2230+ ; RV32IZFINXZDINX-NEXT: lw a3 , 4(a3 )
22312231; RV32IZFINXZDINX-NEXT: fmax.d a0, a0, zero
2232- ; RV32IZFINXZDINX-NEXT: fmin.d a0, a0, a4
2232+ ; RV32IZFINXZDINX-NEXT: fmin.d a0, a0, a2
22332233; RV32IZFINXZDINX-NEXT: fcvt.wu.d a0, a0, rtz
22342234; RV32IZFINXZDINX-NEXT: ret
22352235;
0 commit comments