mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-12-10 22:17:51 +00:00
Add support for binary arithmetic expressions with mixed scalar and vector operands
Bug: tint:376 Change-Id: I2994ff7394efa903050b470a850b41628d5b775c Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/52324 Commit-Queue: Antonio Maiorano <amaiorano@google.com> Reviewed-by: Ben Clayton <bclayton@google.com>
This commit is contained in:
committed by
Tint LUCI CQ
parent
d5f4ea22f0
commit
eaed2b6ce2
70
test/expressions/binary_expressions.wgsl
Normal file
70
test/expressions/binary_expressions.wgsl
Normal file
@@ -0,0 +1,70 @@
|
||||
fn vector_scalar_f32() {
|
||||
var v : vec3<f32>;
|
||||
var s : f32;
|
||||
var r : vec3<f32>;
|
||||
r = v + s;
|
||||
r = v - s;
|
||||
r = v * s;
|
||||
r = v / s;
|
||||
//r = v % s;
|
||||
}
|
||||
|
||||
fn vector_scalar_i32() {
|
||||
var v : vec3<i32>;
|
||||
var s : i32;
|
||||
var r : vec3<i32>;
|
||||
r = v + s;
|
||||
r = v - s;
|
||||
r = v * s;
|
||||
r = v / s;
|
||||
r = v % s;
|
||||
}
|
||||
|
||||
fn vector_scalar_u32() {
|
||||
var v : vec3<u32>;
|
||||
var s : u32;
|
||||
var r : vec3<u32>;
|
||||
r = v + s;
|
||||
r = v - s;
|
||||
r = v * s;
|
||||
r = v / s;
|
||||
r = v % s;
|
||||
}
|
||||
|
||||
fn scalar_vector_f32() {
|
||||
var v : vec3<f32>;
|
||||
var s : f32;
|
||||
var r : vec3<f32>;
|
||||
r = s + v;
|
||||
r = s - v;
|
||||
r = s * v;
|
||||
r = s / v;
|
||||
//r = s % v;
|
||||
}
|
||||
|
||||
fn scalar_vector_i32() {
|
||||
var v : vec3<i32>;
|
||||
var s : i32;
|
||||
var r : vec3<i32>;
|
||||
r = s + v;
|
||||
r = s - v;
|
||||
r = s * v;
|
||||
r = s / v;
|
||||
r = s % v;
|
||||
}
|
||||
|
||||
fn scalar_vector_u32() {
|
||||
var v : vec3<u32>;
|
||||
var s : u32;
|
||||
var r : vec3<u32>;
|
||||
r = s + v;
|
||||
r = s - v;
|
||||
r = s * v;
|
||||
r = s / v;
|
||||
r = s % v;
|
||||
}
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn main() -> [[location(0)]] vec4<f32> {
|
||||
return vec4<f32>(0.0,0.0,0.0,0.0);
|
||||
}
|
||||
Reference in New Issue
Block a user