Fix a copy-pasto.
This commit is contained in:
parent
6f091e7c8f
commit
01c491648b
@ -0,0 +1,25 @@
|
|||||||
|
#include <metal_stdlib>
|
||||||
|
#include <simd/simd.h>
|
||||||
|
|
||||||
|
using namespace metal;
|
||||||
|
|
||||||
|
struct main0_out
|
||||||
|
{
|
||||||
|
float4 o1 [[user(locn1)]];
|
||||||
|
float4 gl_Position [[position]];
|
||||||
|
};
|
||||||
|
|
||||||
|
struct main0_in
|
||||||
|
{
|
||||||
|
float4 v0 [[attribute(0)]];
|
||||||
|
float4 v1 [[attribute(1)]];
|
||||||
|
};
|
||||||
|
|
||||||
|
vertex main0_out main0(main0_in in [[stage_in]])
|
||||||
|
{
|
||||||
|
main0_out out = {};
|
||||||
|
out.gl_Position = in.v0;
|
||||||
|
out.o1 = in.v1;
|
||||||
|
return out;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,25 @@
|
|||||||
|
#include <metal_stdlib>
|
||||||
|
#include <simd/simd.h>
|
||||||
|
|
||||||
|
using namespace metal;
|
||||||
|
|
||||||
|
struct main0_out
|
||||||
|
{
|
||||||
|
float4 o1 [[user(locn1)]];
|
||||||
|
float4 gl_Position [[position]];
|
||||||
|
};
|
||||||
|
|
||||||
|
struct main0_in
|
||||||
|
{
|
||||||
|
float4 v0 [[attribute(0)]];
|
||||||
|
float4 v1 [[attribute(1)]];
|
||||||
|
};
|
||||||
|
|
||||||
|
vertex main0_out main0(main0_in in [[stage_in]])
|
||||||
|
{
|
||||||
|
main0_out out = {};
|
||||||
|
out.gl_Position = in.v0;
|
||||||
|
out.o1 = in.v1;
|
||||||
|
return out;
|
||||||
|
}
|
||||||
|
|
33
shaders-msl/asm/vert/copy-memory-interface.asm.vert
Normal file
33
shaders-msl/asm/vert/copy-memory-interface.asm.vert
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
; SPIR-V
|
||||||
|
; Version: 1.0
|
||||||
|
; Generator: Wine VKD3D Shader Compiler; 1
|
||||||
|
; Bound: 13
|
||||||
|
; Schema: 0
|
||||||
|
OpCapability Shader
|
||||||
|
OpMemoryModel Logical GLSL450
|
||||||
|
OpEntryPoint Vertex %1 "main" %8 %9 %11 %12
|
||||||
|
OpName %1 "main"
|
||||||
|
OpName %8 "v0"
|
||||||
|
OpName %9 "v1"
|
||||||
|
OpName %11 "o0"
|
||||||
|
OpName %12 "o1"
|
||||||
|
OpDecorate %8 Location 0
|
||||||
|
OpDecorate %9 Location 1
|
||||||
|
OpDecorate %11 BuiltIn Position
|
||||||
|
OpDecorate %12 Location 1
|
||||||
|
%2 = OpTypeVoid
|
||||||
|
%3 = OpTypeFunction %2
|
||||||
|
%5 = OpTypeFloat 32
|
||||||
|
%6 = OpTypeVector %5 4
|
||||||
|
%7 = OpTypePointer Input %6
|
||||||
|
%8 = OpVariable %7 Input
|
||||||
|
%9 = OpVariable %7 Input
|
||||||
|
%10 = OpTypePointer Output %6
|
||||||
|
%11 = OpVariable %10 Output
|
||||||
|
%12 = OpVariable %10 Output
|
||||||
|
%1 = OpFunction %2 None %3
|
||||||
|
%4 = OpLabel
|
||||||
|
OpCopyMemory %11 %8
|
||||||
|
OpCopyMemory %12 %9
|
||||||
|
OpReturn
|
||||||
|
OpFunctionEnd
|
@ -648,11 +648,11 @@ bool Compiler::InterfaceVariableAccessHandler::handle(Op opcode, const uint32_t
|
|||||||
|
|
||||||
auto *var = compiler.maybe_get<SPIRVariable>(args[0]);
|
auto *var = compiler.maybe_get<SPIRVariable>(args[0]);
|
||||||
if (var && storage_class_is_interface(var->storage))
|
if (var && storage_class_is_interface(var->storage))
|
||||||
variables.insert(variable);
|
variables.insert(args[0]);
|
||||||
|
|
||||||
var = compiler.maybe_get<SPIRVariable>(args[1]);
|
var = compiler.maybe_get<SPIRVariable>(args[1]);
|
||||||
if (var && storage_class_is_interface(var->storage))
|
if (var && storage_class_is_interface(var->storage))
|
||||||
variables.insert(variable);
|
variables.insert(args[1]);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user