diff options
| author | Igor Wodiany <igor.wodiany@imgtec.com> | 2025-10-27 09:27:49 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-10-27 09:27:49 +0000 |
| commit | bcfd6da5dbb3c6bb0c598de7f9bbbae4c42f6ba9 (patch) | |
| tree | e7362db5a5077165ddd1c4b08febc0791220b33f /llvm/lib/ExecutionEngine/Orc/TargetProcess/LibraryScanner.cpp | |
| parent | cf6db6303bb50543522b01a9be55a2e265da4b84 (diff) | |
| download | llvm-bcfd6da5dbb3c6bb0c598de7f9bbbae4c42f6ba9.zip llvm-bcfd6da5dbb3c6bb0c598de7f9bbbae4c42f6ba9.tar.gz llvm-bcfd6da5dbb3c6bb0c598de7f9bbbae4c42f6ba9.tar.bz2 | |
[mlir][spirv] Enable validation of global vars tests (#164974)
Currently the target test will fail with:
```
error: line 12: Initializer type must match the data type
%var2 = OpVariable %_ptr_Uniform_float Uniform %var1
```
When passed:
```mlir
spirv.module Logical GLSL450 requires #spirv.vce<v1.0, [Shader], []> {
spirv.GlobalVariable @var1 : !spirv.ptr<f32, Uniform>
spirv.GlobalVariable @var2 initializer(@var1) bind(1, 0) : !spirv.ptr<f32, Uniform>
}
```
The problem is that we try to initialize `f32` pointer with `f32`
pointer, but the validator fails because it expects `var1` to be `f32`,
not a pointer to `f32`. `spirv.GlobalVariable` only allows pointer type,
so in the current design we cannot initialize one `spirv.GlobalVariable`
with another.
So, for now we disallow initialization of one global variable with
another. In the future we may want to re-work global variables if we
want to support that.
Diffstat (limited to 'llvm/lib/ExecutionEngine/Orc/TargetProcess/LibraryScanner.cpp')
0 files changed, 0 insertions, 0 deletions
