diff options
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/autodiff/select.slang | 4 | ||||
| -rw-r--r-- | tests/cross-compile/vector-comparison.slang | 2 | ||||
| -rw-r--r-- | tests/cross-compile/vector-comparison.slang.glsl | 7 |
3 files changed, 7 insertions, 6 deletions
diff --git a/tests/autodiff/select.slang b/tests/autodiff/select.slang index 261c170db..20abab977 100644 --- a/tests/autodiff/select.slang +++ b/tests/autodiff/select.slang @@ -10,7 +10,7 @@ typedef float.Differential dfloat; [BackwardDifferentiable] float f(float x, float y) { - return x > 0.5 ? x : y; + return x > 0.0 ? sqrt(x)*sqrt(x) : y; } [numthreads(1, 1, 1)] @@ -27,7 +27,7 @@ void computeMain(uint3 dispatchThreadID : SV_DispatchThreadID) } { - dpfloat dpa = dpfloat(0.3, 1.0); + dpfloat dpa = dpfloat(-0.3, 1.0); dpfloat dpb = dpfloat(0.3, 1.0); __bwd_diff(f)(dpa, dpb, 1.0); diff --git a/tests/cross-compile/vector-comparison.slang b/tests/cross-compile/vector-comparison.slang index d1fdcfd4a..f363eb40c 100644 --- a/tests/cross-compile/vector-comparison.slang +++ b/tests/cross-compile/vector-comparison.slang @@ -1,6 +1,6 @@ // vector-comparison.slang -//TEST:CROSS_COMPILE:-target spirv-assembly -entry main -stage fragment +//TEST:CROSS_COMPILE:-target spirv-assembly -entry main -stage fragment -Wno-use-of-non-short-circuiting-operator // This test ensures that we cross-compile vector comparison operators // correctly to GLSL diff --git a/tests/cross-compile/vector-comparison.slang.glsl b/tests/cross-compile/vector-comparison.slang.glsl index 2497055a0..3e6f7b9c2 100644 --- a/tests/cross-compile/vector-comparison.slang.glsl +++ b/tests/cross-compile/vector-comparison.slang.glsl @@ -1,8 +1,6 @@ -//TEST_IGNORE_FILE #version 450 layout(row_major) uniform; layout(row_major) buffer; - struct Param_0 { vec4 a_0; @@ -19,6 +17,9 @@ out vec4 _S2; void main() { - _S2 = mix(vec4(3.0), vec4(2.0), (equal(params_0._data.a_0,params_0._data.b_0))) + mix(vec4(3.0), vec4(2.0), (lessThan(params_0._data.a_0,params_0._data.b_0))) + mix(vec4(3.0), vec4(2.0), (greaterThan(params_0._data.a_0,params_0._data.b_0))) + mix(vec4(3.0), vec4(2.0), (lessThanEqual(params_0._data.a_0,params_0._data.b_0))) + mix(vec4(3.0), vec4(2.0), (greaterThanEqual(params_0._data.a_0,params_0._data.b_0))) + mix(vec4(3.0), vec4(2.0), (notEqual(params_0._data.a_0,params_0._data.b_0))); + + const vec4 _S3 = vec4(2.0); + const vec4 _S4 = vec4(3.0); + _S2 = mix(_S4, _S3, (equal(params_0._data.a_0,params_0._data.b_0))) + mix(_S4, _S3, (lessThan(params_0._data.a_0,params_0._data.b_0))) + mix(_S4, _S3, (greaterThan(params_0._data.a_0,params_0._data.b_0))) + mix(_S4, _S3, (lessThanEqual(params_0._data.a_0,params_0._data.b_0))) + mix(_S4, _S3, (greaterThanEqual(params_0._data.a_0,params_0._data.b_0))) + mix(_S4, _S3, (notEqual(params_0._data.a_0,params_0._data.b_0))); return; } |
