mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-12-16 00:17:03 +00:00
tint/hlsl+glsl: fix workgroupUniformLoad polyfills
The BuiltinPolyfill transform expects the DirectVariableAccess transform to run after it, but this regressed as part of https://dawn-review.googlesource.com/c/dawn/+/122203 Add unit test along with e2e 1926.wgsl test. Bug: tint:1926 Change-Id: I5107453ce152b12e6f2f36930846e1fffa775708 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/131020 Reviewed-by: James Price <jrprice@google.com> Commit-Queue: Antonio Maiorano <amaiorano@google.com> Kokoro: Kokoro <noreply+kokoro@google.com> Reviewed-by: Ben Clayton <bclayton@google.com>
This commit is contained in:
committed by
Dawn LUCI CQ
parent
e903396ff2
commit
fa00fe9d41
@@ -1,15 +1,16 @@
|
||||
uint tint_workgroupUniformLoad(inout uint p) {
|
||||
groupshared uint arg_0;
|
||||
|
||||
uint tint_workgroupUniformLoad_arg_0() {
|
||||
GroupMemoryBarrierWithGroupSync();
|
||||
const uint result = p;
|
||||
const uint result = arg_0;
|
||||
GroupMemoryBarrierWithGroupSync();
|
||||
return result;
|
||||
}
|
||||
|
||||
groupshared uint arg_0;
|
||||
RWByteAddressBuffer prevent_dce : register(u0, space2);
|
||||
|
||||
void workgroupUniformLoad_37307c() {
|
||||
uint res = tint_workgroupUniformLoad(arg_0);
|
||||
uint res = tint_workgroupUniformLoad_arg_0();
|
||||
prevent_dce.Store(0u, asuint(res));
|
||||
}
|
||||
|
||||
|
||||
@@ -1,15 +1,16 @@
|
||||
uint tint_workgroupUniformLoad(inout uint p) {
|
||||
groupshared uint arg_0;
|
||||
|
||||
uint tint_workgroupUniformLoad_arg_0() {
|
||||
GroupMemoryBarrierWithGroupSync();
|
||||
const uint result = p;
|
||||
const uint result = arg_0;
|
||||
GroupMemoryBarrierWithGroupSync();
|
||||
return result;
|
||||
}
|
||||
|
||||
groupshared uint arg_0;
|
||||
RWByteAddressBuffer prevent_dce : register(u0, space2);
|
||||
|
||||
void workgroupUniformLoad_37307c() {
|
||||
uint res = tint_workgroupUniformLoad(arg_0);
|
||||
uint res = tint_workgroupUniformLoad_arg_0();
|
||||
prevent_dce.Store(0u, asuint(res));
|
||||
}
|
||||
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
#version 310 es
|
||||
|
||||
uint tint_workgroupUniformLoad(inout uint p) {
|
||||
shared uint arg_0;
|
||||
uint tint_workgroupUniformLoad_arg_0() {
|
||||
barrier();
|
||||
uint result = p;
|
||||
uint result = arg_0;
|
||||
barrier();
|
||||
return result;
|
||||
}
|
||||
|
||||
shared uint arg_0;
|
||||
layout(binding = 0, std430) buffer prevent_dce_block_ssbo {
|
||||
uint inner;
|
||||
} prevent_dce;
|
||||
|
||||
void workgroupUniformLoad_37307c() {
|
||||
uint res = tint_workgroupUniformLoad(arg_0);
|
||||
uint res = tint_workgroupUniformLoad_arg_0();
|
||||
prevent_dce.inner = res;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,15 +1,16 @@
|
||||
float tint_workgroupUniformLoad(inout float p) {
|
||||
groupshared float arg_0;
|
||||
|
||||
float tint_workgroupUniformLoad_arg_0() {
|
||||
GroupMemoryBarrierWithGroupSync();
|
||||
const float result = p;
|
||||
const float result = arg_0;
|
||||
GroupMemoryBarrierWithGroupSync();
|
||||
return result;
|
||||
}
|
||||
|
||||
groupshared float arg_0;
|
||||
RWByteAddressBuffer prevent_dce : register(u0, space2);
|
||||
|
||||
void workgroupUniformLoad_7a857c() {
|
||||
float res = tint_workgroupUniformLoad(arg_0);
|
||||
float res = tint_workgroupUniformLoad_arg_0();
|
||||
prevent_dce.Store(0u, asuint(res));
|
||||
}
|
||||
|
||||
|
||||
@@ -1,15 +1,16 @@
|
||||
float tint_workgroupUniformLoad(inout float p) {
|
||||
groupshared float arg_0;
|
||||
|
||||
float tint_workgroupUniformLoad_arg_0() {
|
||||
GroupMemoryBarrierWithGroupSync();
|
||||
const float result = p;
|
||||
const float result = arg_0;
|
||||
GroupMemoryBarrierWithGroupSync();
|
||||
return result;
|
||||
}
|
||||
|
||||
groupshared float arg_0;
|
||||
RWByteAddressBuffer prevent_dce : register(u0, space2);
|
||||
|
||||
void workgroupUniformLoad_7a857c() {
|
||||
float res = tint_workgroupUniformLoad(arg_0);
|
||||
float res = tint_workgroupUniformLoad_arg_0();
|
||||
prevent_dce.Store(0u, asuint(res));
|
||||
}
|
||||
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
#version 310 es
|
||||
|
||||
float tint_workgroupUniformLoad(inout float p) {
|
||||
shared float arg_0;
|
||||
float tint_workgroupUniformLoad_arg_0() {
|
||||
barrier();
|
||||
float result = p;
|
||||
float result = arg_0;
|
||||
barrier();
|
||||
return result;
|
||||
}
|
||||
|
||||
shared float arg_0;
|
||||
layout(binding = 0, std430) buffer prevent_dce_block_ssbo {
|
||||
float inner;
|
||||
} prevent_dce;
|
||||
|
||||
void workgroupUniformLoad_7a857c() {
|
||||
float res = tint_workgroupUniformLoad(arg_0);
|
||||
float res = tint_workgroupUniformLoad_arg_0();
|
||||
prevent_dce.inner = res;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,15 +1,16 @@
|
||||
int tint_workgroupUniformLoad(inout int p) {
|
||||
groupshared int arg_0;
|
||||
|
||||
int tint_workgroupUniformLoad_arg_0() {
|
||||
GroupMemoryBarrierWithGroupSync();
|
||||
const int result = p;
|
||||
const int result = arg_0;
|
||||
GroupMemoryBarrierWithGroupSync();
|
||||
return result;
|
||||
}
|
||||
|
||||
groupshared int arg_0;
|
||||
RWByteAddressBuffer prevent_dce : register(u0, space2);
|
||||
|
||||
void workgroupUniformLoad_9d33de() {
|
||||
int res = tint_workgroupUniformLoad(arg_0);
|
||||
int res = tint_workgroupUniformLoad_arg_0();
|
||||
prevent_dce.Store(0u, asuint(res));
|
||||
}
|
||||
|
||||
|
||||
@@ -1,15 +1,16 @@
|
||||
int tint_workgroupUniformLoad(inout int p) {
|
||||
groupshared int arg_0;
|
||||
|
||||
int tint_workgroupUniformLoad_arg_0() {
|
||||
GroupMemoryBarrierWithGroupSync();
|
||||
const int result = p;
|
||||
const int result = arg_0;
|
||||
GroupMemoryBarrierWithGroupSync();
|
||||
return result;
|
||||
}
|
||||
|
||||
groupshared int arg_0;
|
||||
RWByteAddressBuffer prevent_dce : register(u0, space2);
|
||||
|
||||
void workgroupUniformLoad_9d33de() {
|
||||
int res = tint_workgroupUniformLoad(arg_0);
|
||||
int res = tint_workgroupUniformLoad_arg_0();
|
||||
prevent_dce.Store(0u, asuint(res));
|
||||
}
|
||||
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
#version 310 es
|
||||
|
||||
int tint_workgroupUniformLoad(inout int p) {
|
||||
shared int arg_0;
|
||||
int tint_workgroupUniformLoad_arg_0() {
|
||||
barrier();
|
||||
int result = p;
|
||||
int result = arg_0;
|
||||
barrier();
|
||||
return result;
|
||||
}
|
||||
|
||||
shared int arg_0;
|
||||
layout(binding = 0, std430) buffer prevent_dce_block_ssbo {
|
||||
int inner;
|
||||
} prevent_dce;
|
||||
|
||||
void workgroupUniformLoad_9d33de() {
|
||||
int res = tint_workgroupUniformLoad(arg_0);
|
||||
int res = tint_workgroupUniformLoad_arg_0();
|
||||
prevent_dce.inner = res;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,15 +1,16 @@
|
||||
float16_t tint_workgroupUniformLoad(inout float16_t p) {
|
||||
groupshared float16_t arg_0;
|
||||
|
||||
float16_t tint_workgroupUniformLoad_arg_0() {
|
||||
GroupMemoryBarrierWithGroupSync();
|
||||
const float16_t result = p;
|
||||
const float16_t result = arg_0;
|
||||
GroupMemoryBarrierWithGroupSync();
|
||||
return result;
|
||||
}
|
||||
|
||||
groupshared float16_t arg_0;
|
||||
RWByteAddressBuffer prevent_dce : register(u0, space2);
|
||||
|
||||
void workgroupUniformLoad_e07d08() {
|
||||
float16_t res = tint_workgroupUniformLoad(arg_0);
|
||||
float16_t res = tint_workgroupUniformLoad_arg_0();
|
||||
prevent_dce.Store<float16_t>(0u, res);
|
||||
}
|
||||
|
||||
|
||||
@@ -1,20 +1,20 @@
|
||||
#version 310 es
|
||||
#extension GL_AMD_gpu_shader_half_float : require
|
||||
|
||||
float16_t tint_workgroupUniformLoad(inout float16_t p) {
|
||||
shared float16_t arg_0;
|
||||
float16_t tint_workgroupUniformLoad_arg_0() {
|
||||
barrier();
|
||||
float16_t result = p;
|
||||
float16_t result = arg_0;
|
||||
barrier();
|
||||
return result;
|
||||
}
|
||||
|
||||
shared float16_t arg_0;
|
||||
layout(binding = 0, std430) buffer prevent_dce_block_ssbo {
|
||||
float16_t inner;
|
||||
} prevent_dce;
|
||||
|
||||
void workgroupUniformLoad_e07d08() {
|
||||
float16_t res = tint_workgroupUniformLoad(arg_0);
|
||||
float16_t res = tint_workgroupUniformLoad_arg_0();
|
||||
prevent_dce.inner = res;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user