@@ -2167,8 +2167,8 @@ define half @v_fneg_inv2pi_minimumnum_f16(half %a) #0 {
2167
2167
; SI-LABEL: v_fneg_inv2pi_minimumnum_f16:
2168
2168
; SI: ; %bb.0:
2169
2169
; SI-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
2170
- ; SI-NEXT: v_cvt_f16_f32_e32 v0, v0
2171
- ; SI-NEXT: v_cvt_f32_f16_e64 v0, - v0
2170
+ ; SI-NEXT: v_cvt_f16_f32_e64 v0, - v0
2171
+ ; SI-NEXT: v_cvt_f32_f16_e32 v0, v0
2172
2172
; SI-NEXT: v_max_f32_e32 v0, 0xbe230000, v0
2173
2173
; SI-NEXT: s_setpc_b64 s[30:31]
2174
2174
;
@@ -2188,8 +2188,8 @@ define half @v_fneg_neg_inv2pi_minimumnum_f16(half %a) #0 {
2188
2188
; SI-LABEL: v_fneg_neg_inv2pi_minimumnum_f16:
2189
2189
; SI: ; %bb.0:
2190
2190
; SI-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
2191
- ; SI-NEXT: v_cvt_f16_f32_e32 v0, v0
2192
- ; SI-NEXT: v_cvt_f32_f16_e64 v0, - v0
2191
+ ; SI-NEXT: v_cvt_f16_f32_e64 v0, - v0
2192
+ ; SI-NEXT: v_cvt_f32_f16_e32 v0, v0
2193
2193
; SI-NEXT: v_max_f32_e32 v0, 0x3e230000, v0
2194
2194
; SI-NEXT: s_setpc_b64 s[30:31]
2195
2195
;
@@ -2208,10 +2208,10 @@ define double @v_fneg_inv2pi_minimumnum_f64(double %a) #0 {
2208
2208
; SI-LABEL: v_fneg_inv2pi_minimumnum_f64:
2209
2209
; SI: ; %bb.0:
2210
2210
; SI-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
2211
- ; SI-NEXT: v_max_f64 v[0:1], v[0:1], v[0:1]
2211
+ ; SI-NEXT: v_max_f64 v[0:1], - v[0:1], - v[0:1]
2212
2212
; SI-NEXT: s_mov_b32 s4, 0x6dc9c882
2213
2213
; SI-NEXT: s_mov_b32 s5, 0xbfc45f30
2214
- ; SI-NEXT: v_max_f64 v[0:1], - v[0:1], s[4:5]
2214
+ ; SI-NEXT: v_max_f64 v[0:1], v[0:1], s[4:5]
2215
2215
; SI-NEXT: s_setpc_b64 s[30:31]
2216
2216
;
2217
2217
; VI-LABEL: v_fneg_inv2pi_minimumnum_f64:
@@ -2230,17 +2230,17 @@ define double @v_fneg_neg_inv2pi_minimumnum_f64(double %a) #0 {
2230
2230
; SI-LABEL: v_fneg_neg_inv2pi_minimumnum_f64:
2231
2231
; SI: ; %bb.0:
2232
2232
; SI-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
2233
- ; SI-NEXT: v_max_f64 v[0:1], v[0:1], v[0:1]
2233
+ ; SI-NEXT: v_max_f64 v[0:1], - v[0:1], - v[0:1]
2234
2234
; SI-NEXT: s_mov_b32 s4, 0x6dc9c882
2235
2235
; SI-NEXT: s_mov_b32 s5, 0x3fc45f30
2236
- ; SI-NEXT: v_max_f64 v[0:1], - v[0:1], s[4:5]
2236
+ ; SI-NEXT: v_max_f64 v[0:1], v[0:1], s[4:5]
2237
2237
; SI-NEXT: s_setpc_b64 s[30:31]
2238
2238
;
2239
2239
; VI-LABEL: v_fneg_neg_inv2pi_minimumnum_f64:
2240
2240
; VI: ; %bb.0:
2241
2241
; VI-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
2242
- ; VI-NEXT: v_max_f64 v[0:1], v[0:1], v[0:1]
2243
- ; VI-NEXT: v_max_f64 v[0:1], - v[0:1], 0.15915494309189532
2242
+ ; VI-NEXT: v_max_f64 v[0:1], - v[0:1], - v[0:1]
2243
+ ; VI-NEXT: v_max_f64 v[0:1], v[0:1], 0.15915494309189532
2244
2244
; VI-NEXT: s_setpc_b64 s[30:31]
2245
2245
%min = call double @llvm.minimumnum.f64 (double 0xbfc45f306dc9c882 , double %a )
2246
2246
%fneg = fneg double %min
@@ -2313,9 +2313,9 @@ define { float, float } @v_fneg_minimumnum_multi_use_minimumnum_f32_ieee(float %
2313
2313
; GCN-LABEL: v_fneg_minimumnum_multi_use_minimumnum_f32_ieee:
2314
2314
; GCN: ; %bb.0:
2315
2315
; GCN-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
2316
- ; GCN-NEXT: v_mul_f32_e32 v1, 1.0, v1
2317
- ; GCN-NEXT: v_mul_f32_e32 v0, 1.0, v0
2318
- ; GCN-NEXT: v_max_f32_e64 v0, - v0, - v1
2316
+ ; GCN-NEXT: v_mul_f32_e32 v1, - 1.0, v1
2317
+ ; GCN-NEXT: v_mul_f32_e32 v0, - 1.0, v0
2318
+ ; GCN-NEXT: v_max_f32_e32 v0, v0, v1
2319
2319
; GCN-NEXT: v_mul_f32_e32 v1, -4.0, v0
2320
2320
; GCN-NEXT: s_setpc_b64 s[30:31]
2321
2321
%min = call float @llvm.minimumnum.f32 (float %a , float %b )
@@ -2330,9 +2330,9 @@ define <2 x float> @v_fneg_minimumnum_multi_use_minimumnum_f32_no_ieee(float %a,
2330
2330
; GCN-LABEL: v_fneg_minimumnum_multi_use_minimumnum_f32_no_ieee:
2331
2331
; GCN: ; %bb.0:
2332
2332
; GCN-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
2333
- ; GCN-NEXT: v_mul_f32_e32 v1, 1.0, v1
2334
- ; GCN-NEXT: v_mul_f32_e32 v0, 1.0, v0
2335
- ; GCN-NEXT: v_max_f32_e64 v0, - v0, - v1
2333
+ ; GCN-NEXT: v_mul_f32_e32 v1, - 1.0, v1
2334
+ ; GCN-NEXT: v_mul_f32_e32 v0, - 1.0, v0
2335
+ ; GCN-NEXT: v_max_f32_e32 v0, v0, v1
2336
2336
; GCN-NEXT: v_mul_f32_e32 v1, -4.0, v0
2337
2337
; GCN-NEXT: s_setpc_b64 s[30:31]
2338
2338
%min = call float @llvm.minimumnum.f32 (float %a , float %b )
@@ -2513,9 +2513,9 @@ define { float, float } @v_fneg_maximumnum_multi_use_maximumnum_f32_ieee(float %
2513
2513
; GCN-LABEL: v_fneg_maximumnum_multi_use_maximumnum_f32_ieee:
2514
2514
; GCN: ; %bb.0:
2515
2515
; GCN-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
2516
- ; GCN-NEXT: v_mul_f32_e32 v1, 1.0, v1
2517
- ; GCN-NEXT: v_mul_f32_e32 v0, 1.0, v0
2518
- ; GCN-NEXT: v_min_f32_e64 v0, - v0, - v1
2516
+ ; GCN-NEXT: v_mul_f32_e32 v1, - 1.0, v1
2517
+ ; GCN-NEXT: v_mul_f32_e32 v0, - 1.0, v0
2518
+ ; GCN-NEXT: v_min_f32_e32 v0, v0, v1
2519
2519
; GCN-NEXT: v_mul_f32_e32 v1, -4.0, v0
2520
2520
; GCN-NEXT: s_setpc_b64 s[30:31]
2521
2521
%max = call float @llvm.maximumnum.f32 (float %a , float %b )
@@ -2530,9 +2530,9 @@ define <2 x float> @v_fneg_maximumnum_multi_use_maximumnum_f32_no_ieee(float %a,
2530
2530
; GCN-LABEL: v_fneg_maximumnum_multi_use_maximumnum_f32_no_ieee:
2531
2531
; GCN: ; %bb.0:
2532
2532
; GCN-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
2533
- ; GCN-NEXT: v_mul_f32_e32 v1, 1.0, v1
2534
- ; GCN-NEXT: v_mul_f32_e32 v0, 1.0, v0
2535
- ; GCN-NEXT: v_min_f32_e64 v0, - v0, - v1
2533
+ ; GCN-NEXT: v_mul_f32_e32 v1, - 1.0, v1
2534
+ ; GCN-NEXT: v_mul_f32_e32 v0, - 1.0, v0
2535
+ ; GCN-NEXT: v_min_f32_e32 v0, v0, v1
2536
2536
; GCN-NEXT: v_mul_f32_e32 v1, -4.0, v0
2537
2537
; GCN-NEXT: s_setpc_b64 s[30:31]
2538
2538
%max = call float @llvm.maximumnum.f32 (float %a , float %b )
0 commit comments