You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
declare <16 x float> @llvm.fmuladd.v16f32(<16 x float>, <16 x float>, <16 x float>)
21
24
@@ -97,6 +100,32 @@ define void @smax(i32 %a, i32 %b, <16 x i32> %va, <16 x i32> %vb) {
97
100
retvoid
98
101
}
99
102
103
+
definevoid@fcopysign(float%a, float%b, <16 x float> %va, <16 x float> %vb) {
104
+
; THRU-LABEL: 'fcopysign'
105
+
; THRU-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %s = call float @llvm.copysign.f32(float %a, float %b)
106
+
; THRU-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %v = call <16 x float> @llvm.copysign.v16f32(<16 x float> %va, <16 x float> %vb)
107
+
; THRU-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret void
108
+
;
109
+
; LATE-LABEL: 'fcopysign'
110
+
; LATE-NEXT: Cost Model: Found an estimated cost of 3 for instruction: %s = call float @llvm.copysign.f32(float %a, float %b)
111
+
; LATE-NEXT: Cost Model: Found an estimated cost of 3 for instruction: %v = call <16 x float> @llvm.copysign.v16f32(<16 x float> %va, <16 x float> %vb)
112
+
; LATE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: ret void
113
+
;
114
+
; SIZE-LABEL: 'fcopysign'
115
+
; SIZE-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %s = call float @llvm.copysign.f32(float %a, float %b)
116
+
; SIZE-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %v = call <16 x float> @llvm.copysign.v16f32(<16 x float> %va, <16 x float> %vb)
117
+
; SIZE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: ret void
118
+
;
119
+
; SIZE_LATE-LABEL: 'fcopysign'
120
+
; SIZE_LATE-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %s = call float @llvm.copysign.f32(float %a, float %b)
121
+
; SIZE_LATE-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %v = call <16 x float> @llvm.copysign.v16f32(<16 x float> %va, <16 x float> %vb)
122
+
; SIZE_LATE-NEXT: Cost Model: Found an estimated cost of 1 for instruction: ret void
0 commit comments