tools: Return position from generated vertex shaders

This is required to generate valid MSL code, and will soon be
validated by Tint too.

Change-Id: I4c5f5c4ecb1c91131c934de1132217d9f6be1f8e
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/53420
Auto-Submit: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
This commit is contained in:
James Price 2021-06-04 17:31:48 +00:00 committed by Tint LUCI CQ
parent 6b22219798
commit 9fd3befa17
2923 changed files with 32447 additions and 16304 deletions
test/intrinsics/gen
abs
acos
all
any

View File

@ -27,8 +27,9 @@ fn abs_002533() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_002533();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void abs_002533() {
float4 res = abs(float4(0.0f, 0.0f, 0.0f, 0.0f));
}
void vertex_main() {
tint_symbol vertex_main() {
abs_002533();
return;
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
}
void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib>
using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void abs_002533() {
float4 res = fabs(float4());
}
vertex void vertex_main() {
vertex tint_symbol vertex_main() {
abs_002533();
return;
tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
}
fragment void fragment_main() {

View File

@ -1,53 +1,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 25
; Bound: 32
; Schema: 0
OpCapability Shader
%11 = OpExtInstImport "GLSL.std.450"
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %abs_002533 "abs_002533"
OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%void = OpTypeVoid
%5 = OpTypeFunction %void
%v4float = OpTypeVector %float 4
%12 = OpConstantNull %v4float
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
%17 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1
%abs_002533 = OpFunction %void None %5
%8 = OpLabel
%res = OpVariable %_ptr_Function_v4float Function %12
%9 = OpExtInst %v4float %11 FAbs %12
OpStore %res %9
%abs_002533 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_v4float Function %8
%13 = OpExtInst %v4float %14 FAbs %8
OpStore %res %13
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %5
%16 = OpLabel
OpStore %tint_pointsize %float_1
%18 = OpFunctionCall %void %abs_002533
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %5
%tint_symbol_2 = OpFunction %void None %17
%tint_symbol = OpFunctionParameter %v4float
%20 = OpLabel
%21 = OpFunctionCall %void %abs_002533
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %5
%23 = OpLabel
%vertex_main = OpFunction %void None %9
%22 = OpLabel
OpStore %tint_pointsize %float_1
%24 = OpFunctionCall %void %abs_002533
%25 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
%27 = OpLabel
%28 = OpFunctionCall %void %abs_002533
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
%30 = OpLabel
%31 = OpFunctionCall %void %abs_002533
OpReturn
OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn abs_002533() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_002533();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn abs_005174() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_005174();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void abs_005174() {
float3 res = abs(float3(0.0f, 0.0f, 0.0f));
}
void vertex_main() {
tint_symbol vertex_main() {
abs_005174();
return;
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
}
void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib>
using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void abs_005174() {
float3 res = fabs(float3());
}
vertex void vertex_main() {
vertex tint_symbol vertex_main() {
abs_005174();
return;
tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
}
fragment void fragment_main() {

View File

@ -1,53 +1,69 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 25
; Bound: 34
; Schema: 0
OpCapability Shader
%11 = OpExtInstImport "GLSL.std.450"
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %abs_005174 "abs_005174"
OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid
%5 = OpTypeFunction %void
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%12 = OpConstantNull %v3float
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
%19 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1
%abs_005174 = OpFunction %void None %5
%8 = OpLabel
%res = OpVariable %_ptr_Function_v3float Function %12
%9 = OpExtInst %v3float %11 FAbs %12
OpStore %res %9
%abs_005174 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_v3float Function %16
%13 = OpExtInst %v3float %15 FAbs %16
OpStore %res %13
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %5
%16 = OpLabel
%tint_symbol_2 = OpFunction %void None %19
%tint_symbol = OpFunctionParameter %v4float
%22 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
OpStore %tint_pointsize %float_1
%18 = OpFunctionCall %void %abs_005174
%26 = OpFunctionCall %void %abs_005174
%27 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %5
%20 = OpLabel
%21 = OpFunctionCall %void %abs_005174
%fragment_main = OpFunction %void None %9
%29 = OpLabel
%30 = OpFunctionCall %void %abs_005174
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %5
%23 = OpLabel
%24 = OpFunctionCall %void %abs_005174
%compute_main = OpFunction %void None %9
%32 = OpLabel
%33 = OpFunctionCall %void %abs_005174
OpReturn
OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn abs_005174() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_005174();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn abs_1ce782() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_1ce782();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void abs_1ce782() {
uint4 res = abs(uint4(0u, 0u, 0u, 0u));
}
void vertex_main() {
tint_symbol vertex_main() {
abs_1ce782();
return;
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
}
void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib>
using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void abs_1ce782() {
uint4 res = abs(uint4());
}
vertex void vertex_main() {
vertex tint_symbol vertex_main() {
abs_1ce782();
return;
tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
}
fragment void fragment_main() {

View File

@ -1,54 +1,70 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 26
; Bound: 35
; Schema: 0
OpCapability Shader
%12 = OpExtInstImport "GLSL.std.450"
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %abs_1ce782 "abs_1ce782"
OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid
%5 = OpTypeFunction %void
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%v4uint = OpTypeVector %uint 4
%13 = OpConstantNull %v4uint
%17 = OpConstantNull %v4uint
%_ptr_Function_v4uint = OpTypePointer Function %v4uint
%20 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1
%abs_1ce782 = OpFunction %void None %5
%8 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %13
%9 = OpExtInst %v4uint %12 SAbs %13
OpStore %res %9
%abs_1ce782 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_v4uint Function %17
%13 = OpExtInst %v4uint %16 SAbs %17
OpStore %res %13
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %5
%17 = OpLabel
%tint_symbol_2 = OpFunction %void None %20
%tint_symbol = OpFunctionParameter %v4float
%23 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
OpStore %tint_pointsize %float_1
%19 = OpFunctionCall %void %abs_1ce782
%27 = OpFunctionCall %void %abs_1ce782
%28 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %5
%21 = OpLabel
%22 = OpFunctionCall %void %abs_1ce782
%fragment_main = OpFunction %void None %9
%30 = OpLabel
%31 = OpFunctionCall %void %abs_1ce782
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %5
%24 = OpLabel
%25 = OpFunctionCall %void %abs_1ce782
%compute_main = OpFunction %void None %9
%33 = OpLabel
%34 = OpFunctionCall %void %abs_1ce782
OpReturn
OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn abs_1ce782() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_1ce782();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn abs_1e9d53() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_1e9d53();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void abs_1e9d53() {
float2 res = abs(float2(0.0f, 0.0f));
}
void vertex_main() {
tint_symbol vertex_main() {
abs_1e9d53();
return;
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
}
void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib>
using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void abs_1e9d53() {
float2 res = fabs(float2());
}
vertex void vertex_main() {
vertex tint_symbol vertex_main() {
abs_1e9d53();
return;
tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
}
fragment void fragment_main() {

View File

@ -1,53 +1,69 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 25
; Bound: 34
; Schema: 0
OpCapability Shader
%11 = OpExtInstImport "GLSL.std.450"
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %abs_1e9d53 "abs_1e9d53"
OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid
%5 = OpTypeFunction %void
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%12 = OpConstantNull %v2float
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
%19 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1
%abs_1e9d53 = OpFunction %void None %5
%8 = OpLabel
%res = OpVariable %_ptr_Function_v2float Function %12
%9 = OpExtInst %v2float %11 FAbs %12
OpStore %res %9
%abs_1e9d53 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_v2float Function %16
%13 = OpExtInst %v2float %15 FAbs %16
OpStore %res %13
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %5
%16 = OpLabel
%tint_symbol_2 = OpFunction %void None %19
%tint_symbol = OpFunctionParameter %v4float
%22 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
OpStore %tint_pointsize %float_1
%18 = OpFunctionCall %void %abs_1e9d53
%26 = OpFunctionCall %void %abs_1e9d53
%27 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %5
%20 = OpLabel
%21 = OpFunctionCall %void %abs_1e9d53
%fragment_main = OpFunction %void None %9
%29 = OpLabel
%30 = OpFunctionCall %void %abs_1e9d53
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %5
%23 = OpLabel
%24 = OpFunctionCall %void %abs_1e9d53
%compute_main = OpFunction %void None %9
%32 = OpLabel
%33 = OpFunctionCall %void %abs_1e9d53
OpReturn
OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn abs_1e9d53() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_1e9d53();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn abs_467cd1() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_467cd1();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void abs_467cd1() {
uint res = abs(1u);
}
void vertex_main() {
tint_symbol vertex_main() {
abs_467cd1();
return;
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
}
void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib>
using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void abs_467cd1() {
uint res = abs(1u);
}
vertex void vertex_main() {
vertex tint_symbol vertex_main() {
abs_467cd1();
return;
tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
}
fragment void fragment_main() {

View File

@ -1,54 +1,70 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 26
; Bound: 35
; Schema: 0
OpCapability Shader
%11 = OpExtInstImport "GLSL.std.450"
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %abs_467cd1 "abs_467cd1"
OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid
%5 = OpTypeFunction %void
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%uint_1 = OpConstant %uint 1
%_ptr_Function_uint = OpTypePointer Function %uint
%15 = OpConstantNull %uint
%19 = OpConstantNull %uint
%20 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1
%abs_467cd1 = OpFunction %void None %5
%8 = OpLabel
%res = OpVariable %_ptr_Function_uint Function %15
%9 = OpExtInst %uint %11 SAbs %uint_1
OpStore %res %9
%abs_467cd1 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_uint Function %19
%13 = OpExtInst %uint %15 SAbs %uint_1
OpStore %res %13
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %5
%17 = OpLabel
%tint_symbol_2 = OpFunction %void None %20
%tint_symbol = OpFunctionParameter %v4float
%23 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
OpStore %tint_pointsize %float_1
%19 = OpFunctionCall %void %abs_467cd1
%27 = OpFunctionCall %void %abs_467cd1
%28 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %5
%21 = OpLabel
%22 = OpFunctionCall %void %abs_467cd1
%fragment_main = OpFunction %void None %9
%30 = OpLabel
%31 = OpFunctionCall %void %abs_467cd1
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %5
%24 = OpLabel
%25 = OpFunctionCall %void %abs_467cd1
%compute_main = OpFunction %void None %9
%33 = OpLabel
%34 = OpFunctionCall %void %abs_467cd1
OpReturn
OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn abs_467cd1() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_467cd1();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn abs_4ad288() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_4ad288();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void abs_4ad288() {
int res = abs(1);
}
void vertex_main() {
tint_symbol vertex_main() {
abs_4ad288();
return;
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
}
void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib>
using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void abs_4ad288() {
int res = abs(1);
}
vertex void vertex_main() {
vertex tint_symbol vertex_main() {
abs_4ad288();
return;
tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
}
fragment void fragment_main() {

View File

@ -1,54 +1,70 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 26
; Bound: 35
; Schema: 0
OpCapability Shader
%11 = OpExtInstImport "GLSL.std.450"
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %abs_4ad288 "abs_4ad288"
OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid
%5 = OpTypeFunction %void
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%_ptr_Function_int = OpTypePointer Function %int
%15 = OpConstantNull %int
%19 = OpConstantNull %int
%20 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1
%abs_4ad288 = OpFunction %void None %5
%8 = OpLabel
%res = OpVariable %_ptr_Function_int Function %15
%9 = OpExtInst %int %11 SAbs %int_1
OpStore %res %9
%abs_4ad288 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_int Function %19
%13 = OpExtInst %int %15 SAbs %int_1
OpStore %res %13
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %5
%17 = OpLabel
%tint_symbol_2 = OpFunction %void None %20
%tint_symbol = OpFunctionParameter %v4float
%23 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
OpStore %tint_pointsize %float_1
%19 = OpFunctionCall %void %abs_4ad288
%27 = OpFunctionCall %void %abs_4ad288
%28 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %5
%21 = OpLabel
%22 = OpFunctionCall %void %abs_4ad288
%fragment_main = OpFunction %void None %9
%30 = OpLabel
%31 = OpFunctionCall %void %abs_4ad288
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %5
%24 = OpLabel
%25 = OpFunctionCall %void %abs_4ad288
%compute_main = OpFunction %void None %9
%33 = OpLabel
%34 = OpFunctionCall %void %abs_4ad288
OpReturn
OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn abs_4ad288() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_4ad288();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn abs_5ad50a() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_5ad50a();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void abs_5ad50a() {
int3 res = abs(int3(0, 0, 0));
}
void vertex_main() {
tint_symbol vertex_main() {
abs_5ad50a();
return;
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
}
void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib>
using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void abs_5ad50a() {
int3 res = abs(int3());
}
vertex void vertex_main() {
vertex tint_symbol vertex_main() {
abs_5ad50a();
return;
tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
}
fragment void fragment_main() {

View File

@ -1,54 +1,70 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 26
; Bound: 35
; Schema: 0
OpCapability Shader
%12 = OpExtInstImport "GLSL.std.450"
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %abs_5ad50a "abs_5ad50a"
OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid
%5 = OpTypeFunction %void
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v3int = OpTypeVector %int 3
%13 = OpConstantNull %v3int
%17 = OpConstantNull %v3int
%_ptr_Function_v3int = OpTypePointer Function %v3int
%20 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1
%abs_5ad50a = OpFunction %void None %5
%8 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %13
%9 = OpExtInst %v3int %12 SAbs %13
OpStore %res %9
%abs_5ad50a = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_v3int Function %17
%13 = OpExtInst %v3int %16 SAbs %17
OpStore %res %13
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %5
%17 = OpLabel
%tint_symbol_2 = OpFunction %void None %20
%tint_symbol = OpFunctionParameter %v4float
%23 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
OpStore %tint_pointsize %float_1
%19 = OpFunctionCall %void %abs_5ad50a
%27 = OpFunctionCall %void %abs_5ad50a
%28 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %5
%21 = OpLabel
%22 = OpFunctionCall %void %abs_5ad50a
%fragment_main = OpFunction %void None %9
%30 = OpLabel
%31 = OpFunctionCall %void %abs_5ad50a
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %5
%24 = OpLabel
%25 = OpFunctionCall %void %abs_5ad50a
%compute_main = OpFunction %void None %9
%33 = OpLabel
%34 = OpFunctionCall %void %abs_5ad50a
OpReturn
OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn abs_5ad50a() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_5ad50a();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn abs_7326de() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_7326de();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void abs_7326de() {
uint3 res = abs(uint3(0u, 0u, 0u));
}
void vertex_main() {
tint_symbol vertex_main() {
abs_7326de();
return;
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
}
void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib>
using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void abs_7326de() {
uint3 res = abs(uint3());
}
vertex void vertex_main() {
vertex tint_symbol vertex_main() {
abs_7326de();
return;
tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
}
fragment void fragment_main() {

View File

@ -1,54 +1,70 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 26
; Bound: 35
; Schema: 0
OpCapability Shader
%12 = OpExtInstImport "GLSL.std.450"
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %abs_7326de "abs_7326de"
OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid
%5 = OpTypeFunction %void
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
%13 = OpConstantNull %v3uint
%17 = OpConstantNull %v3uint
%_ptr_Function_v3uint = OpTypePointer Function %v3uint
%20 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1
%abs_7326de = OpFunction %void None %5
%8 = OpLabel
%res = OpVariable %_ptr_Function_v3uint Function %13
%9 = OpExtInst %v3uint %12 SAbs %13
OpStore %res %9
%abs_7326de = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_v3uint Function %17
%13 = OpExtInst %v3uint %16 SAbs %17
OpStore %res %13
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %5
%17 = OpLabel
%tint_symbol_2 = OpFunction %void None %20
%tint_symbol = OpFunctionParameter %v4float
%23 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
OpStore %tint_pointsize %float_1
%19 = OpFunctionCall %void %abs_7326de
%27 = OpFunctionCall %void %abs_7326de
%28 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %5
%21 = OpLabel
%22 = OpFunctionCall %void %abs_7326de
%fragment_main = OpFunction %void None %9
%30 = OpLabel
%31 = OpFunctionCall %void %abs_7326de
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %5
%24 = OpLabel
%25 = OpFunctionCall %void %abs_7326de
%compute_main = OpFunction %void None %9
%33 = OpLabel
%34 = OpFunctionCall %void %abs_7326de
OpReturn
OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn abs_7326de() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_7326de();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn abs_7f28e6() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_7f28e6();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void abs_7f28e6() {
uint2 res = abs(uint2(0u, 0u));
}
void vertex_main() {
tint_symbol vertex_main() {
abs_7f28e6();
return;
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
}
void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib>
using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void abs_7f28e6() {
uint2 res = abs(uint2());
}
vertex void vertex_main() {
vertex tint_symbol vertex_main() {
abs_7f28e6();
return;
tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
}
fragment void fragment_main() {

View File

@ -1,54 +1,70 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 26
; Bound: 35
; Schema: 0
OpCapability Shader
%12 = OpExtInstImport "GLSL.std.450"
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %abs_7f28e6 "abs_7f28e6"
OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid
%5 = OpTypeFunction %void
%9 = OpTypeFunction %void
%uint = OpTypeInt 32 0
%v2uint = OpTypeVector %uint 2
%13 = OpConstantNull %v2uint
%17 = OpConstantNull %v2uint
%_ptr_Function_v2uint = OpTypePointer Function %v2uint
%20 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1
%abs_7f28e6 = OpFunction %void None %5
%8 = OpLabel
%res = OpVariable %_ptr_Function_v2uint Function %13
%9 = OpExtInst %v2uint %12 SAbs %13
OpStore %res %9
%abs_7f28e6 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_v2uint Function %17
%13 = OpExtInst %v2uint %16 SAbs %17
OpStore %res %13
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %5
%17 = OpLabel
%tint_symbol_2 = OpFunction %void None %20
%tint_symbol = OpFunctionParameter %v4float
%23 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
OpStore %tint_pointsize %float_1
%19 = OpFunctionCall %void %abs_7f28e6
%27 = OpFunctionCall %void %abs_7f28e6
%28 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %5
%21 = OpLabel
%22 = OpFunctionCall %void %abs_7f28e6
%fragment_main = OpFunction %void None %9
%30 = OpLabel
%31 = OpFunctionCall %void %abs_7f28e6
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %5
%24 = OpLabel
%25 = OpFunctionCall %void %abs_7f28e6
%compute_main = OpFunction %void None %9
%33 = OpLabel
%34 = OpFunctionCall %void %abs_7f28e6
OpReturn
OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn abs_7f28e6() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_7f28e6();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn abs_7faa9e() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_7faa9e();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void abs_7faa9e() {
int2 res = abs(int2(0, 0));
}
void vertex_main() {
tint_symbol vertex_main() {
abs_7faa9e();
return;
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
}
void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib>
using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void abs_7faa9e() {
int2 res = abs(int2());
}
vertex void vertex_main() {
vertex tint_symbol vertex_main() {
abs_7faa9e();
return;
tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
}
fragment void fragment_main() {

View File

@ -1,54 +1,70 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 26
; Bound: 35
; Schema: 0
OpCapability Shader
%12 = OpExtInstImport "GLSL.std.450"
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %abs_7faa9e "abs_7faa9e"
OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid
%5 = OpTypeFunction %void
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v2int = OpTypeVector %int 2
%13 = OpConstantNull %v2int
%17 = OpConstantNull %v2int
%_ptr_Function_v2int = OpTypePointer Function %v2int
%20 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1
%abs_7faa9e = OpFunction %void None %5
%8 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %13
%9 = OpExtInst %v2int %12 SAbs %13
OpStore %res %9
%abs_7faa9e = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_v2int Function %17
%13 = OpExtInst %v2int %16 SAbs %17
OpStore %res %13
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %5
%17 = OpLabel
%tint_symbol_2 = OpFunction %void None %20
%tint_symbol = OpFunctionParameter %v4float
%23 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
OpStore %tint_pointsize %float_1
%19 = OpFunctionCall %void %abs_7faa9e
%27 = OpFunctionCall %void %abs_7faa9e
%28 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %5
%21 = OpLabel
%22 = OpFunctionCall %void %abs_7faa9e
%fragment_main = OpFunction %void None %9
%30 = OpLabel
%31 = OpFunctionCall %void %abs_7faa9e
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %5
%24 = OpLabel
%25 = OpFunctionCall %void %abs_7faa9e
%compute_main = OpFunction %void None %9
%33 = OpLabel
%34 = OpFunctionCall %void %abs_7faa9e
OpReturn
OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn abs_7faa9e() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_7faa9e();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn abs_9c80a6() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_9c80a6();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void abs_9c80a6() {
int4 res = abs(int4(0, 0, 0, 0));
}
void vertex_main() {
tint_symbol vertex_main() {
abs_9c80a6();
return;
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
}
void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib>
using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void abs_9c80a6() {
int4 res = abs(int4());
}
vertex void vertex_main() {
vertex tint_symbol vertex_main() {
abs_9c80a6();
return;
tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
}
fragment void fragment_main() {

View File

@ -1,54 +1,70 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 26
; Bound: 35
; Schema: 0
OpCapability Shader
%12 = OpExtInstImport "GLSL.std.450"
%16 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %abs_9c80a6 "abs_9c80a6"
OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid
%5 = OpTypeFunction %void
%9 = OpTypeFunction %void
%int = OpTypeInt 32 1
%v4int = OpTypeVector %int 4
%13 = OpConstantNull %v4int
%17 = OpConstantNull %v4int
%_ptr_Function_v4int = OpTypePointer Function %v4int
%20 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1
%abs_9c80a6 = OpFunction %void None %5
%8 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %13
%9 = OpExtInst %v4int %12 SAbs %13
OpStore %res %9
%abs_9c80a6 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_v4int Function %17
%13 = OpExtInst %v4int %16 SAbs %17
OpStore %res %13
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %5
%17 = OpLabel
%tint_symbol_2 = OpFunction %void None %20
%tint_symbol = OpFunctionParameter %v4float
%23 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
OpStore %tint_pointsize %float_1
%19 = OpFunctionCall %void %abs_9c80a6
%27 = OpFunctionCall %void %abs_9c80a6
%28 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %5
%21 = OpLabel
%22 = OpFunctionCall %void %abs_9c80a6
%fragment_main = OpFunction %void None %9
%30 = OpLabel
%31 = OpFunctionCall %void %abs_9c80a6
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %5
%24 = OpLabel
%25 = OpFunctionCall %void %abs_9c80a6
%compute_main = OpFunction %void None %9
%33 = OpLabel
%34 = OpFunctionCall %void %abs_9c80a6
OpReturn
OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn abs_9c80a6() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_9c80a6();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn abs_b96037() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_b96037();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void abs_b96037() {
float res = abs(1.0f);
}
void vertex_main() {
tint_symbol vertex_main() {
abs_b96037();
return;
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
}
void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib>
using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void abs_b96037() {
float res = fabs(1.0f);
}
vertex void vertex_main() {
vertex tint_symbol vertex_main() {
abs_b96037();
return;
tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
}
fragment void fragment_main() {

View File

@ -1,51 +1,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 23
; Bound: 32
; Schema: 0
OpCapability Shader
%10 = OpExtInstImport "GLSL.std.450"
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %abs_b96037 "abs_b96037"
OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid
%5 = OpTypeFunction %void
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
%abs_b96037 = OpFunction %void None %5
%8 = OpLabel
%18 = OpTypeFunction %void %v4float
%abs_b96037 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_float Function %4
%9 = OpExtInst %float %10 FAbs %float_1
OpStore %res %9
%13 = OpExtInst %float %14 FAbs %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %5
%15 = OpLabel
OpStore %tint_pointsize %float_1
%16 = OpFunctionCall %void %abs_b96037
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %5
%18 = OpLabel
%19 = OpFunctionCall %void %abs_b96037
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %5
%tint_symbol_2 = OpFunction %void None %18
%tint_symbol = OpFunctionParameter %v4float
%21 = OpLabel
%22 = OpFunctionCall %void %abs_b96037
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
OpStore %tint_pointsize %float_1
%24 = OpFunctionCall %void %abs_b96037
%25 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
%27 = OpLabel
%28 = OpFunctionCall %void %abs_b96037
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
%30 = OpLabel
%31 = OpFunctionCall %void %abs_b96037
OpReturn
OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn abs_b96037() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
abs_b96037();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn acos_489247() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
acos_489247();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void acos_489247() {
float res = acos(1.0f);
}
void vertex_main() {
tint_symbol vertex_main() {
acos_489247();
return;
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
}
void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib>
using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void acos_489247() {
float res = acos(1.0f);
}
vertex void vertex_main() {
vertex tint_symbol vertex_main() {
acos_489247();
return;
tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
}
fragment void fragment_main() {

View File

@ -1,51 +1,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 23
; Bound: 32
; Schema: 0
OpCapability Shader
%10 = OpExtInstImport "GLSL.std.450"
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %acos_489247 "acos_489247"
OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid
%5 = OpTypeFunction %void
%9 = OpTypeFunction %void
%float_1 = OpConstant %float 1
%_ptr_Function_float = OpTypePointer Function %float
%acos_489247 = OpFunction %void None %5
%8 = OpLabel
%18 = OpTypeFunction %void %v4float
%acos_489247 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_float Function %4
%9 = OpExtInst %float %10 Acos %float_1
OpStore %res %9
%13 = OpExtInst %float %14 Acos %float_1
OpStore %res %13
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %5
%15 = OpLabel
OpStore %tint_pointsize %float_1
%16 = OpFunctionCall %void %acos_489247
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %5
%18 = OpLabel
%19 = OpFunctionCall %void %acos_489247
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %5
%tint_symbol_2 = OpFunction %void None %18
%tint_symbol = OpFunctionParameter %v4float
%21 = OpLabel
%22 = OpFunctionCall %void %acos_489247
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%23 = OpLabel
OpStore %tint_pointsize %float_1
%24 = OpFunctionCall %void %acos_489247
%25 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
%27 = OpLabel
%28 = OpFunctionCall %void %acos_489247
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
%30 = OpLabel
%31 = OpFunctionCall %void %acos_489247
OpReturn
OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn acos_489247() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
acos_489247();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn acos_8e2acf() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
acos_8e2acf();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void acos_8e2acf() {
float4 res = acos(float4(0.0f, 0.0f, 0.0f, 0.0f));
}
void vertex_main() {
tint_symbol vertex_main() {
acos_8e2acf();
return;
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
}
void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib>
using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void acos_8e2acf() {
float4 res = acos(float4());
}
vertex void vertex_main() {
vertex tint_symbol vertex_main() {
acos_8e2acf();
return;
tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
}
fragment void fragment_main() {

View File

@ -1,53 +1,67 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 25
; Bound: 32
; Schema: 0
OpCapability Shader
%11 = OpExtInstImport "GLSL.std.450"
%14 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %acos_8e2acf "acos_8e2acf"
OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%void = OpTypeVoid
%5 = OpTypeFunction %void
%v4float = OpTypeVector %float 4
%12 = OpConstantNull %v4float
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid
%9 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
%17 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1
%acos_8e2acf = OpFunction %void None %5
%8 = OpLabel
%res = OpVariable %_ptr_Function_v4float Function %12
%9 = OpExtInst %v4float %11 Acos %12
OpStore %res %9
%acos_8e2acf = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_v4float Function %8
%13 = OpExtInst %v4float %14 Acos %8
OpStore %res %13
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %5
%16 = OpLabel
OpStore %tint_pointsize %float_1
%18 = OpFunctionCall %void %acos_8e2acf
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %5
%tint_symbol_2 = OpFunction %void None %17
%tint_symbol = OpFunctionParameter %v4float
%20 = OpLabel
%21 = OpFunctionCall %void %acos_8e2acf
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %5
%23 = OpLabel
%vertex_main = OpFunction %void None %9
%22 = OpLabel
OpStore %tint_pointsize %float_1
%24 = OpFunctionCall %void %acos_8e2acf
%25 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %9
%27 = OpLabel
%28 = OpFunctionCall %void %acos_8e2acf
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %9
%30 = OpLabel
%31 = OpFunctionCall %void %acos_8e2acf
OpReturn
OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn acos_8e2acf() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
acos_8e2acf();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn acos_a610c4() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
acos_a610c4();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void acos_a610c4() {
float3 res = acos(float3(0.0f, 0.0f, 0.0f));
}
void vertex_main() {
tint_symbol vertex_main() {
acos_a610c4();
return;
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
}
void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib>
using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void acos_a610c4() {
float3 res = acos(float3());
}
vertex void vertex_main() {
vertex tint_symbol vertex_main() {
acos_a610c4();
return;
tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
}
fragment void fragment_main() {

View File

@ -1,53 +1,69 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 25
; Bound: 34
; Schema: 0
OpCapability Shader
%11 = OpExtInstImport "GLSL.std.450"
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %acos_a610c4 "acos_a610c4"
OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid
%5 = OpTypeFunction %void
%9 = OpTypeFunction %void
%v3float = OpTypeVector %float 3
%12 = OpConstantNull %v3float
%16 = OpConstantNull %v3float
%_ptr_Function_v3float = OpTypePointer Function %v3float
%19 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1
%acos_a610c4 = OpFunction %void None %5
%8 = OpLabel
%res = OpVariable %_ptr_Function_v3float Function %12
%9 = OpExtInst %v3float %11 Acos %12
OpStore %res %9
%acos_a610c4 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_v3float Function %16
%13 = OpExtInst %v3float %15 Acos %16
OpStore %res %13
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %5
%16 = OpLabel
%tint_symbol_2 = OpFunction %void None %19
%tint_symbol = OpFunctionParameter %v4float
%22 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
OpStore %tint_pointsize %float_1
%18 = OpFunctionCall %void %acos_a610c4
%26 = OpFunctionCall %void %acos_a610c4
%27 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %5
%20 = OpLabel
%21 = OpFunctionCall %void %acos_a610c4
%fragment_main = OpFunction %void None %9
%29 = OpLabel
%30 = OpFunctionCall %void %acos_a610c4
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %5
%23 = OpLabel
%24 = OpFunctionCall %void %acos_a610c4
%compute_main = OpFunction %void None %9
%32 = OpLabel
%33 = OpFunctionCall %void %acos_a610c4
OpReturn
OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn acos_a610c4() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
acos_a610c4();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn acos_dfc915() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
acos_dfc915();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void acos_dfc915() {
float2 res = acos(float2(0.0f, 0.0f));
}
void vertex_main() {
tint_symbol vertex_main() {
acos_dfc915();
return;
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
}
void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib>
using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void acos_dfc915() {
float2 res = acos(float2());
}
vertex void vertex_main() {
vertex tint_symbol vertex_main() {
acos_dfc915();
return;
tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
}
fragment void fragment_main() {

View File

@ -1,53 +1,69 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 25
; Bound: 34
; Schema: 0
OpCapability Shader
%11 = OpExtInstImport "GLSL.std.450"
%15 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %acos_dfc915 "acos_dfc915"
OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid
%5 = OpTypeFunction %void
%9 = OpTypeFunction %void
%v2float = OpTypeVector %float 2
%12 = OpConstantNull %v2float
%16 = OpConstantNull %v2float
%_ptr_Function_v2float = OpTypePointer Function %v2float
%19 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1
%acos_dfc915 = OpFunction %void None %5
%8 = OpLabel
%res = OpVariable %_ptr_Function_v2float Function %12
%9 = OpExtInst %v2float %11 Acos %12
OpStore %res %9
%acos_dfc915 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_v2float Function %16
%13 = OpExtInst %v2float %15 Acos %16
OpStore %res %13
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %5
%16 = OpLabel
%tint_symbol_2 = OpFunction %void None %19
%tint_symbol = OpFunctionParameter %v4float
%22 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%24 = OpLabel
OpStore %tint_pointsize %float_1
%18 = OpFunctionCall %void %acos_dfc915
%26 = OpFunctionCall %void %acos_dfc915
%27 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %5
%20 = OpLabel
%21 = OpFunctionCall %void %acos_dfc915
%fragment_main = OpFunction %void None %9
%29 = OpLabel
%30 = OpFunctionCall %void %acos_dfc915
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %5
%23 = OpLabel
%24 = OpFunctionCall %void %acos_dfc915
%compute_main = OpFunction %void None %9
%32 = OpLabel
%33 = OpFunctionCall %void %acos_dfc915
OpReturn
OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn acos_dfc915() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
acos_dfc915();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn all_986c7b() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
all_986c7b();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void all_986c7b() {
bool res = all(vector<bool, 4>(false, false, false, false));
}
void vertex_main() {
tint_symbol vertex_main() {
all_986c7b();
return;
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
}
void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib>
using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void all_986c7b() {
bool res = all(bool4());
}
vertex void vertex_main() {
vertex tint_symbol vertex_main() {
all_986c7b();
return;
tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
}
fragment void fragment_main() {

View File

@ -1,54 +1,70 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 26
; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %all_986c7b "all_986c7b"
OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid
%5 = OpTypeFunction %void
%9 = OpTypeFunction %void
%bool = OpTypeBool
%v4bool = OpTypeVector %bool 4
%12 = OpConstantNull %v4bool
%16 = OpConstantNull %v4bool
%_ptr_Function_bool = OpTypePointer Function %bool
%15 = OpConstantNull %bool
%19 = OpConstantNull %bool
%20 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1
%all_986c7b = OpFunction %void None %5
%8 = OpLabel
%res = OpVariable %_ptr_Function_bool Function %15
%9 = OpAll %bool %12
OpStore %res %9
%all_986c7b = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_bool Function %19
%13 = OpAll %bool %16
OpStore %res %13
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %5
%17 = OpLabel
%tint_symbol_2 = OpFunction %void None %20
%tint_symbol = OpFunctionParameter %v4float
%23 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
OpStore %tint_pointsize %float_1
%19 = OpFunctionCall %void %all_986c7b
%27 = OpFunctionCall %void %all_986c7b
%28 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %5
%21 = OpLabel
%22 = OpFunctionCall %void %all_986c7b
%fragment_main = OpFunction %void None %9
%30 = OpLabel
%31 = OpFunctionCall %void %all_986c7b
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %5
%24 = OpLabel
%25 = OpFunctionCall %void %all_986c7b
%compute_main = OpFunction %void None %9
%33 = OpLabel
%34 = OpFunctionCall %void %all_986c7b
OpReturn
OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn all_986c7b() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
all_986c7b();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn all_bd2dba() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
all_bd2dba();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void all_bd2dba() {
bool res = all(vector<bool, 3>(false, false, false));
}
void vertex_main() {
tint_symbol vertex_main() {
all_bd2dba();
return;
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
}
void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib>
using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void all_bd2dba() {
bool res = all(bool3());
}
vertex void vertex_main() {
vertex tint_symbol vertex_main() {
all_bd2dba();
return;
tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
}
fragment void fragment_main() {

View File

@ -1,54 +1,70 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 26
; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %all_bd2dba "all_bd2dba"
OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid
%5 = OpTypeFunction %void
%9 = OpTypeFunction %void
%bool = OpTypeBool
%v3bool = OpTypeVector %bool 3
%12 = OpConstantNull %v3bool
%16 = OpConstantNull %v3bool
%_ptr_Function_bool = OpTypePointer Function %bool
%15 = OpConstantNull %bool
%19 = OpConstantNull %bool
%20 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1
%all_bd2dba = OpFunction %void None %5
%8 = OpLabel
%res = OpVariable %_ptr_Function_bool Function %15
%9 = OpAll %bool %12
OpStore %res %9
%all_bd2dba = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_bool Function %19
%13 = OpAll %bool %16
OpStore %res %13
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %5
%17 = OpLabel
%tint_symbol_2 = OpFunction %void None %20
%tint_symbol = OpFunctionParameter %v4float
%23 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
OpStore %tint_pointsize %float_1
%19 = OpFunctionCall %void %all_bd2dba
%27 = OpFunctionCall %void %all_bd2dba
%28 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %5
%21 = OpLabel
%22 = OpFunctionCall %void %all_bd2dba
%fragment_main = OpFunction %void None %9
%30 = OpLabel
%31 = OpFunctionCall %void %all_bd2dba
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %5
%24 = OpLabel
%25 = OpFunctionCall %void %all_bd2dba
%compute_main = OpFunction %void None %9
%33 = OpLabel
%34 = OpFunctionCall %void %all_bd2dba
OpReturn
OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn all_bd2dba() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
all_bd2dba();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn all_f46790() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
all_f46790();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void all_f46790() {
bool res = all(vector<bool, 2>(false, false));
}
void vertex_main() {
tint_symbol vertex_main() {
all_f46790();
return;
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
}
void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib>
using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void all_f46790() {
bool res = all(bool2());
}
vertex void vertex_main() {
vertex tint_symbol vertex_main() {
all_f46790();
return;
tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
}
fragment void fragment_main() {

View File

@ -1,54 +1,70 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 26
; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %all_f46790 "all_f46790"
OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid
%5 = OpTypeFunction %void
%9 = OpTypeFunction %void
%bool = OpTypeBool
%v2bool = OpTypeVector %bool 2
%12 = OpConstantNull %v2bool
%16 = OpConstantNull %v2bool
%_ptr_Function_bool = OpTypePointer Function %bool
%15 = OpConstantNull %bool
%19 = OpConstantNull %bool
%20 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1
%all_f46790 = OpFunction %void None %5
%8 = OpLabel
%res = OpVariable %_ptr_Function_bool Function %15
%9 = OpAll %bool %12
OpStore %res %9
%all_f46790 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_bool Function %19
%13 = OpAll %bool %16
OpStore %res %13
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %5
%17 = OpLabel
%tint_symbol_2 = OpFunction %void None %20
%tint_symbol = OpFunctionParameter %v4float
%23 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
OpStore %tint_pointsize %float_1
%19 = OpFunctionCall %void %all_f46790
%27 = OpFunctionCall %void %all_f46790
%28 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %5
%21 = OpLabel
%22 = OpFunctionCall %void %all_f46790
%fragment_main = OpFunction %void None %9
%30 = OpLabel
%31 = OpFunctionCall %void %all_f46790
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %5
%24 = OpLabel
%25 = OpFunctionCall %void %all_f46790
%compute_main = OpFunction %void None %9
%33 = OpLabel
%34 = OpFunctionCall %void %all_f46790
OpReturn
OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn all_f46790() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
all_f46790();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -27,8 +27,9 @@ fn any_083428() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
any_083428();
return vec4<f32>();
}
[[stage(fragment)]]

View File

@ -1,10 +1,15 @@
struct tint_symbol {
float4 value : SV_Position;
};
void any_083428() {
bool res = any(vector<bool, 4>(false, false, false, false));
}
void vertex_main() {
tint_symbol vertex_main() {
any_083428();
return;
const tint_symbol tint_symbol_1 = {float4(0.0f, 0.0f, 0.0f, 0.0f)};
return tint_symbol_1;
}
void fragment_main() {

View File

@ -1,13 +1,18 @@
#include <metal_stdlib>
using namespace metal;
struct tint_symbol {
float4 value [[position]];
};
void any_083428() {
bool res = any(bool4());
}
vertex void vertex_main() {
vertex tint_symbol vertex_main() {
any_083428();
return;
tint_symbol const tint_symbol_1 = {.value=float4()};
return tint_symbol_1;
}
fragment void fragment_main() {

View File

@ -1,54 +1,70 @@
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 26
; Bound: 35
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize
OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
OpEntryPoint Fragment %fragment_main "fragment_main"
OpEntryPoint GLCompute %compute_main "compute_main"
OpExecutionMode %fragment_main OriginUpperLeft
OpExecutionMode %compute_main LocalSize 1 1 1
OpName %tint_pointsize "tint_pointsize"
OpName %tint_symbol_1 "tint_symbol_1"
OpName %any_083428 "any_083428"
OpName %res "res"
OpName %tint_symbol_2 "tint_symbol_2"
OpName %tint_symbol "tint_symbol"
OpName %vertex_main "vertex_main"
OpName %fragment_main "fragment_main"
OpName %compute_main "compute_main"
OpDecorate %tint_pointsize BuiltIn PointSize
OpDecorate %tint_symbol_1 BuiltIn Position
%float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
%4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
%void = OpTypeVoid
%5 = OpTypeFunction %void
%9 = OpTypeFunction %void
%bool = OpTypeBool
%v4bool = OpTypeVector %bool 4
%12 = OpConstantNull %v4bool
%16 = OpConstantNull %v4bool
%_ptr_Function_bool = OpTypePointer Function %bool
%15 = OpConstantNull %bool
%19 = OpConstantNull %bool
%20 = OpTypeFunction %void %v4float
%float_1 = OpConstant %float 1
%any_083428 = OpFunction %void None %5
%8 = OpLabel
%res = OpVariable %_ptr_Function_bool Function %15
%9 = OpAny %bool %12
OpStore %res %9
%any_083428 = OpFunction %void None %9
%12 = OpLabel
%res = OpVariable %_ptr_Function_bool Function %19
%13 = OpAny %bool %16
OpStore %res %13
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %5
%17 = OpLabel
%tint_symbol_2 = OpFunction %void None %20
%tint_symbol = OpFunctionParameter %v4float
%23 = OpLabel
OpStore %tint_symbol_1 %tint_symbol
OpReturn
OpFunctionEnd
%vertex_main = OpFunction %void None %9
%25 = OpLabel
OpStore %tint_pointsize %float_1
%19 = OpFunctionCall %void %any_083428
%27 = OpFunctionCall %void %any_083428
%28 = OpFunctionCall %void %tint_symbol_2 %8
OpReturn
OpFunctionEnd
%fragment_main = OpFunction %void None %5
%21 = OpLabel
%22 = OpFunctionCall %void %any_083428
%fragment_main = OpFunction %void None %9
%30 = OpLabel
%31 = OpFunctionCall %void %any_083428
OpReturn
OpFunctionEnd
%compute_main = OpFunction %void None %5
%24 = OpLabel
%25 = OpFunctionCall %void %any_083428
%compute_main = OpFunction %void None %9
%33 = OpLabel
%34 = OpFunctionCall %void %any_083428
OpReturn
OpFunctionEnd

View File

@ -3,8 +3,9 @@ fn any_083428() {
}
[[stage(vertex)]]
fn vertex_main() {
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
any_083428();
return vec4<f32>();
}
[[stage(fragment)]]

Some files were not shown because too many files have changed in this diff Show More