@@ -1651,8 +1651,8 @@ define signext i16 @fcvt_w_s_sat_i16(double %a) nounwind {
16511651; RV64IFD-NEXT: lui a0, %hi(.LCPI26_1)
16521652; RV64IFD-NEXT: fld fa4, %lo(.LCPI26_1)(a0)
16531653; RV64IFD-NEXT: feq.d a0, fa0, fa0
1654- ; RV64IFD-NEXT: fmax.d fa5, fa0, fa5
16551654; RV64IFD-NEXT: neg a0, a0
1655+ ; RV64IFD-NEXT: fmax.d fa5, fa0, fa5
16561656; RV64IFD-NEXT: fmin.d fa5, fa5, fa4
16571657; RV64IFD-NEXT: fcvt.l.d a1, fa5, rtz
16581658; RV64IFD-NEXT: and a0, a0, a1
@@ -1680,12 +1680,12 @@ define signext i16 @fcvt_w_s_sat_i16(double %a) nounwind {
16801680; RV64IZFINXZDINX-NEXT: ld a1, %lo(.LCPI26_0)(a1)
16811681; RV64IZFINXZDINX-NEXT: lui a2, %hi(.LCPI26_1)
16821682; RV64IZFINXZDINX-NEXT: ld a2, %lo(.LCPI26_1)(a2)
1683- ; RV64IZFINXZDINX-NEXT: fmax .d a1 , a0, a1
1684- ; RV64IZFINXZDINX-NEXT: feq.d a0, a0, a0
1685- ; RV64IZFINXZDINX-NEXT: neg a0, a0
1686- ; RV64IZFINXZDINX-NEXT: fmin.d a1, a1 , a2
1687- ; RV64IZFINXZDINX-NEXT: fcvt.l.d a1, a1 , rtz
1688- ; RV64IZFINXZDINX-NEXT: and a0, a0, a1
1683+ ; RV64IZFINXZDINX-NEXT: feq .d a3 , a0, a0
1684+ ; RV64IZFINXZDINX-NEXT: neg a3, a3
1685+ ; RV64IZFINXZDINX-NEXT: fmax.d a0, a0, a1
1686+ ; RV64IZFINXZDINX-NEXT: fmin.d a0, a0 , a2
1687+ ; RV64IZFINXZDINX-NEXT: fcvt.l.d a0, a0 , rtz
1688+ ; RV64IZFINXZDINX-NEXT: and a0, a3, a0
16891689; RV64IZFINXZDINX-NEXT: ret
16901690;
16911691; RV32I-LABEL: fcvt_w_s_sat_i16:
@@ -2026,8 +2026,8 @@ define signext i8 @fcvt_w_s_sat_i8(double %a) nounwind {
20262026; RV64IFD-NEXT: lui a0, %hi(.LCPI30_1)
20272027; RV64IFD-NEXT: fld fa4, %lo(.LCPI30_1)(a0)
20282028; RV64IFD-NEXT: feq.d a0, fa0, fa0
2029- ; RV64IFD-NEXT: fmax.d fa5, fa0, fa5
20302029; RV64IFD-NEXT: neg a0, a0
2030+ ; RV64IFD-NEXT: fmax.d fa5, fa0, fa5
20312031; RV64IFD-NEXT: fmin.d fa5, fa5, fa4
20322032; RV64IFD-NEXT: fcvt.l.d a1, fa5, rtz
20332033; RV64IFD-NEXT: and a0, a0, a1
@@ -2055,12 +2055,12 @@ define signext i8 @fcvt_w_s_sat_i8(double %a) nounwind {
20552055; RV64IZFINXZDINX-NEXT: ld a1, %lo(.LCPI30_0)(a1)
20562056; RV64IZFINXZDINX-NEXT: lui a2, %hi(.LCPI30_1)
20572057; RV64IZFINXZDINX-NEXT: ld a2, %lo(.LCPI30_1)(a2)
2058- ; RV64IZFINXZDINX-NEXT: fmax .d a1 , a0, a1
2059- ; RV64IZFINXZDINX-NEXT: feq.d a0, a0, a0
2060- ; RV64IZFINXZDINX-NEXT: neg a0, a0
2061- ; RV64IZFINXZDINX-NEXT: fmin.d a1, a1 , a2
2062- ; RV64IZFINXZDINX-NEXT: fcvt.l.d a1, a1 , rtz
2063- ; RV64IZFINXZDINX-NEXT: and a0, a0, a1
2058+ ; RV64IZFINXZDINX-NEXT: feq .d a3 , a0, a0
2059+ ; RV64IZFINXZDINX-NEXT: neg a3, a3
2060+ ; RV64IZFINXZDINX-NEXT: fmax.d a0, a0, a1
2061+ ; RV64IZFINXZDINX-NEXT: fmin.d a0, a0 , a2
2062+ ; RV64IZFINXZDINX-NEXT: fcvt.l.d a0, a0 , rtz
2063+ ; RV64IZFINXZDINX-NEXT: and a0, a3, a0
20642064; RV64IZFINXZDINX-NEXT: ret
20652065;
20662066; RV32I-LABEL: fcvt_w_s_sat_i8:
0 commit comments