15
15
var <private > xvipaiai : vec2 <i32 > = vec2 (42 , 43 );
16
16
var <private > xvupaiai : vec2 <u32 > = vec2 (44 , 45 );
17
17
var <private > xvfpaiai : vec2 <f32 > = vec2 (46 , 47 );
18
+ var <private > xvfpafaf : vec2 <f32 > = vec2 (48.0 , 49.0 );
19
+ var <private > xvfpaiaf : vec2 <f32 > = vec2 (48 , 49.0 );
18
20
19
21
var <private > xvupuai : vec2 <u32 > = vec2 (42u , 43 );
20
22
var <private > xvupaiu : vec2 <u32 > = vec2 (42 , 43u );
21
23
22
24
var <private > xvuuai : vec2 <u32 > = vec2 <u32 >(42u , 43 );
23
25
var <private > xvuaiu : vec2 <u32 > = vec2 <u32 >(42 , 43u );
24
26
27
+ var <private > xvip____ : vec2 <i32 > = vec2 ();
28
+ var <private > xvup____ : vec2 <u32 > = vec2 ();
29
+ var <private > xvfp____ : vec2 <f32 > = vec2 ();
30
+ var <private > xmfp____ : mat2x2f = mat2x2 (vec2 (), vec2 ());
31
+
25
32
var <private > xmfpaiaiaiai : mat2x2 <f32 > = mat2x2 (1 , 2 , 3 , 4 );
26
33
var <private > xmfpafaiaiai : mat2x2 <f32 > = mat2x2 (1.0 , 2 , 3 , 4 );
27
34
var <private > xmfpaiafaiai : mat2x2 <f32 > = mat2x2 (1 , 2.0 , 3 , 4 );
@@ -38,7 +45,8 @@ var<private> xvfs_af: vec2<f32> = vec2<f32>(1.0);
38
45
var <private > xafafaf : array <f32 , 2 > = array <f32 , 2 >(1.0 , 2.0 );
39
46
var <private > xafaiai : array <f32 , 2 > = array <f32 , 2 >(1 , 2 );
40
47
41
- var <private > xafpaiai : array <i32 , 2 > = array (1 , 2 );
48
+ var <private > xaipaiai : array <i32 , 2 > = array (1 , 2 );
49
+ var <private > xaupaiai : array <u32 , 2 > = array (1 , 2 );
42
50
var <private > xafpaiaf : array <f32 , 2 > = array (1 , 2.0 );
43
51
var <private > xafpafai : array <f32 , 2 > = array (1.0 , 2 );
44
52
var <private > xafpafaf : array <f32 , 2 > = array (1.0 , 2.0 );
@@ -47,6 +55,12 @@ var<private> xavipai: array<vec3<i32>, 1> = array(vec3(1));
47
55
var <private > xavfpai : array <vec3 <f32 >, 1 > = array (vec3 (1 ));
48
56
var <private > xavfpaf : array <vec3 <f32 >, 1 > = array (vec3 (1.0 ));
49
57
58
+ // Construction with splats
59
+ var <private > xvisai : vec2 <i32 > = vec2 (1 );
60
+ var <private > xvusai : vec2 <u32 > = vec2 (1 );
61
+ var <private > xvfsai : vec2 <f32 > = vec2 (1 );
62
+ var <private > xvfsaf : vec2 <f32 > = vec2 (1.0 );
63
+
50
64
var <private > ivispai = vec2 (1 );
51
65
var <private > ivfspaf = vec2 (1.0 );
52
66
var <private > ivis_ai = vec2 <i32 >(1 );
@@ -70,13 +84,20 @@ fn all_constant_arguments() {
70
84
var xvipaiai : vec2 <i32 > = vec2 (42 , 43 );
71
85
var xvupaiai : vec2 <u32 > = vec2 (44 , 45 );
72
86
var xvfpaiai : vec2 <f32 > = vec2 (46 , 47 );
87
+ var xvfpafaf : vec2 <f32 > = vec2 (48.0 , 49.0 );
88
+ var xvfpaiaf : vec2 <f32 > = vec2 (48 , 49.0 );
73
89
74
90
var xvupuai : vec2 <u32 > = vec2 (42u , 43 );
75
91
var xvupaiu : vec2 <u32 > = vec2 (42 , 43u );
76
92
77
93
var xvuuai : vec2 <u32 > = vec2 <u32 >(42u , 43 );
78
94
var xvuaiu : vec2 <u32 > = vec2 <u32 >(42 , 43u );
79
95
96
+ var xvip____ : vec2 <i32 > = vec2 ();
97
+ var xvup____ : vec2 <u32 > = vec2 ();
98
+ var xvfp____ : vec2 <f32 > = vec2 ();
99
+ var xmfp____ : mat2x2f = mat2x2 (vec2 (), vec2 ());
100
+
80
101
var xmfpaiaiaiai : mat2x2 <f32 > = mat2x2 (1 , 2 , 3 , 4 );
81
102
var xmfpafaiaiai : mat2x2 <f32 > = mat2x2 (1.0 , 2 , 3 , 4 );
82
103
var xmfpaiafaiai : mat2x2 <f32 > = mat2x2 (1 , 2.0 , 3 , 4 );
@@ -112,6 +133,12 @@ fn all_constant_arguments() {
112
133
var xavfpai : array <vec3 <f32 >, 1 > = array (vec3 (1 ));
113
134
var xavfpaf : array <vec3 <f32 >, 1 > = array (vec3 (1.0 ));
114
135
136
+ // Construction with splats
137
+ var xvisai : vec2 <i32 > = vec2 (1 );
138
+ var xvusai : vec2 <u32 > = vec2 (1 );
139
+ var xvfsai : vec2 <f32 > = vec2 (1 );
140
+ var xvfsaf : vec2 <f32 > = vec2 (1.0 );
141
+
115
142
var iaipaiai = array (1 , 2 );
116
143
var iafpaiaf = array (1 , 2.0 );
117
144
var iafpafai = array (1.0 , 2 );
@@ -121,13 +148,20 @@ fn all_constant_arguments() {
121
148
xvipaiai = vec2 (42 , 43 );
122
149
xvupaiai = vec2 (44 , 45 );
123
150
xvfpaiai = vec2 (46 , 47 );
151
+ xvfpafaf = vec2 (48.0 , 49.0 );
152
+ xvfpaiaf = vec2 (48 , 49.0 );
124
153
125
154
xvupuai = vec2 (42u , 43 );
126
155
xvupaiu = vec2 (42 , 43u );
127
156
128
157
xvuuai = vec2 <u32 >(42u , 43 );
129
158
xvuaiu = vec2 <u32 >(42 , 43u );
130
159
160
+ xvip____ = vec2 ();
161
+ xvup____ = vec2 ();
162
+ xvfp____ = vec2 ();
163
+ xmfp____ = mat2x2 (vec2 (), vec2 ());
164
+
131
165
xmfpaiaiaiai = mat2x2 (1 , 2 , 3 , 4 );
132
166
xmfpafaiaiai = mat2x2 (1.0 , 2 , 3 , 4 );
133
167
xmfpaiafaiai = mat2x2 (1 , 2.0 , 3 , 4 );
@@ -163,6 +197,12 @@ fn all_constant_arguments() {
163
197
xavfpai = array (vec3 (1 ));
164
198
xavfpaf = array (vec3 (1.0 ));
165
199
200
+ // Construction with splats
201
+ xvisai = vec2 (1 );
202
+ xvusai = vec2 (1 );
203
+ xvfsai = vec2 (1 );
204
+ xvfsaf = vec2 (1.0 );
205
+
166
206
iaipaiai = array (1 , 2 );
167
207
iafpaiaf = array (1 , 2.0 );
168
208
iafpafai = array (1.0 , 2 );
@@ -176,6 +216,8 @@ fn mixed_constant_and_runtime_arguments() {
176
216
177
217
var xvupuai : vec2 <u32 > = vec2 (u , 43 );
178
218
var xvupaiu : vec2 <u32 > = vec2 (42 , u );
219
+ var xvfpfai : vec2 <f32 > = vec2 (f , 47 ); // differs slightly from const version
220
+ var xvfpfaf : vec2 <f32 > = vec2 (f , 49.0 );
179
221
180
222
var xvuuai : vec2 <u32 > = vec2 <u32 >(u , 43 );
181
223
var xvuaiu : vec2 <u32 > = vec2 <u32 >(42 , u );
@@ -199,6 +241,10 @@ fn mixed_constant_and_runtime_arguments() {
199
241
var xaip_iai : array <i32 , 2 > = array (i , 2 );
200
242
var xaipai_i : array <i32 , 2 > = array (1 , i );
201
243
244
+ var xvisi : vec2 <i32 > = vec2 (i );
245
+ var xvusu : vec2 <u32 > = vec2 (u );
246
+ var xvfsf : vec2 <f32 > = vec2 (f );
247
+
202
248
// Assignments to all of the above.
203
249
xvupuai = vec2 (u , 43 );
204
250
xvupaiu = vec2 (42 , u );
@@ -224,4 +270,8 @@ fn mixed_constant_and_runtime_arguments() {
224
270
xafpai_f = array (1 , f );
225
271
xaip_iai = array (i , 2 );
226
272
xaipai_i = array (1 , i );
273
+
274
+ xvisi = vec2 (i );
275
+ xvusu = vec2 (u );
276
+ xvfsf = vec2 (f );
227
277
}
0 commit comments