summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorjsmall-nvidia <jsmall@nvidia.com>2019-02-14 08:27:46 -0500
committerGitHub <noreply@github.com>2019-02-14 08:27:46 -0500
commitb059de80b7619e4406dbddf26fd7f2fb7ce6a965 (patch)
treeaee9bf78c48d57a86a6689d347e08561c78fdaaf /tests
parent4133192e7d390fb14465fc1ce45a1337b33927b7 (diff)
* Add cross compile test (#849)
* Add intrinsic for StructuredBuffer.Load
Diffstat (limited to 'tests')
-rw-r--r--tests/bugs/vk-structured-buffer-load.hlsl3
-rw-r--r--tests/bugs/vk-structured-buffer-load.hlsl.glsl35
2 files changed, 37 insertions, 1 deletions
diff --git a/tests/bugs/vk-structured-buffer-load.hlsl b/tests/bugs/vk-structured-buffer-load.hlsl
index 0acc2e905..e8b1eae86 100644
--- a/tests/bugs/vk-structured-buffer-load.hlsl
+++ b/tests/bugs/vk-structured-buffer-load.hlsl
@@ -1,4 +1,4 @@
-//TEST_DISABLED:SIMPLE: -profile lib_6_3 -entry HitMain -stage closesthit -target spirv -o vk-structured-buffer-load.spv -D HLSL
+//TEST:CROSS_COMPILE: -profile lib_6_3 -entry HitMain -stage closesthit -target spirv-assembly
struct ParameterBlockTest
{
SamplerState sam;
@@ -19,5 +19,6 @@ void HitMain(inout RayHitInfoPacked RayData, BuiltInTriangleIntersectionAttribut
RayData.PackedHitInfoA.x = HitT;
uint offs = 0;
float offsfloat = gParamBlock.sbuf.Load(offs);
+
RayData.PackedHitInfoA.y = offsfloat;
}
diff --git a/tests/bugs/vk-structured-buffer-load.hlsl.glsl b/tests/bugs/vk-structured-buffer-load.hlsl.glsl
new file mode 100644
index 000000000..28703cac4
--- /dev/null
+++ b/tests/bugs/vk-structured-buffer-load.hlsl.glsl
@@ -0,0 +1,35 @@
+// vk-structured-buffer-load.hlsl.glsl
+#version 460
+layout(row_major) uniform;
+layout(row_major) buffer;
+#extension GL_NV_ray_tracing : require
+
+layout(std430, binding = 2) readonly buffer _S1 {
+ float _data[];
+} gParamBlock_sbuf_0;
+
+struct RayHitInfoPacked_0
+{
+ vec4 PackedHitInfoA_0;
+};
+
+rayPayloadInNV RayHitInfoPacked_0 _S2;
+
+struct BuiltInTriangleIntersectionAttributes_0
+{
+ vec2 barycentrics_0;
+};
+
+hitAttributeNV BuiltInTriangleIntersectionAttributes_0 _S3;
+
+void main()
+{
+ float HitT_0 = (gl_HitTNV);
+ _S2.PackedHitInfoA_0.x = HitT_0;
+
+ float offsfloat_0 = ((gParamBlock_sbuf_0)._data[(int(uint(0)))]);
+
+ _S2.PackedHitInfoA_0.y = offsfloat_0;
+
+ return;
+} \ No newline at end of file