26
26
; CHECK-HLSL-DAG: %[[#const_i32_0:]] = OpConstant %[[#int_32]] 0
27
27
; CHECK-HLSL-DAG: %[[#const_i16_0:]] = OpConstant %[[#int_16]] 0
28
28
; CHECK-HLSL-DAG: %[[#const_f64_0:]] = OpConstant %[[#float_64]] 0
29
- ; CHECK-HLSL-DAG: %[[#const_f32_0:]] = OpConstant %[[#float_32: ]] 0
30
- ; CHECK-HLSL-DAG: %[[#const_f16_0:]] = OpConstant %[[#float_16: ]] 0
31
- ; CHECK-HLSL-DAG: %[[#vec4_const_zeros_i16:]] = OpConstantComposite %[[#vec4_16: ]] %[[#const_i16_0: ]] %[[#const_i16_0: ]] %[[#const_i16_0: ]] %[[#const_i16_0: ]]
32
- ; CHECK-HLSL-DAG: %[[#vec4_const_zeros_i32:]] = OpConstantComposite %[[#vec4_32: ]] %[[#const_i32_0: ]] %[[#const_i32_0: ]] %[[#const_i32_0: ]] %[[#const_i32_0: ]]
33
- ; CHECK-HLSL-DAG: %[[#vec4_const_zeros_i64:]] = OpConstantComposite %[[#vec4_64: ]] %[[#const_i64_0: ]] %[[#const_i64_0: ]] %[[#const_i64_0: ]] %[[#const_i64_0: ]]
34
- ; CHECK-HLSL-DAG: %[[#vec4_const_zeros_f16:]] = OpConstantComposite %[[#vec4_float_16: ]] %[[#const_f16_0: ]] %[[#const_f16_0: ]] %[[#const_f16_0: ]] %[[#const_f16_0: ]]
35
- ; CHECK-HLSL-DAG: %[[#vec4_const_zeros_f32:]] = OpConstantComposite %[[#vec4_float_32: ]] %[[#const_f32_0: ]] %[[#const_f32_0: ]] %[[#const_f32_0: ]] %[[#const_f32_0: ]]
36
- ; CHECK-HLSL-DAG: %[[#vec4_const_zeros_f64:]] = OpConstantComposite %[[#vec4_float_64: ]] %[[#const_f64_0: ]] %[[#const_f64_0: ]] %[[#const_f64_0: ]] %[[#const_f64_0: ]]
29
+ ; CHECK-HLSL-DAG: %[[#const_f32_0:]] = OpConstant %[[#float_32]] 0
30
+ ; CHECK-HLSL-DAG: %[[#const_f16_0:]] = OpConstant %[[#float_16]] 0
31
+ ; CHECK-HLSL-DAG: %[[#vec4_const_zeros_i16:]] = OpConstantComposite %[[#vec4_16]] %[[#const_i16_0]] %[[#const_i16_0]] %[[#const_i16_0]] %[[#const_i16_0]]
32
+ ; CHECK-HLSL-DAG: %[[#vec4_const_zeros_i32:]] = OpConstantComposite %[[#vec4_32]] %[[#const_i32_0]] %[[#const_i32_0]] %[[#const_i32_0]] %[[#const_i32_0]]
33
+ ; CHECK-HLSL-DAG: %[[#vec4_const_zeros_i64:]] = OpConstantComposite %[[#vec4_64]] %[[#const_i64_0]] %[[#const_i64_0]] %[[#const_i64_0]] %[[#const_i64_0]]
34
+ ; CHECK-HLSL-DAG: %[[#vec4_const_zeros_f16:]] = OpConstantComposite %[[#vec4_float_16]] %[[#const_f16_0]] %[[#const_f16_0]] %[[#const_f16_0]] %[[#const_f16_0]]
35
+ ; CHECK-HLSL-DAG: %[[#vec4_const_zeros_f32:]] = OpConstantComposite %[[#vec4_float_32]] %[[#const_f32_0]] %[[#const_f32_0]] %[[#const_f32_0]] %[[#const_f32_0]]
36
+ ; CHECK-HLSL-DAG: %[[#vec4_const_zeros_f64:]] = OpConstantComposite %[[#vec4_float_64]] %[[#const_f64_0]] %[[#const_f64_0]] %[[#const_f64_0]] %[[#const_f64_0]]
37
37
38
38
; CHECK-OCL-DAG: %[[#const_i64_0:]] = OpConstantNull %[[#int_64]]
39
39
; CHECK-OCL-DAG: %[[#const_i32_0:]] = OpConstantNull %[[#int_32]]
40
40
; CHECK-OCL-DAG: %[[#const_i16_0:]] = OpConstantNull %[[#int_16]]
41
41
; CHECK-OCL-DAG: %[[#const_f64_0:]] = OpConstantNull %[[#float_64]]
42
- ; CHECK-OCL-DAG: %[[#const_f32_0:]] = OpConstantNull %[[#float_32: ]]
43
- ; CHECK-OCL-DAG: %[[#const_f16_0:]] = OpConstantNull %[[#float_16: ]]
44
- ; CHECK-OCL-DAG: %[[#vec4_const_zeros_i16:]] = OpConstantNull %[[#vec4_16: ]]
45
- ; CHECK-OCL-DAG: %[[#vec4_const_zeros_i32:]] = OpConstantNull %[[#vec4_32: ]]
46
- ; CHECK-OCL-DAG: %[[#vec4_const_zeros_i64:]] = OpConstantNull %[[#vec4_64: ]]
47
- ; CHECK-OCL-DAG: %[[#vec4_const_zeros_f16:]] = OpConstantNull %[[#vec4_float_16: ]]
48
- ; CHECK-OCL-DAG: %[[#vec4_const_zeros_f32:]] = OpConstantNull %[[#vec4_float_32: ]]
49
- ; CHECK-OCL-DAG: %[[#vec4_const_zeros_f64:]] = OpConstantNull %[[#vec4_float_64: ]]
42
+ ; CHECK-OCL-DAG: %[[#const_f32_0:]] = OpConstantNull %[[#float_32]]
43
+ ; CHECK-OCL-DAG: %[[#const_f16_0:]] = OpConstantNull %[[#float_16]]
44
+ ; CHECK-OCL-DAG: %[[#vec4_const_zeros_i16:]] = OpConstantNull %[[#vec4_16]]
45
+ ; CHECK-OCL-DAG: %[[#vec4_const_zeros_i32:]] = OpConstantNull %[[#vec4_32]]
46
+ ; CHECK-OCL-DAG: %[[#vec4_const_zeros_i64:]] = OpConstantNull %[[#vec4_64]]
47
+ ; CHECK-OCL-DAG: %[[#vec4_const_zeros_f16:]] = OpConstantNull %[[#vec4_float_16]]
48
+ ; CHECK-OCL-DAG: %[[#vec4_const_zeros_f32:]] = OpConstantNull %[[#vec4_float_32]]
49
+ ; CHECK-OCL-DAG: %[[#vec4_const_zeros_f64:]] = OpConstantNull %[[#vec4_float_64]]
50
50
51
51
define noundef i1 @all_int64_t (i64 noundef %p0 ) {
52
52
entry:
53
53
; CHECK: %[[#arg0:]] = OpFunctionParameter %[[#]]
54
- ; CHECK: %[[#]] = OpINotEqual %[[#bool: ]] %[[#arg0: ]] %[[#const_i64_0: ]]
54
+ ; CHECK: %[[#]] = OpINotEqual %[[#bool]] %[[#arg0]] %[[#const_i64_0]]
55
55
%hlsl.all = call i1 @llvm.spv.all.i64 (i64 %p0 )
56
56
ret i1 %hlsl.all
57
57
}
60
60
define noundef i1 @all_int (i32 noundef %p0 ) {
61
61
entry:
62
62
; CHECK: %[[#arg0:]] = OpFunctionParameter %[[#]]
63
- ; CHECK: %[[#]] = OpINotEqual %[[#bool: ]] %[[#arg0: ]] %[[#const_i32_0: ]]
63
+ ; CHECK: %[[#]] = OpINotEqual %[[#bool]] %[[#arg0]] %[[#const_i32_0]]
64
64
%hlsl.all = call i1 @llvm.spv.all.i32 (i32 %p0 )
65
65
ret i1 %hlsl.all
66
66
}
@@ -69,15 +69,15 @@ entry:
69
69
define noundef i1 @all_int16_t (i16 noundef %p0 ) {
70
70
entry:
71
71
; CHECK: %[[#arg0:]] = OpFunctionParameter %[[#]]
72
- ; CHECK: %[[#]] = OpINotEqual %[[#bool: ]] %[[#arg0: ]] %[[#const_i16_0: ]]
72
+ ; CHECK: %[[#]] = OpINotEqual %[[#bool]] %[[#arg0]] %[[#const_i16_0]]
73
73
%hlsl.all = call i1 @llvm.spv.all.i16 (i16 %p0 )
74
74
ret i1 %hlsl.all
75
75
}
76
76
77
77
define noundef i1 @all_double (double noundef %p0 ) {
78
78
entry:
79
79
; CHECK: %[[#arg0:]] = OpFunctionParameter %[[#]]
80
- ; CHECK: %[[#]] = OpFOrdNotEqual %[[#bool: ]] %[[#arg0: ]] %[[#const_f64_0: ]]
80
+ ; CHECK: %[[#]] = OpFOrdNotEqual %[[#bool]] %[[#arg0]] %[[#const_f64_0]]
81
81
%hlsl.all = call i1 @llvm.spv.all.f64 (double %p0 )
82
82
ret i1 %hlsl.all
83
83
}
86
86
define noundef i1 @all_float (float noundef %p0 ) {
87
87
entry:
88
88
; CHECK: %[[#arg0:]] = OpFunctionParameter %[[#]]
89
- ; CHECK: %[[#]] = OpFOrdNotEqual %[[#bool: ]] %[[#arg0: ]] %[[#const_f32_0: ]]
89
+ ; CHECK: %[[#]] = OpFOrdNotEqual %[[#bool]] %[[#arg0]] %[[#const_f32_0]]
90
90
%hlsl.all = call i1 @llvm.spv.all.f32 (float %p0 )
91
91
ret i1 %hlsl.all
92
92
}
@@ -95,78 +95,78 @@ entry:
95
95
define noundef i1 @all_half (half noundef %p0 ) {
96
96
entry:
97
97
; CHECK: %[[#arg0:]] = OpFunctionParameter %[[#]]
98
- ; CHECK: %[[#]] = OpFOrdNotEqual %[[#bool: ]] %[[#arg0: ]] %[[#const_f16_0: ]]
98
+ ; CHECK: %[[#]] = OpFOrdNotEqual %[[#bool]] %[[#arg0]] %[[#const_f16_0]]
99
99
%hlsl.all = call i1 @llvm.spv.all.f16 (half %p0 )
100
100
ret i1 %hlsl.all
101
101
}
102
102
103
103
104
104
define noundef i1 @all_bool4 (<4 x i1 > noundef %p0 ) {
105
105
entry:
106
- ; CHECK: %[[#arg0:]] = OpFunctionParameter %[[#]]
107
- ; CHECK: %[[#]] = OpAll %[[#vec4_bool: ]] %[[#arg0: ]]
106
+ ; CHECK: %[[#arg0:]] = OpFunctionParameter %[[#vec4_bool ]]
107
+ ; CHECK: %[[#]] = OpAll %[[#bool ]] %[[#arg0]]
108
108
%hlsl.all = call i1 @llvm.spv.all.v4i1 (<4 x i1 > %p0 )
109
109
ret i1 %hlsl.all
110
110
}
111
111
112
112
define noundef i1 @all_short4 (<4 x i16 > noundef %p0 ) {
113
113
entry:
114
114
; CHECK: %[[#arg0:]] = OpFunctionParameter %[[#]]
115
- ; CHECK: %[[#shortVecNotEq:]] = OpINotEqual %[[#vec4_bool: ]] %[[#arg0: ]] %[[#vec4_const_zeros_i16: ]]
116
- ; CHECK: %[[#]] = OpAll %[[#bool: ]] %[[#shortVecNotEq: ]]
115
+ ; CHECK: %[[#shortVecNotEq:]] = OpINotEqual %[[#vec4_bool]] %[[#arg0]] %[[#vec4_const_zeros_i16]]
116
+ ; CHECK: %[[#]] = OpAll %[[#bool]] %[[#shortVecNotEq]]
117
117
%hlsl.all = call i1 @llvm.spv.all.v4i16 (<4 x i16 > %p0 )
118
118
ret i1 %hlsl.all
119
119
}
120
120
121
121
define noundef i1 @all_int4 (<4 x i32 > noundef %p0 ) {
122
122
entry:
123
123
; CHECK: %[[#arg0:]] = OpFunctionParameter %[[#]]
124
- ; CHECK: %[[#i32VecNotEq:]] = OpINotEqual %[[#vec4_bool: ]] %[[#arg0: ]] %[[#vec4_const_zeros_i32: ]]
125
- ; CHECK: %[[#]] = OpAll %[[#bool: ]] %[[#i32VecNotEq: ]]
124
+ ; CHECK: %[[#i32VecNotEq:]] = OpINotEqual %[[#vec4_bool]] %[[#arg0]] %[[#vec4_const_zeros_i32]]
125
+ ; CHECK: %[[#]] = OpAll %[[#bool]] %[[#i32VecNotEq]]
126
126
%hlsl.all = call i1 @llvm.spv.all.v4i32 (<4 x i32 > %p0 )
127
127
ret i1 %hlsl.all
128
128
}
129
129
130
130
define noundef i1 @all_int64_t4 (<4 x i64 > noundef %p0 ) {
131
131
entry:
132
132
; CHECK: %[[#arg0:]] = OpFunctionParameter %[[#]]
133
- ; CHECK: %[[#i64VecNotEq:]] = OpINotEqual %[[#vec4_bool: ]] %[[#arg0: ]] %[[#vec4_const_zeros_i64: ]]
134
- ; CHECK: %[[#]] = OpAll %[[#bool: ]] %[[#i64VecNotEq]]
133
+ ; CHECK: %[[#i64VecNotEq:]] = OpINotEqual %[[#vec4_bool]] %[[#arg0]] %[[#vec4_const_zeros_i64]]
134
+ ; CHECK: %[[#]] = OpAll %[[#bool]] %[[#i64VecNotEq]]
135
135
%hlsl.all = call i1 @llvm.spv.all.v4i64 (<4 x i64 > %p0 )
136
136
ret i1 %hlsl.all
137
137
}
138
138
139
139
define noundef i1 @all_half4 (<4 x half > noundef %p0 ) {
140
140
entry:
141
141
; CHECK: %[[#arg0:]] = OpFunctionParameter %[[#]]
142
- ; CHECK: %[[#f16VecNotEq:]] = OpFOrdNotEqual %[[#vec4_bool: ]] %[[#arg0: ]] %[[#vec4_const_zeros_f16: ]]
143
- ; CHECK: %[[#]] = OpAll %[[#bool]] %[[#f16VecNotEq: ]]
142
+ ; CHECK: %[[#f16VecNotEq:]] = OpFOrdNotEqual %[[#vec4_bool]] %[[#arg0]] %[[#vec4_const_zeros_f16]]
143
+ ; CHECK: %[[#]] = OpAll %[[#bool]] %[[#f16VecNotEq]]
144
144
%hlsl.all = call i1 @llvm.spv.all.v4f16 (<4 x half > %p0 )
145
145
ret i1 %hlsl.all
146
146
}
147
147
148
148
define noundef i1 @all_float4 (<4 x float > noundef %p0 ) {
149
149
entry:
150
150
; CHECK: %[[#arg0:]] = OpFunctionParameter %[[#]]
151
- ; CHECK: %[[#f32VecNotEq:]] = OpFOrdNotEqual %[[#vec4_bool: ]] %[[#arg0: ]] %[[#vec4_const_zeros_f32: ]]
152
- ; CHECK: %[[#]] = OpAll %[[#bool: ]] %[[#f32VecNotEq: ]]
151
+ ; CHECK: %[[#f32VecNotEq:]] = OpFOrdNotEqual %[[#vec4_bool]] %[[#arg0]] %[[#vec4_const_zeros_f32]]
152
+ ; CHECK: %[[#]] = OpAll %[[#bool]] %[[#f32VecNotEq]]
153
153
%hlsl.all = call i1 @llvm.spv.all.v4f32 (<4 x float > %p0 )
154
154
ret i1 %hlsl.all
155
155
}
156
156
157
157
define noundef i1 @all_double4 (<4 x double > noundef %p0 ) {
158
158
entry:
159
159
; CHECK: %[[#arg0:]] = OpFunctionParameter %[[#]]
160
- ; CHECK: %[[#f64VecNotEq:]] = OpFOrdNotEqual %[[#vec4_bool: ]] %[[#arg0: ]] %[[#vec4_const_zeros_f64: ]]
161
- ; CHECK: %[[#]] = OpAll %[[#bool: ]] %[[#f64VecNotEq: ]]
160
+ ; CHECK: %[[#f64VecNotEq:]] = OpFOrdNotEqual %[[#vec4_bool]] %[[#arg0]] %[[#vec4_const_zeros_f64]]
161
+ ; CHECK: %[[#]] = OpAll %[[#bool]] %[[#f64VecNotEq]]
162
162
%hlsl.all = call i1 @llvm.spv.all.v4f64 (<4 x double > %p0 )
163
163
ret i1 %hlsl.all
164
164
}
165
165
166
166
define noundef i1 @all_bool (i1 noundef %a ) {
167
167
entry:
168
- ; CHECK: %[[#all_bool_arg:]] = OpFunctionParameter %[[#bool: ]]
169
- ; CHECK: OpReturnValue %[[#all_bool_arg: ]]
168
+ ; CHECK: %[[#all_bool_arg:]] = OpFunctionParameter %[[#bool]]
169
+ ; CHECK: OpReturnValue %[[#all_bool_arg]]
170
170
%hlsl.all = call i1 @llvm.spv.all.i1 (i1 %a )
171
171
ret i1 %hlsl.all
172
172
}
0 commit comments