Skip to content

Commit

Permalink
Smoothstep validation changes : No compiler error for anything except…
Browse files Browse the repository at this point in the history
… low == high (for const/override) (#4082)

* Update smoothstep validation to only fail on low/high equal

* Change to triple equals

---------

Co-authored-by: Peter McNeeley <[email protected]>
  • Loading branch information
petermcneeleychromium and Peter McNeeley authored Dec 9, 2024
1 parent 9223c26 commit 3ed497b
Showing 1 changed file with 5 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,8 @@ Validates that constant evaluation and override evaluation of ${builtin}() rejec
.fn(t => {
const type = kValuesTypes[t.params.type];

// We expect to fail if low >= high.
const expectedResult = t.params.value1 < t.params.value2;
// We expect to fail if low == high.
const expectedResult = t.params.value1 !== t.params.value2;

validateConstOrOverrideBuiltinEval(
t,
Expand All @@ -66,7 +66,7 @@ Validates that constant evaluation and override evaluation of ${builtin}() rejec
const kStages = [...kConstantAndOverrideStages, 'runtime'] as const;

g.test('partial_eval_errors')
.desc('Validates that low < high')
.desc('Validates that low != high')
.params(u =>
u
.combine('lowStage', kStages)
Expand Down Expand Up @@ -127,7 +127,7 @@ fn foo() {
let tmp = smoothstep(${lowArg}, ${highArg}, x);
}`;

const error = t.params.low >= t.params.high;
const error = t.params.low === t.params.high;
const shader_error =
error && t.params.lowStage === 'constant' && t.params.highStage === 'constant';
const pipeline_error =
Expand Down Expand Up @@ -349,7 +349,7 @@ g.test('early_eval_errors')
validateConstOrOverrideBuiltinEval(
t,
builtin,
/* expectedResult */ t.params.low < t.params.high,
/* expectedResult */ t.params.low !== t.params.high,
[f32(t.params.low), f32(t.params.high), f32(0)],
t.params.stage
);
Expand Down

0 comments on commit 3ed497b

Please sign in to comment.