alan-baker
alan-baker
``` source_filename = "a.cl" target datalayout = "e-p:32:32-i64:64-v16:16-v24:32-v32:32-v48:64-v96:128-v192:256-v256:256-v512:512-v1024:1024" target triple = "spir-unknown-unknown" %struct.a = type { i32, i32 } @__spirv_WorkgroupSize = local_unnamed_addr addrspace(7) global zeroinitializer ; Function Attrs: norecurse nounwind...
Kernel 1 succeeds now, but kernel 2 still fails.
This is a problem with replace pointer bitcasts. The load is ok, but the store requires an atomic xor to implement correctly.
@andreperezmaselco that sounds like a separate issue from this. You're welcome to take a look, but please file an issue for it.
Thanks for the bug report. Unfortunately, clspv can't handle this case due to restrictions on shaders. This particular case might be workable, but it quickly becomes intractable. That said, the...
Clspv support added compiler options to pipelines. I've plumbed it to the clspv compile function so it should be easy enough to pick up one level above that in shader_compiler.cc.
FYI you can't use runtime arrays in UBOs (which where you'd normally need STD140). Those arrays must be explicitly sized.
Amberscript additions: * add IMAGE command that takes image parameters, but creates a buffer ``` IMAGE (1D|2D|3D|Cube) [ARRAYED] [MULTISAMPLED] \ WIDTH [HEIGHT [DEPTH ]] [ARRAY_LAYERS ] \ ``` Names subject...
Should we clarify that inherited from is more similar to how Vulkan defines it in terms of opportunity to optimize?
For clarity, pointers can also alias variables. Consider: ``` var x : u32; fn foo(p : ptr) -> u32 { // uses both p and x. } fn main() {...