GL_ARM_shader_core_builtins support
Add support for GL_ARM_shader_core_builtins and SPV_ARM_core_builtins, including initial tests
This commit is contained in:
61
Test/baseResults/spv.ARMCoreBuiltIns.frag.out
Normal file
61
Test/baseResults/spv.ARMCoreBuiltIns.frag.out
Normal file
@@ -0,0 +1,61 @@
|
||||
spv.ARMCoreBuiltIns.frag
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 8000b
|
||||
// Id's are bound by 26
|
||||
|
||||
Capability Shader
|
||||
Capability CoreBuiltinsARM
|
||||
Extension "SPV_ARM_core_builtins"
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 10 14 15 17 19 21
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 450
|
||||
SourceExtension "GL_ARM_shader_core_builtins"
|
||||
Name 4 "main"
|
||||
Name 8 "temp"
|
||||
Name 10 "gl_WarpMaxIDARM"
|
||||
Name 14 "data"
|
||||
Name 15 "gl_CoreIDARM"
|
||||
Name 17 "gl_CoreCountARM"
|
||||
Name 19 "gl_CoreMaxIDARM"
|
||||
Name 21 "gl_WarpIDARM"
|
||||
Decorate 10(gl_WarpMaxIDARM) Flat
|
||||
Decorate 10(gl_WarpMaxIDARM) BuiltIn BuiltInWarpMaxIDARM
|
||||
Decorate 14(data) Location 0
|
||||
Decorate 15(gl_CoreIDARM) Flat
|
||||
Decorate 15(gl_CoreIDARM) BuiltIn CoreIDARM
|
||||
Decorate 17(gl_CoreCountARM) Flat
|
||||
Decorate 17(gl_CoreCountARM) BuiltIn CoreCountARM
|
||||
Decorate 19(gl_CoreMaxIDARM) Flat
|
||||
Decorate 19(gl_CoreMaxIDARM) BuiltIn CoreMaxIDARM
|
||||
Decorate 21(gl_WarpIDARM) Flat
|
||||
Decorate 21(gl_WarpIDARM) BuiltIn WarpIDARM
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 0
|
||||
7: TypePointer Function 6(int)
|
||||
9: TypePointer Input 6(int)
|
||||
10(gl_WarpMaxIDARM): 9(ptr) Variable Input
|
||||
12: TypeVector 6(int) 4
|
||||
13: TypePointer Output 12(ivec4)
|
||||
14(data): 13(ptr) Variable Output
|
||||
15(gl_CoreIDARM): 9(ptr) Variable Input
|
||||
17(gl_CoreCountARM): 9(ptr) Variable Input
|
||||
19(gl_CoreMaxIDARM): 9(ptr) Variable Input
|
||||
21(gl_WarpIDARM): 9(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
8(temp): 7(ptr) Variable Function
|
||||
11: 6(int) Load 10(gl_WarpMaxIDARM)
|
||||
Store 8(temp) 11
|
||||
16: 6(int) Load 15(gl_CoreIDARM)
|
||||
18: 6(int) Load 17(gl_CoreCountARM)
|
||||
20: 6(int) Load 19(gl_CoreMaxIDARM)
|
||||
22: 6(int) Load 21(gl_WarpIDARM)
|
||||
23: 6(int) Load 8(temp)
|
||||
24: 6(int) IAdd 22 23
|
||||
25: 12(ivec4) CompositeConstruct 16 18 20 24
|
||||
Store 14(data) 25
|
||||
Return
|
||||
FunctionEnd
|
||||
65
Test/baseResults/spv.ARMCoreBuiltIns.vert.out
Normal file
65
Test/baseResults/spv.ARMCoreBuiltIns.vert.out
Normal file
@@ -0,0 +1,65 @@
|
||||
spv.ARMCoreBuiltIns.vert
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 8000b
|
||||
// Id's are bound by 31
|
||||
|
||||
Capability Shader
|
||||
Capability CoreBuiltinsARM
|
||||
Extension "SPV_ARM_core_builtins"
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 10 18 20 22 24
|
||||
Source GLSL 450
|
||||
SourceExtension "GL_ARM_shader_core_builtins"
|
||||
Name 4 "main"
|
||||
Name 8 "temp"
|
||||
Name 10 "gl_WarpMaxIDARM"
|
||||
Name 13 "Output"
|
||||
MemberName 13(Output) 0 "result"
|
||||
Name 15 ""
|
||||
Name 18 "gl_CoreIDARM"
|
||||
Name 20 "gl_CoreCountARM"
|
||||
Name 22 "gl_CoreMaxIDARM"
|
||||
Name 24 "gl_WarpIDARM"
|
||||
Decorate 10(gl_WarpMaxIDARM) BuiltIn BuiltInWarpMaxIDARM
|
||||
MemberDecorate 13(Output) 0 Offset 0
|
||||
Decorate 13(Output) BufferBlock
|
||||
Decorate 15 DescriptorSet 0
|
||||
Decorate 15 Binding 0
|
||||
Decorate 18(gl_CoreIDARM) BuiltIn CoreIDARM
|
||||
Decorate 20(gl_CoreCountARM) BuiltIn CoreCountARM
|
||||
Decorate 22(gl_CoreMaxIDARM) BuiltIn CoreMaxIDARM
|
||||
Decorate 24(gl_WarpIDARM) BuiltIn WarpIDARM
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 0
|
||||
7: TypePointer Function 6(int)
|
||||
9: TypePointer Input 6(int)
|
||||
10(gl_WarpMaxIDARM): 9(ptr) Variable Input
|
||||
12: TypeVector 6(int) 4
|
||||
13(Output): TypeStruct 12(ivec4)
|
||||
14: TypePointer Uniform 13(Output)
|
||||
15: 14(ptr) Variable Uniform
|
||||
16: TypeInt 32 1
|
||||
17: 16(int) Constant 0
|
||||
18(gl_CoreIDARM): 9(ptr) Variable Input
|
||||
20(gl_CoreCountARM): 9(ptr) Variable Input
|
||||
22(gl_CoreMaxIDARM): 9(ptr) Variable Input
|
||||
24(gl_WarpIDARM): 9(ptr) Variable Input
|
||||
29: TypePointer Uniform 12(ivec4)
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
8(temp): 7(ptr) Variable Function
|
||||
11: 6(int) Load 10(gl_WarpMaxIDARM)
|
||||
Store 8(temp) 11
|
||||
19: 6(int) Load 18(gl_CoreIDARM)
|
||||
21: 6(int) Load 20(gl_CoreCountARM)
|
||||
23: 6(int) Load 22(gl_CoreMaxIDARM)
|
||||
25: 6(int) Load 24(gl_WarpIDARM)
|
||||
26: 6(int) Load 8(temp)
|
||||
27: 6(int) IAdd 25 26
|
||||
28: 12(ivec4) CompositeConstruct 19 21 23 27
|
||||
30: 29(ptr) AccessChain 15 17
|
||||
Store 30 28
|
||||
Return
|
||||
FunctionEnd
|
||||
Reference in New Issue
Block a user