diff --git a/renderdoc/driver/shaders/spirv/renderdoc_spirv.vcxproj b/renderdoc/driver/shaders/spirv/renderdoc_spirv.vcxproj
index 1cf72159d..ffab2b511 100644
--- a/renderdoc/driver/shaders/spirv/renderdoc_spirv.vcxproj
+++ b/renderdoc/driver/shaders/spirv/renderdoc_spirv.vcxproj
@@ -161,11 +161,36 @@
precompiled.h
precompiled.h
-
-
-
-
-
+
+ Level4
+ Use
+ precompiled.h
+ precompiled.h
+
+
+ Level4
+ Use
+ precompiled.h
+ precompiled.h
+
+
+ Level4
+ Use
+ precompiled.h
+ precompiled.h
+
+
+ Level4
+ Use
+ precompiled.h
+ precompiled.h
+
+
+ Level4
+ Use
+ precompiled.h
+ precompiled.h
+
diff --git a/renderdoc/driver/shaders/spirv/spirv_editor.cpp b/renderdoc/driver/shaders/spirv/spirv_editor.cpp
index 25047e246..ebca98676 100644
--- a/renderdoc/driver/shaders/spirv/spirv_editor.cpp
+++ b/renderdoc/driver/shaders/spirv/spirv_editor.cpp
@@ -372,7 +372,8 @@ void Editor::RegisterOp(Iter it)
}
else if(opdata.op == Op::TypeSampler)
{
- samplerTypeToId[Sampler()] = opdata.result;
+ Sampler s;
+ samplerTypeToId[s] = opdata.result;
}
else if(opdata.op == Op::TypeSampledImage)
{
diff --git a/renderdoc/driver/shaders/spirv/spirv_reflect.cpp b/renderdoc/driver/shaders/spirv/spirv_reflect.cpp
index f69d7c299..426243390 100644
--- a/renderdoc/driver/shaders/spirv/spirv_reflect.cpp
+++ b/renderdoc/driver/shaders/spirv/spirv_reflect.cpp
@@ -1911,9 +1911,9 @@ void Reflector::MakeConstantBlockVariable(ShaderConstant &outConst, const DataTy
outConst.type.descriptor.arrayByteStride = decorations[curType->id].arrayStride;
if(varDecorations.matrixStride != ~0U)
- outConst.type.descriptor.matrixByteStride = varDecorations.matrixStride;
+ outConst.type.descriptor.matrixByteStride = varDecorations.matrixStride & 0xff;
else if(decorations[curType->id].matrixStride != ~0U)
- outConst.type.descriptor.matrixByteStride = decorations[curType->id].matrixStride;
+ outConst.type.descriptor.matrixByteStride = decorations[curType->id].matrixStride & 0xff;
curType = &dataTypes[curType->InnerType()];
}
@@ -1926,7 +1926,7 @@ void Reflector::MakeConstantBlockVariable(ShaderConstant &outConst, const DataTy
(curType->type == DataType::VectorType || varDecorations.flags & Decorations::RowMajor);
if(varDecorations.matrixStride != ~0U)
- outConst.type.descriptor.matrixByteStride = varDecorations.matrixStride;
+ outConst.type.descriptor.matrixByteStride = varDecorations.matrixStride & 0xff;
if(curType->type == DataType::MatrixType)
{