Issue 126570
Summary [HLSL] `select` not resolving correctly for complex cases
Labels HLSL
Assignees
Reporter llvm-beanz
    HLSL currently allows much more flexible overloading of the `select` function. The following is an example of a case that DXC supports which Clang does not.

```hlsl
typedef uint32_t4 uint32_t8[2];

export void filter(inout uint32_t4 output, uint32_t predicate, uint32_t value) {
  output = select(uint4(0,1,2,3) == (uint4)predicate, value, output);
}
```
[Compiler Explorer](https://godbolt.org/z/v9sqqzG5r)
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to