dawn-cmake/test/expressions/binary_expressions.wgsl
Antonio Maiorano c91f8f2822 Implement addition and subtraction of float matrices
Bug: tint:316
Change-Id: I3a1082c41c47daacf0220d029cb2a5f118684959
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/52580
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
Commit-Queue: David Neto <dneto@google.com>
Reviewed-by: David Neto <dneto@google.com>
2021-05-31 15:53:20 +00:00

84 lines
1.4 KiB
WebGPU Shading Language

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;
}
fn matrix_matrix_f32() {
var m34 : mat3x4<f32>;
var m43 : mat4x3<f32>;
var m33 : mat3x3<f32>;
var m44 : mat4x4<f32>;
m34 = m34 + m34;
m34 = m34 - m34;
m33 = m43 * m34;
m44 = m34 * m43;
}
[[stage(fragment)]]
fn main() -> [[location(0)]] vec4<f32> {
return vec4<f32>(0.0,0.0,0.0,0.0);
}