mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-05-13 10:51:35 +00:00
reader/wgsl: Allow identifiers to start with an underscore
Try to lex identifiers before punctuation, and backtrack if we only see a single underscore or something that starts with two underscores. Rename the modf and frexp return types to start with two underscores. Spec PR: https://github.com/gpuweb/gpuweb/pull/2326 Change-Id: Id283af100babfe84faa183345cb8a60848140caa Fixed: tint:1292 Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/70160 Reviewed-by: David Neto <dneto@google.com> Kokoro: Kokoro <noreply+kokoro@google.com> Commit-Queue: James Price <jrprice@google.com>
This commit is contained in:
parent
0e2185efca
commit
1bf5af25ad
@ -657,20 +657,20 @@ const sem::ExternalTexture* build_texture_external(MatchState& state) {
|
||||
// Builtin types starting with a _ prefix cannot be declared in WGSL, so they
|
||||
// can only be used as return types. Because of this, they must only match Any,
|
||||
// which is used as the return type matcher.
|
||||
bool match_modf_result(const sem::Type* ty) {
|
||||
bool match__modf_result(const sem::Type* ty) {
|
||||
return ty->Is<Any>();
|
||||
}
|
||||
bool match_modf_result_vec(const sem::Type* ty, Number& N) {
|
||||
bool match__modf_result_vec(const sem::Type* ty, Number& N) {
|
||||
if (!ty->Is<Any>()) {
|
||||
return false;
|
||||
}
|
||||
N = Number::any;
|
||||
return true;
|
||||
}
|
||||
bool match_frexp_result(const sem::Type* ty) {
|
||||
bool match__frexp_result(const sem::Type* ty) {
|
||||
return ty->Is<Any>();
|
||||
}
|
||||
bool match_frexp_result_vec(const sem::Type* ty, Number& N) {
|
||||
bool match__frexp_result_vec(const sem::Type* ty, Number& N) {
|
||||
if (!ty->Is<Any>()) {
|
||||
return false;
|
||||
}
|
||||
@ -715,27 +715,27 @@ const sem::Struct* build_struct(
|
||||
/* size_no_padding */ size_without_padding);
|
||||
}
|
||||
|
||||
const sem::Struct* build_modf_result(MatchState& state) {
|
||||
const sem::Struct* build__modf_result(MatchState& state) {
|
||||
auto* f32 = state.builder.create<sem::F32>();
|
||||
return build_struct(state, "_modf_result", {{"fract", f32}, {"whole", f32}});
|
||||
return build_struct(state, "__modf_result", {{"fract", f32}, {"whole", f32}});
|
||||
}
|
||||
const sem::Struct* build_modf_result_vec(MatchState& state, Number& n) {
|
||||
const sem::Struct* build__modf_result_vec(MatchState& state, Number& n) {
|
||||
auto* vec_f32 = state.builder.create<sem::Vector>(
|
||||
state.builder.create<sem::F32>(), n.Value());
|
||||
return build_struct(state, "_modf_result_vec" + std::to_string(n.Value()),
|
||||
return build_struct(state, "__modf_result_vec" + std::to_string(n.Value()),
|
||||
{{"fract", vec_f32}, {"whole", vec_f32}});
|
||||
}
|
||||
const sem::Struct* build_frexp_result(MatchState& state) {
|
||||
const sem::Struct* build__frexp_result(MatchState& state) {
|
||||
auto* f32 = state.builder.create<sem::F32>();
|
||||
auto* i32 = state.builder.create<sem::I32>();
|
||||
return build_struct(state, "_frexp_result", {{"sig", f32}, {"exp", i32}});
|
||||
return build_struct(state, "__frexp_result", {{"sig", f32}, {"exp", i32}});
|
||||
}
|
||||
const sem::Struct* build_frexp_result_vec(MatchState& state, Number& n) {
|
||||
const sem::Struct* build__frexp_result_vec(MatchState& state, Number& n) {
|
||||
auto* vec_f32 = state.builder.create<sem::Vector>(
|
||||
state.builder.create<sem::F32>(), n.Value());
|
||||
auto* vec_i32 = state.builder.create<sem::Vector>(
|
||||
state.builder.create<sem::I32>(), n.Value());
|
||||
return build_struct(state, "_frexp_result_vec" + std::to_string(n.Value()),
|
||||
return build_struct(state, "__frexp_result_vec" + std::to_string(n.Value()),
|
||||
{{"sig", vec_f32}, {"exp", vec_i32}});
|
||||
}
|
||||
|
||||
|
@ -1033,7 +1033,7 @@ std::string TextureExternal::String(MatchState&) const {
|
||||
return "texture_external";
|
||||
}
|
||||
|
||||
/// TypeMatcher for 'type _modf_result'
|
||||
/// TypeMatcher for 'type __modf_result'
|
||||
/// @see src/intrinsics.def:100:6
|
||||
class ModfResult : public TypeMatcher {
|
||||
public:
|
||||
@ -1050,18 +1050,18 @@ class ModfResult : public TypeMatcher {
|
||||
};
|
||||
|
||||
const sem::Type* ModfResult::Match(MatchState& state, const sem::Type* ty) const {
|
||||
if (!match_modf_result(ty)) {
|
||||
if (!match__modf_result(ty)) {
|
||||
return nullptr;
|
||||
}
|
||||
return build_modf_result(state);
|
||||
return build__modf_result(state);
|
||||
}
|
||||
|
||||
std::string ModfResult::String(MatchState&) const {
|
||||
return "_modf_result";
|
||||
return "__modf_result";
|
||||
}
|
||||
|
||||
/// TypeMatcher for 'type _modf_result_vec'
|
||||
/// @see src/intrinsics.def:101:41
|
||||
/// TypeMatcher for 'type __modf_result_vec'
|
||||
/// @see src/intrinsics.def:101:42
|
||||
class ModfResultVec : public TypeMatcher {
|
||||
public:
|
||||
/// Checks whether the given type matches the matcher rules.
|
||||
@ -1078,24 +1078,24 @@ class ModfResultVec : public TypeMatcher {
|
||||
|
||||
const sem::Type* ModfResultVec::Match(MatchState& state, const sem::Type* ty) const {
|
||||
Number N = Number::invalid;
|
||||
if (!match_modf_result_vec(ty, N)) {
|
||||
if (!match__modf_result_vec(ty, N)) {
|
||||
return nullptr;
|
||||
}
|
||||
N = state.Num(N);
|
||||
if (!N.IsValid()) {
|
||||
return nullptr;
|
||||
}
|
||||
return build_modf_result_vec(state, N);
|
||||
return build__modf_result_vec(state, N);
|
||||
}
|
||||
|
||||
std::string ModfResultVec::String(MatchState& state) const {
|
||||
const std::string N = state.NumName();
|
||||
std::stringstream ss;
|
||||
ss << "_modf_result_vec" << N;
|
||||
ss << "__modf_result_vec" << N;
|
||||
return ss.str();
|
||||
}
|
||||
|
||||
/// TypeMatcher for 'type _frexp_result'
|
||||
/// TypeMatcher for 'type __frexp_result'
|
||||
/// @see src/intrinsics.def:102:6
|
||||
class FrexpResult : public TypeMatcher {
|
||||
public:
|
||||
@ -1112,18 +1112,18 @@ class FrexpResult : public TypeMatcher {
|
||||
};
|
||||
|
||||
const sem::Type* FrexpResult::Match(MatchState& state, const sem::Type* ty) const {
|
||||
if (!match_frexp_result(ty)) {
|
||||
if (!match__frexp_result(ty)) {
|
||||
return nullptr;
|
||||
}
|
||||
return build_frexp_result(state);
|
||||
return build__frexp_result(state);
|
||||
}
|
||||
|
||||
std::string FrexpResult::String(MatchState&) const {
|
||||
return "_frexp_result";
|
||||
return "__frexp_result";
|
||||
}
|
||||
|
||||
/// TypeMatcher for 'type _frexp_result_vec'
|
||||
/// @see src/intrinsics.def:103:42
|
||||
/// TypeMatcher for 'type __frexp_result_vec'
|
||||
/// @see src/intrinsics.def:103:43
|
||||
class FrexpResultVec : public TypeMatcher {
|
||||
public:
|
||||
/// Checks whether the given type matches the matcher rules.
|
||||
@ -1140,20 +1140,20 @@ class FrexpResultVec : public TypeMatcher {
|
||||
|
||||
const sem::Type* FrexpResultVec::Match(MatchState& state, const sem::Type* ty) const {
|
||||
Number N = Number::invalid;
|
||||
if (!match_frexp_result_vec(ty, N)) {
|
||||
if (!match__frexp_result_vec(ty, N)) {
|
||||
return nullptr;
|
||||
}
|
||||
N = state.Num(N);
|
||||
if (!N.IsValid()) {
|
||||
return nullptr;
|
||||
}
|
||||
return build_frexp_result_vec(state, N);
|
||||
return build__frexp_result_vec(state, N);
|
||||
}
|
||||
|
||||
std::string FrexpResultVec::String(MatchState& state) const {
|
||||
const std::string N = state.NumName();
|
||||
std::stringstream ss;
|
||||
ss << "_frexp_result_vec" << N;
|
||||
ss << "__frexp_result_vec" << N;
|
||||
return ss.str();
|
||||
}
|
||||
|
||||
@ -8171,8 +8171,8 @@ constexpr IntrinsicInfo kIntrinsics[] = {
|
||||
},
|
||||
{
|
||||
/* [29] */
|
||||
/* fn frexp(f32) -> _frexp_result */
|
||||
/* fn frexp<N : num>(vec<N, f32>) -> _frexp_result_vec<N> */
|
||||
/* fn frexp(f32) -> __frexp_result */
|
||||
/* fn frexp<N : num>(vec<N, f32>) -> __frexp_result_vec<N> */
|
||||
/* num overloads */ 2,
|
||||
/* overloads */ &kOverloads[159],
|
||||
},
|
||||
@ -8290,8 +8290,8 @@ constexpr IntrinsicInfo kIntrinsics[] = {
|
||||
},
|
||||
{
|
||||
/* [46] */
|
||||
/* fn modf(f32) -> _modf_result */
|
||||
/* fn modf<N : num>(vec<N, f32>) -> _modf_result_vec<N> */
|
||||
/* fn modf(f32) -> __modf_result */
|
||||
/* fn modf<N : num>(vec<N, f32>) -> __modf_result_vec<N> */
|
||||
/* num overloads */ 2,
|
||||
/* overloads */ &kOverloads[193],
|
||||
},
|
||||
|
@ -97,10 +97,10 @@ type texture_storage_2d_array<F: texel_format, A: access>
|
||||
type texture_storage_3d<F: texel_format, A: access>
|
||||
type texture_external
|
||||
|
||||
type _modf_result
|
||||
[[display("_modf_result_vec{N}")]] type _modf_result_vec<N: num>
|
||||
type _frexp_result
|
||||
[[display("_frexp_result_vec{N}")]] type _frexp_result_vec<N: num>
|
||||
type __modf_result
|
||||
[[display("__modf_result_vec{N}")]] type __modf_result_vec<N: num>
|
||||
type __frexp_result
|
||||
[[display("__frexp_result_vec{N}")]] type __frexp_result_vec<N: num>
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// Type matchers //
|
||||
@ -316,8 +316,8 @@ fn fma(f32, f32, f32) -> f32
|
||||
fn fma<N: num>(vec<N, f32>, vec<N, f32>, vec<N, f32>) -> vec<N, f32>
|
||||
fn fract(f32) -> f32
|
||||
fn fract<N: num>(vec<N, f32>) -> vec<N, f32>
|
||||
fn frexp(f32) -> _frexp_result
|
||||
fn frexp<N: num>(vec<N, f32>) -> _frexp_result_vec<N>
|
||||
fn frexp(f32) -> __frexp_result
|
||||
fn frexp<N: num>(vec<N, f32>) -> __frexp_result_vec<N>
|
||||
[[stage("fragment")]] fn fwidth(f32) -> f32
|
||||
[[stage("fragment")]] fn fwidth<N: num>(vec<N, f32>) -> vec<N, f32>
|
||||
[[stage("fragment")]] fn fwidthCoarse(f32) -> f32
|
||||
@ -350,8 +350,8 @@ fn min<N: num, T: fiu32>(vec<N, T>, vec<N, T>) -> vec<N, T>
|
||||
fn mix(f32, f32, f32) -> f32
|
||||
fn mix<N: num>(vec<N, f32>, vec<N, f32>, vec<N, f32>) -> vec<N, f32>
|
||||
fn mix<N: num>(vec<N, f32>, vec<N, f32>, f32) -> vec<N, f32>
|
||||
fn modf(f32) -> _modf_result
|
||||
fn modf<N: num>(vec<N, f32>) -> _modf_result_vec<N>
|
||||
fn modf(f32) -> __modf_result
|
||||
fn modf<N: num>(vec<N, f32>) -> __modf_result_vec<N>
|
||||
fn normalize<N: num>(vec<N, f32>) -> vec<N, f32>
|
||||
fn pack2x16float(vec2<f32>) -> u32
|
||||
fn pack2x16snorm(vec2<f32>) -> u32
|
||||
|
@ -86,12 +86,12 @@ Token Lexer::next() {
|
||||
return t;
|
||||
}
|
||||
|
||||
t = try_punctuation();
|
||||
t = try_ident();
|
||||
if (!t.IsUninitialized()) {
|
||||
return t;
|
||||
}
|
||||
|
||||
t = try_ident();
|
||||
t = try_punctuation();
|
||||
if (!t.IsUninitialized()) {
|
||||
return t;
|
||||
}
|
||||
@ -724,8 +724,8 @@ Token Lexer::try_integer() {
|
||||
}
|
||||
|
||||
Token Lexer::try_ident() {
|
||||
// Must begin with an a-zA-Z
|
||||
if (!is_alpha(content_->data[pos_])) {
|
||||
// Must begin with an a-zA-Z_
|
||||
if (!(is_alpha(content_->data[pos_]) || content_->data[pos_] == '_')) {
|
||||
return {};
|
||||
}
|
||||
|
||||
@ -737,6 +737,16 @@ Token Lexer::try_ident() {
|
||||
location_.column++;
|
||||
}
|
||||
|
||||
if (content_->data[s] == '_') {
|
||||
// Check for an underscore on its own (special token), or a
|
||||
// double-underscore (not allowed).
|
||||
if ((pos_ == s + 1) || (content_->data[s + 1] == '_')) {
|
||||
location_.column -= (pos_ - s);
|
||||
pos_ = s;
|
||||
return {};
|
||||
}
|
||||
}
|
||||
|
||||
auto str = content_->data.substr(s, pos_ - s);
|
||||
end_source(source);
|
||||
|
||||
|
@ -276,6 +276,7 @@ INSTANTIATE_TEST_SUITE_P(LexerTest,
|
||||
"test",
|
||||
"test01",
|
||||
"test_",
|
||||
"_test",
|
||||
"test_01",
|
||||
"ALLCAPS",
|
||||
"MiXeD_CaSe",
|
||||
@ -283,8 +284,16 @@ INSTANTIATE_TEST_SUITE_P(LexerTest,
|
||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZ",
|
||||
"alldigits_0123456789"));
|
||||
|
||||
TEST_F(LexerTest, IdentifierTest_DoesNotStartWithUnderscore) {
|
||||
Source::FileContent content("_test");
|
||||
TEST_F(LexerTest, IdentifierTest_SingleUnderscoreDoesNotMatch) {
|
||||
Source::FileContent content("_");
|
||||
Lexer l("test.wgsl", &content);
|
||||
|
||||
auto t = l.next();
|
||||
EXPECT_FALSE(t.IsIdentifier());
|
||||
}
|
||||
|
||||
TEST_F(LexerTest, IdentifierTest_DoesNotStartWithDoubleUnderscore) {
|
||||
Source::FileContent content("__test");
|
||||
Lexer l("test.wgsl", &content);
|
||||
|
||||
auto t = l.next();
|
||||
|
@ -835,8 +835,8 @@ TEST_F(ResolverIntrinsicDataTest, Frexp_Error_FirstParamInt) {
|
||||
R"(error: no matching call to frexp(i32, ptr<workgroup, i32, read_write>)
|
||||
|
||||
2 candidate functions:
|
||||
frexp(f32) -> _frexp_result
|
||||
frexp(vecN<f32>) -> _frexp_result_vecN
|
||||
frexp(f32) -> __frexp_result
|
||||
frexp(vecN<f32>) -> __frexp_result_vecN
|
||||
)");
|
||||
}
|
||||
|
||||
@ -852,8 +852,8 @@ TEST_F(ResolverIntrinsicDataTest, Frexp_Error_SecondParamFloatPtr) {
|
||||
R"(error: no matching call to frexp(f32, ptr<workgroup, f32, read_write>)
|
||||
|
||||
2 candidate functions:
|
||||
frexp(f32) -> _frexp_result
|
||||
frexp(vecN<f32>) -> _frexp_result_vecN
|
||||
frexp(f32) -> __frexp_result
|
||||
frexp(vecN<f32>) -> __frexp_result_vecN
|
||||
)");
|
||||
}
|
||||
|
||||
@ -866,8 +866,8 @@ TEST_F(ResolverIntrinsicDataTest, Frexp_Error_SecondParamNotAPointer) {
|
||||
EXPECT_EQ(r()->error(), R"(error: no matching call to frexp(f32, i32)
|
||||
|
||||
2 candidate functions:
|
||||
frexp(f32) -> _frexp_result
|
||||
frexp(vecN<f32>) -> _frexp_result_vecN
|
||||
frexp(f32) -> __frexp_result
|
||||
frexp(vecN<f32>) -> __frexp_result_vecN
|
||||
)");
|
||||
}
|
||||
|
||||
@ -883,8 +883,8 @@ TEST_F(ResolverIntrinsicDataTest, Frexp_Error_VectorSizesDontMatch) {
|
||||
R"(error: no matching call to frexp(vec2<f32>, ptr<workgroup, vec4<i32>, read_write>)
|
||||
|
||||
2 candidate functions:
|
||||
frexp(vecN<f32>) -> _frexp_result_vecN
|
||||
frexp(f32) -> _frexp_result
|
||||
frexp(vecN<f32>) -> __frexp_result_vecN
|
||||
frexp(f32) -> __frexp_result
|
||||
)");
|
||||
}
|
||||
|
||||
@ -962,8 +962,8 @@ TEST_F(ResolverIntrinsicDataTest, Modf_Error_FirstParamInt) {
|
||||
R"(error: no matching call to modf(i32, ptr<workgroup, f32, read_write>)
|
||||
|
||||
2 candidate functions:
|
||||
modf(f32) -> _modf_result
|
||||
modf(vecN<f32>) -> _modf_result_vecN
|
||||
modf(f32) -> __modf_result
|
||||
modf(vecN<f32>) -> __modf_result_vecN
|
||||
)");
|
||||
}
|
||||
|
||||
@ -979,8 +979,8 @@ TEST_F(ResolverIntrinsicDataTest, Modf_Error_SecondParamIntPtr) {
|
||||
R"(error: no matching call to modf(f32, ptr<workgroup, i32, read_write>)
|
||||
|
||||
2 candidate functions:
|
||||
modf(f32) -> _modf_result
|
||||
modf(vecN<f32>) -> _modf_result_vecN
|
||||
modf(f32) -> __modf_result
|
||||
modf(vecN<f32>) -> __modf_result_vecN
|
||||
)");
|
||||
}
|
||||
|
||||
@ -993,8 +993,8 @@ TEST_F(ResolverIntrinsicDataTest, Modf_Error_SecondParamNotAPointer) {
|
||||
EXPECT_EQ(r()->error(), R"(error: no matching call to modf(f32, f32)
|
||||
|
||||
2 candidate functions:
|
||||
modf(f32) -> _modf_result
|
||||
modf(vecN<f32>) -> _modf_result_vecN
|
||||
modf(f32) -> __modf_result
|
||||
modf(vecN<f32>) -> __modf_result_vecN
|
||||
)");
|
||||
}
|
||||
|
||||
@ -1010,8 +1010,8 @@ TEST_F(ResolverIntrinsicDataTest, Modf_Error_VectorSizesDontMatch) {
|
||||
R"(error: no matching call to modf(vec2<f32>, ptr<workgroup, vec4<f32>, read_write>)
|
||||
|
||||
2 candidate functions:
|
||||
modf(vecN<f32>) -> _modf_result_vecN
|
||||
modf(f32) -> _modf_result
|
||||
modf(vecN<f32>) -> __modf_result_vecN
|
||||
modf(f32) -> __modf_result
|
||||
)");
|
||||
}
|
||||
|
||||
|
@ -1561,7 +1561,7 @@ OpMemoryModel Logical GLSL450
|
||||
OpEntryPoint Fragment %3 "a_func"
|
||||
OpExecutionMode %3 OriginUpperLeft
|
||||
OpName %3 "a_func"
|
||||
OpName %6 "_modf_result_vec2"
|
||||
OpName %6 "__modf_result_vec2"
|
||||
OpMemberName %6 0 "fract"
|
||||
OpMemberName %6 1 "whole"
|
||||
OpMemberDecorate %6 0 Offset 0
|
||||
@ -1600,7 +1600,7 @@ OpMemoryModel Logical GLSL450
|
||||
OpEntryPoint Fragment %3 "a_func"
|
||||
OpExecutionMode %3 OriginUpperLeft
|
||||
OpName %3 "a_func"
|
||||
OpName %6 "_frexp_result_vec2"
|
||||
OpName %6 "__frexp_result_vec2"
|
||||
OpMemberName %6 0 "sig"
|
||||
OpMemberName %6 1 "exp"
|
||||
OpMemberDecorate %6 0 Offset 0
|
||||
|
@ -33,9 +33,9 @@ std::string TextGenerator::UniqueIdentifier(const std::string& prefix) {
|
||||
|
||||
std::string TextGenerator::StructName(const sem::Struct* s) {
|
||||
auto name = builder_.Symbols().NameFor(s->Name());
|
||||
if (name.size() > 0 && name[0] == '_') {
|
||||
if (name.size() > 1 && name[0] == '_' && name[1] == '_') {
|
||||
name = utils::GetOrCreate(builtin_struct_names_, s,
|
||||
[&] { return UniqueIdentifier(name.substr(1)); });
|
||||
[&] { return UniqueIdentifier(name.substr(2)); });
|
||||
}
|
||||
return name;
|
||||
}
|
||||
|
@ -113,9 +113,9 @@ class TextGenerator {
|
||||
|
||||
/// @param s the semantic structure
|
||||
/// @returns the name of the structure, taking special care of builtin
|
||||
/// structures that start with a leading underscore. If the structure is a
|
||||
/// structures that start with double underscores. If the structure is a
|
||||
/// builtin, then the returned name will be a unique name without the leading
|
||||
/// underscore.
|
||||
/// underscores.
|
||||
std::string StructName(const sem::Struct* s);
|
||||
|
||||
/// @param str the string
|
||||
|
@ -10,15 +10,15 @@
|
||||
OpExecutionMode %unused_entry_point LocalSize 1 1 1
|
||||
OpName %unused_entry_point "unused_entry_point"
|
||||
OpName %tint_symbol "tint_symbol"
|
||||
OpName %_modf_result "_modf_result"
|
||||
OpMemberName %_modf_result 0 "fract"
|
||||
OpMemberName %_modf_result 1 "whole"
|
||||
OpMemberDecorate %_modf_result 0 Offset 0
|
||||
OpMemberDecorate %_modf_result 1 Offset 4
|
||||
OpName %__modf_result "__modf_result"
|
||||
OpMemberName %__modf_result 0 "fract"
|
||||
OpMemberName %__modf_result 1 "whole"
|
||||
OpMemberDecorate %__modf_result 0 Offset 0
|
||||
OpMemberDecorate %__modf_result 1 Offset 4
|
||||
%void = OpTypeVoid
|
||||
%1 = OpTypeFunction %void
|
||||
%float = OpTypeFloat 32
|
||||
%_modf_result = OpTypeStruct %float %float
|
||||
%__modf_result = OpTypeStruct %float %float
|
||||
%float_1 = OpConstant %float 1
|
||||
%unused_entry_point = OpFunction %void None %1
|
||||
%4 = OpLabel
|
||||
@ -26,7 +26,7 @@
|
||||
OpFunctionEnd
|
||||
%tint_symbol = OpFunction %void None %1
|
||||
%6 = OpLabel
|
||||
%7 = OpExtInst %_modf_result %10 ModfStruct %float_1
|
||||
%7 = OpExtInst %__modf_result %10 ModfStruct %float_1
|
||||
%12 = OpCompositeExtract %float %7 1
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
|
@ -9,20 +9,20 @@
|
||||
OpEntryPoint GLCompute %main "main"
|
||||
OpExecutionMode %main LocalSize 1 1 1
|
||||
OpName %main "main"
|
||||
OpName %_frexp_result "_frexp_result"
|
||||
OpMemberName %_frexp_result 0 "sig"
|
||||
OpMemberName %_frexp_result 1 "exp"
|
||||
OpMemberDecorate %_frexp_result 0 Offset 0
|
||||
OpMemberDecorate %_frexp_result 1 Offset 4
|
||||
OpName %__frexp_result "__frexp_result"
|
||||
OpMemberName %__frexp_result 0 "sig"
|
||||
OpMemberName %__frexp_result 1 "exp"
|
||||
OpMemberDecorate %__frexp_result 0 Offset 0
|
||||
OpMemberDecorate %__frexp_result 1 Offset 4
|
||||
%void = OpTypeVoid
|
||||
%1 = OpTypeFunction %void
|
||||
%float = OpTypeFloat 32
|
||||
%int = OpTypeInt 32 1
|
||||
%_frexp_result = OpTypeStruct %float %int
|
||||
%__frexp_result = OpTypeStruct %float %int
|
||||
%float_1_23000002 = OpConstant %float 1.23000002
|
||||
%main = OpFunction %void None %1
|
||||
%4 = OpLabel
|
||||
%5 = OpExtInst %_frexp_result %9 FrexpStruct %float_1_23000002
|
||||
%5 = OpExtInst %__frexp_result %9 FrexpStruct %float_1_23000002
|
||||
%11 = OpCompositeExtract %int %5 1
|
||||
%12 = OpCompositeExtract %float %5 0
|
||||
OpReturn
|
||||
|
@ -23,23 +23,23 @@
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
// fn frexp(vec<3, f32>) -> _frexp_result_vec<3>
|
||||
fn frexp_a0eb3b() {
|
||||
// fn frexp(vec<3, f32>) -> __frexp_result_vec<3>
|
||||
fn frexp_368997() {
|
||||
var res = frexp(vec3<f32>());
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||
frexp_a0eb3b();
|
||||
frexp_368997();
|
||||
return vec4<f32>();
|
||||
}
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn fragment_main() {
|
||||
frexp_a0eb3b();
|
||||
frexp_368997();
|
||||
}
|
||||
|
||||
[[stage(compute), workgroup_size(1)]]
|
||||
fn compute_main() {
|
||||
frexp_a0eb3b();
|
||||
frexp_368997();
|
||||
}
|
@ -15,7 +15,7 @@ frexp_result_vec3 tint_frexp(vec3 param_0) {
|
||||
}
|
||||
|
||||
|
||||
void frexp_a0eb3b() {
|
||||
void frexp_368997() {
|
||||
frexp_result_vec3 res = tint_frexp(vec3(0.0f, 0.0f, 0.0f));
|
||||
}
|
||||
|
||||
@ -24,7 +24,7 @@ struct tint_symbol {
|
||||
};
|
||||
|
||||
vec4 vertex_main_inner() {
|
||||
frexp_a0eb3b();
|
||||
frexp_368997();
|
||||
return vec4(0.0f, 0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
|
||||
@ -64,7 +64,7 @@ frexp_result_vec3 tint_frexp(vec3 param_0) {
|
||||
}
|
||||
|
||||
|
||||
void frexp_a0eb3b() {
|
||||
void frexp_368997() {
|
||||
frexp_result_vec3 res = tint_frexp(vec3(0.0f, 0.0f, 0.0f));
|
||||
}
|
||||
|
||||
@ -73,7 +73,7 @@ struct tint_symbol {
|
||||
};
|
||||
|
||||
void fragment_main() {
|
||||
frexp_a0eb3b();
|
||||
frexp_368997();
|
||||
return;
|
||||
}
|
||||
void main() {
|
||||
@ -103,7 +103,7 @@ frexp_result_vec3 tint_frexp(vec3 param_0) {
|
||||
}
|
||||
|
||||
|
||||
void frexp_a0eb3b() {
|
||||
void frexp_368997() {
|
||||
frexp_result_vec3 res = tint_frexp(vec3(0.0f, 0.0f, 0.0f));
|
||||
}
|
||||
|
||||
@ -113,7 +113,7 @@ struct tint_symbol {
|
||||
|
||||
layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
|
||||
void compute_main() {
|
||||
frexp_a0eb3b();
|
||||
frexp_368997();
|
||||
return;
|
||||
}
|
||||
void main() {
|
@ -9,7 +9,7 @@ frexp_result_vec3 tint_frexp(float3 param_0) {
|
||||
return result;
|
||||
}
|
||||
|
||||
void frexp_a0eb3b() {
|
||||
void frexp_368997() {
|
||||
frexp_result_vec3 res = tint_frexp(float3(0.0f, 0.0f, 0.0f));
|
||||
}
|
||||
|
||||
@ -18,7 +18,7 @@ struct tint_symbol {
|
||||
};
|
||||
|
||||
float4 vertex_main_inner() {
|
||||
frexp_a0eb3b();
|
||||
frexp_368997();
|
||||
return float4(0.0f, 0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
|
||||
@ -30,12 +30,12 @@ tint_symbol vertex_main() {
|
||||
}
|
||||
|
||||
void fragment_main() {
|
||||
frexp_a0eb3b();
|
||||
frexp_368997();
|
||||
return;
|
||||
}
|
||||
|
||||
[numthreads(1, 1, 1)]
|
||||
void compute_main() {
|
||||
frexp_a0eb3b();
|
||||
frexp_368997();
|
||||
return;
|
||||
}
|
@ -16,12 +16,12 @@ struct tint_symbol {
|
||||
float4 value [[position]];
|
||||
};
|
||||
|
||||
void frexp_a0eb3b() {
|
||||
void frexp_368997() {
|
||||
frexp_result_vec3 res = tint_frexp(float3());
|
||||
}
|
||||
|
||||
float4 vertex_main_inner() {
|
||||
frexp_a0eb3b();
|
||||
frexp_368997();
|
||||
return float4();
|
||||
}
|
||||
|
||||
@ -33,12 +33,12 @@ vertex tint_symbol vertex_main() {
|
||||
}
|
||||
|
||||
fragment void fragment_main() {
|
||||
frexp_a0eb3b();
|
||||
frexp_368997();
|
||||
return;
|
||||
}
|
||||
|
||||
kernel void compute_main() {
|
||||
frexp_a0eb3b();
|
||||
frexp_368997();
|
||||
return;
|
||||
}
|
||||
|
@ -13,10 +13,10 @@
|
||||
OpExecutionMode %compute_main LocalSize 1 1 1
|
||||
OpName %value "value"
|
||||
OpName %vertex_point_size "vertex_point_size"
|
||||
OpName %frexp_a0eb3b "frexp_a0eb3b"
|
||||
OpName %_frexp_result_vec3 "_frexp_result_vec3"
|
||||
OpMemberName %_frexp_result_vec3 0 "sig"
|
||||
OpMemberName %_frexp_result_vec3 1 "exp"
|
||||
OpName %frexp_368997 "frexp_368997"
|
||||
OpName %__frexp_result_vec3 "__frexp_result_vec3"
|
||||
OpMemberName %__frexp_result_vec3 0 "sig"
|
||||
OpMemberName %__frexp_result_vec3 1 "exp"
|
||||
OpName %res "res"
|
||||
OpName %vertex_main_inner "vertex_main_inner"
|
||||
OpName %vertex_main "vertex_main"
|
||||
@ -24,8 +24,8 @@
|
||||
OpName %compute_main "compute_main"
|
||||
OpDecorate %value BuiltIn Position
|
||||
OpDecorate %vertex_point_size BuiltIn PointSize
|
||||
OpMemberDecorate %_frexp_result_vec3 0 Offset 0
|
||||
OpMemberDecorate %_frexp_result_vec3 1 Offset 16
|
||||
OpMemberDecorate %__frexp_result_vec3 0 Offset 0
|
||||
OpMemberDecorate %__frexp_result_vec3 1 Offset 16
|
||||
%float = OpTypeFloat 32
|
||||
%v4float = OpTypeVector %float 4
|
||||
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
||||
@ -39,22 +39,22 @@
|
||||
%v3float = OpTypeVector %float 3
|
||||
%int = OpTypeInt 32 1
|
||||
%v3int = OpTypeVector %int 3
|
||||
%_frexp_result_vec3 = OpTypeStruct %v3float %v3int
|
||||
%__frexp_result_vec3 = OpTypeStruct %v3float %v3int
|
||||
%19 = OpConstantNull %v3float
|
||||
%_ptr_Function__frexp_result_vec3 = OpTypePointer Function %_frexp_result_vec3
|
||||
%22 = OpConstantNull %_frexp_result_vec3
|
||||
%_ptr_Function___frexp_result_vec3 = OpTypePointer Function %__frexp_result_vec3
|
||||
%22 = OpConstantNull %__frexp_result_vec3
|
||||
%23 = OpTypeFunction %v4float
|
||||
%float_1 = OpConstant %float 1
|
||||
%frexp_a0eb3b = OpFunction %void None %9
|
||||
%frexp_368997 = OpFunction %void None %9
|
||||
%12 = OpLabel
|
||||
%res = OpVariable %_ptr_Function__frexp_result_vec3 Function %22
|
||||
%13 = OpExtInst %_frexp_result_vec3 %18 FrexpStruct %19
|
||||
%res = OpVariable %_ptr_Function___frexp_result_vec3 Function %22
|
||||
%13 = OpExtInst %__frexp_result_vec3 %18 FrexpStruct %19
|
||||
OpStore %res %13
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
%vertex_main_inner = OpFunction %v4float None %23
|
||||
%25 = OpLabel
|
||||
%26 = OpFunctionCall %void %frexp_a0eb3b
|
||||
%26 = OpFunctionCall %void %frexp_368997
|
||||
OpReturnValue %5
|
||||
OpFunctionEnd
|
||||
%vertex_main = OpFunction %void None %9
|
||||
@ -66,11 +66,11 @@
|
||||
OpFunctionEnd
|
||||
%fragment_main = OpFunction %void None %9
|
||||
%32 = OpLabel
|
||||
%33 = OpFunctionCall %void %frexp_a0eb3b
|
||||
%33 = OpFunctionCall %void %frexp_368997
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
%compute_main = OpFunction %void None %9
|
||||
%35 = OpLabel
|
||||
%36 = OpFunctionCall %void %frexp_a0eb3b
|
||||
%36 = OpFunctionCall %void %frexp_368997
|
||||
OpReturn
|
||||
OpFunctionEnd
|
@ -1,19 +1,19 @@
|
||||
fn frexp_a0eb3b() {
|
||||
fn frexp_368997() {
|
||||
var res = frexp(vec3<f32>());
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||
frexp_a0eb3b();
|
||||
frexp_368997();
|
||||
return vec4<f32>();
|
||||
}
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn fragment_main() {
|
||||
frexp_a0eb3b();
|
||||
frexp_368997();
|
||||
}
|
||||
|
||||
[[stage(compute), workgroup_size(1)]]
|
||||
fn compute_main() {
|
||||
frexp_a0eb3b();
|
||||
frexp_368997();
|
||||
}
|
@ -23,23 +23,23 @@
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
// fn frexp(vec<4, f32>) -> _frexp_result_vec<4>
|
||||
fn frexp_d80367() {
|
||||
// fn frexp(vec<4, f32>) -> __frexp_result_vec<4>
|
||||
fn frexp_3c4f48() {
|
||||
var res = frexp(vec4<f32>());
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||
frexp_d80367();
|
||||
frexp_3c4f48();
|
||||
return vec4<f32>();
|
||||
}
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn fragment_main() {
|
||||
frexp_d80367();
|
||||
frexp_3c4f48();
|
||||
}
|
||||
|
||||
[[stage(compute), workgroup_size(1)]]
|
||||
fn compute_main() {
|
||||
frexp_d80367();
|
||||
frexp_3c4f48();
|
||||
}
|
@ -15,7 +15,7 @@ frexp_result_vec4 tint_frexp(vec4 param_0) {
|
||||
}
|
||||
|
||||
|
||||
void frexp_d80367() {
|
||||
void frexp_3c4f48() {
|
||||
frexp_result_vec4 res = tint_frexp(vec4(0.0f, 0.0f, 0.0f, 0.0f));
|
||||
}
|
||||
|
||||
@ -24,7 +24,7 @@ struct tint_symbol {
|
||||
};
|
||||
|
||||
vec4 vertex_main_inner() {
|
||||
frexp_d80367();
|
||||
frexp_3c4f48();
|
||||
return vec4(0.0f, 0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
|
||||
@ -64,7 +64,7 @@ frexp_result_vec4 tint_frexp(vec4 param_0) {
|
||||
}
|
||||
|
||||
|
||||
void frexp_d80367() {
|
||||
void frexp_3c4f48() {
|
||||
frexp_result_vec4 res = tint_frexp(vec4(0.0f, 0.0f, 0.0f, 0.0f));
|
||||
}
|
||||
|
||||
@ -73,7 +73,7 @@ struct tint_symbol {
|
||||
};
|
||||
|
||||
void fragment_main() {
|
||||
frexp_d80367();
|
||||
frexp_3c4f48();
|
||||
return;
|
||||
}
|
||||
void main() {
|
||||
@ -103,7 +103,7 @@ frexp_result_vec4 tint_frexp(vec4 param_0) {
|
||||
}
|
||||
|
||||
|
||||
void frexp_d80367() {
|
||||
void frexp_3c4f48() {
|
||||
frexp_result_vec4 res = tint_frexp(vec4(0.0f, 0.0f, 0.0f, 0.0f));
|
||||
}
|
||||
|
||||
@ -113,7 +113,7 @@ struct tint_symbol {
|
||||
|
||||
layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
|
||||
void compute_main() {
|
||||
frexp_d80367();
|
||||
frexp_3c4f48();
|
||||
return;
|
||||
}
|
||||
void main() {
|
@ -9,7 +9,7 @@ frexp_result_vec4 tint_frexp(float4 param_0) {
|
||||
return result;
|
||||
}
|
||||
|
||||
void frexp_d80367() {
|
||||
void frexp_3c4f48() {
|
||||
frexp_result_vec4 res = tint_frexp(float4(0.0f, 0.0f, 0.0f, 0.0f));
|
||||
}
|
||||
|
||||
@ -18,7 +18,7 @@ struct tint_symbol {
|
||||
};
|
||||
|
||||
float4 vertex_main_inner() {
|
||||
frexp_d80367();
|
||||
frexp_3c4f48();
|
||||
return float4(0.0f, 0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
|
||||
@ -30,12 +30,12 @@ tint_symbol vertex_main() {
|
||||
}
|
||||
|
||||
void fragment_main() {
|
||||
frexp_d80367();
|
||||
frexp_3c4f48();
|
||||
return;
|
||||
}
|
||||
|
||||
[numthreads(1, 1, 1)]
|
||||
void compute_main() {
|
||||
frexp_d80367();
|
||||
frexp_3c4f48();
|
||||
return;
|
||||
}
|
@ -16,12 +16,12 @@ struct tint_symbol {
|
||||
float4 value [[position]];
|
||||
};
|
||||
|
||||
void frexp_d80367() {
|
||||
void frexp_3c4f48() {
|
||||
frexp_result_vec4 res = tint_frexp(float4());
|
||||
}
|
||||
|
||||
float4 vertex_main_inner() {
|
||||
frexp_d80367();
|
||||
frexp_3c4f48();
|
||||
return float4();
|
||||
}
|
||||
|
||||
@ -33,12 +33,12 @@ vertex tint_symbol vertex_main() {
|
||||
}
|
||||
|
||||
fragment void fragment_main() {
|
||||
frexp_d80367();
|
||||
frexp_3c4f48();
|
||||
return;
|
||||
}
|
||||
|
||||
kernel void compute_main() {
|
||||
frexp_d80367();
|
||||
frexp_3c4f48();
|
||||
return;
|
||||
}
|
||||
|
@ -13,10 +13,10 @@
|
||||
OpExecutionMode %compute_main LocalSize 1 1 1
|
||||
OpName %value "value"
|
||||
OpName %vertex_point_size "vertex_point_size"
|
||||
OpName %frexp_d80367 "frexp_d80367"
|
||||
OpName %_frexp_result_vec4 "_frexp_result_vec4"
|
||||
OpMemberName %_frexp_result_vec4 0 "sig"
|
||||
OpMemberName %_frexp_result_vec4 1 "exp"
|
||||
OpName %frexp_3c4f48 "frexp_3c4f48"
|
||||
OpName %__frexp_result_vec4 "__frexp_result_vec4"
|
||||
OpMemberName %__frexp_result_vec4 0 "sig"
|
||||
OpMemberName %__frexp_result_vec4 1 "exp"
|
||||
OpName %res "res"
|
||||
OpName %vertex_main_inner "vertex_main_inner"
|
||||
OpName %vertex_main "vertex_main"
|
||||
@ -24,8 +24,8 @@
|
||||
OpName %compute_main "compute_main"
|
||||
OpDecorate %value BuiltIn Position
|
||||
OpDecorate %vertex_point_size BuiltIn PointSize
|
||||
OpMemberDecorate %_frexp_result_vec4 0 Offset 0
|
||||
OpMemberDecorate %_frexp_result_vec4 1 Offset 16
|
||||
OpMemberDecorate %__frexp_result_vec4 0 Offset 0
|
||||
OpMemberDecorate %__frexp_result_vec4 1 Offset 16
|
||||
%float = OpTypeFloat 32
|
||||
%v4float = OpTypeVector %float 4
|
||||
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
||||
@ -38,21 +38,21 @@
|
||||
%9 = OpTypeFunction %void
|
||||
%int = OpTypeInt 32 1
|
||||
%v4int = OpTypeVector %int 4
|
||||
%_frexp_result_vec4 = OpTypeStruct %v4float %v4int
|
||||
%_ptr_Function__frexp_result_vec4 = OpTypePointer Function %_frexp_result_vec4
|
||||
%20 = OpConstantNull %_frexp_result_vec4
|
||||
%__frexp_result_vec4 = OpTypeStruct %v4float %v4int
|
||||
%_ptr_Function___frexp_result_vec4 = OpTypePointer Function %__frexp_result_vec4
|
||||
%20 = OpConstantNull %__frexp_result_vec4
|
||||
%21 = OpTypeFunction %v4float
|
||||
%float_1 = OpConstant %float 1
|
||||
%frexp_d80367 = OpFunction %void None %9
|
||||
%frexp_3c4f48 = OpFunction %void None %9
|
||||
%12 = OpLabel
|
||||
%res = OpVariable %_ptr_Function__frexp_result_vec4 Function %20
|
||||
%13 = OpExtInst %_frexp_result_vec4 %17 FrexpStruct %5
|
||||
%res = OpVariable %_ptr_Function___frexp_result_vec4 Function %20
|
||||
%13 = OpExtInst %__frexp_result_vec4 %17 FrexpStruct %5
|
||||
OpStore %res %13
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
%vertex_main_inner = OpFunction %v4float None %21
|
||||
%23 = OpLabel
|
||||
%24 = OpFunctionCall %void %frexp_d80367
|
||||
%24 = OpFunctionCall %void %frexp_3c4f48
|
||||
OpReturnValue %5
|
||||
OpFunctionEnd
|
||||
%vertex_main = OpFunction %void None %9
|
||||
@ -64,11 +64,11 @@
|
||||
OpFunctionEnd
|
||||
%fragment_main = OpFunction %void None %9
|
||||
%30 = OpLabel
|
||||
%31 = OpFunctionCall %void %frexp_d80367
|
||||
%31 = OpFunctionCall %void %frexp_3c4f48
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
%compute_main = OpFunction %void None %9
|
||||
%33 = OpLabel
|
||||
%34 = OpFunctionCall %void %frexp_d80367
|
||||
%34 = OpFunctionCall %void %frexp_3c4f48
|
||||
OpReturn
|
||||
OpFunctionEnd
|
@ -1,19 +1,19 @@
|
||||
fn frexp_d80367() {
|
||||
fn frexp_3c4f48() {
|
||||
var res = frexp(vec4<f32>());
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||
frexp_d80367();
|
||||
frexp_3c4f48();
|
||||
return vec4<f32>();
|
||||
}
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn fragment_main() {
|
||||
frexp_d80367();
|
||||
frexp_3c4f48();
|
||||
}
|
||||
|
||||
[[stage(compute), workgroup_size(1)]]
|
||||
fn compute_main() {
|
||||
frexp_d80367();
|
||||
frexp_3c4f48();
|
||||
}
|
@ -23,23 +23,23 @@
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
// fn frexp(vec<2, f32>) -> _frexp_result_vec<2>
|
||||
fn frexp_db0637() {
|
||||
// fn frexp(vec<2, f32>) -> __frexp_result_vec<2>
|
||||
fn frexp_4bdfc7() {
|
||||
var res = frexp(vec2<f32>());
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||
frexp_db0637();
|
||||
frexp_4bdfc7();
|
||||
return vec4<f32>();
|
||||
}
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn fragment_main() {
|
||||
frexp_db0637();
|
||||
frexp_4bdfc7();
|
||||
}
|
||||
|
||||
[[stage(compute), workgroup_size(1)]]
|
||||
fn compute_main() {
|
||||
frexp_db0637();
|
||||
frexp_4bdfc7();
|
||||
}
|
@ -15,7 +15,7 @@ frexp_result_vec2 tint_frexp(vec2 param_0) {
|
||||
}
|
||||
|
||||
|
||||
void frexp_db0637() {
|
||||
void frexp_4bdfc7() {
|
||||
frexp_result_vec2 res = tint_frexp(vec2(0.0f, 0.0f));
|
||||
}
|
||||
|
||||
@ -24,7 +24,7 @@ struct tint_symbol {
|
||||
};
|
||||
|
||||
vec4 vertex_main_inner() {
|
||||
frexp_db0637();
|
||||
frexp_4bdfc7();
|
||||
return vec4(0.0f, 0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
|
||||
@ -64,7 +64,7 @@ frexp_result_vec2 tint_frexp(vec2 param_0) {
|
||||
}
|
||||
|
||||
|
||||
void frexp_db0637() {
|
||||
void frexp_4bdfc7() {
|
||||
frexp_result_vec2 res = tint_frexp(vec2(0.0f, 0.0f));
|
||||
}
|
||||
|
||||
@ -73,7 +73,7 @@ struct tint_symbol {
|
||||
};
|
||||
|
||||
void fragment_main() {
|
||||
frexp_db0637();
|
||||
frexp_4bdfc7();
|
||||
return;
|
||||
}
|
||||
void main() {
|
||||
@ -103,7 +103,7 @@ frexp_result_vec2 tint_frexp(vec2 param_0) {
|
||||
}
|
||||
|
||||
|
||||
void frexp_db0637() {
|
||||
void frexp_4bdfc7() {
|
||||
frexp_result_vec2 res = tint_frexp(vec2(0.0f, 0.0f));
|
||||
}
|
||||
|
||||
@ -113,7 +113,7 @@ struct tint_symbol {
|
||||
|
||||
layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
|
||||
void compute_main() {
|
||||
frexp_db0637();
|
||||
frexp_4bdfc7();
|
||||
return;
|
||||
}
|
||||
void main() {
|
@ -9,7 +9,7 @@ frexp_result_vec2 tint_frexp(float2 param_0) {
|
||||
return result;
|
||||
}
|
||||
|
||||
void frexp_db0637() {
|
||||
void frexp_4bdfc7() {
|
||||
frexp_result_vec2 res = tint_frexp(float2(0.0f, 0.0f));
|
||||
}
|
||||
|
||||
@ -18,7 +18,7 @@ struct tint_symbol {
|
||||
};
|
||||
|
||||
float4 vertex_main_inner() {
|
||||
frexp_db0637();
|
||||
frexp_4bdfc7();
|
||||
return float4(0.0f, 0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
|
||||
@ -30,12 +30,12 @@ tint_symbol vertex_main() {
|
||||
}
|
||||
|
||||
void fragment_main() {
|
||||
frexp_db0637();
|
||||
frexp_4bdfc7();
|
||||
return;
|
||||
}
|
||||
|
||||
[numthreads(1, 1, 1)]
|
||||
void compute_main() {
|
||||
frexp_db0637();
|
||||
frexp_4bdfc7();
|
||||
return;
|
||||
}
|
@ -16,12 +16,12 @@ struct tint_symbol {
|
||||
float4 value [[position]];
|
||||
};
|
||||
|
||||
void frexp_db0637() {
|
||||
void frexp_4bdfc7() {
|
||||
frexp_result_vec2 res = tint_frexp(float2());
|
||||
}
|
||||
|
||||
float4 vertex_main_inner() {
|
||||
frexp_db0637();
|
||||
frexp_4bdfc7();
|
||||
return float4();
|
||||
}
|
||||
|
||||
@ -33,12 +33,12 @@ vertex tint_symbol vertex_main() {
|
||||
}
|
||||
|
||||
fragment void fragment_main() {
|
||||
frexp_db0637();
|
||||
frexp_4bdfc7();
|
||||
return;
|
||||
}
|
||||
|
||||
kernel void compute_main() {
|
||||
frexp_db0637();
|
||||
frexp_4bdfc7();
|
||||
return;
|
||||
}
|
||||
|
@ -13,10 +13,10 @@
|
||||
OpExecutionMode %compute_main LocalSize 1 1 1
|
||||
OpName %value "value"
|
||||
OpName %vertex_point_size "vertex_point_size"
|
||||
OpName %frexp_db0637 "frexp_db0637"
|
||||
OpName %_frexp_result_vec2 "_frexp_result_vec2"
|
||||
OpMemberName %_frexp_result_vec2 0 "sig"
|
||||
OpMemberName %_frexp_result_vec2 1 "exp"
|
||||
OpName %frexp_4bdfc7 "frexp_4bdfc7"
|
||||
OpName %__frexp_result_vec2 "__frexp_result_vec2"
|
||||
OpMemberName %__frexp_result_vec2 0 "sig"
|
||||
OpMemberName %__frexp_result_vec2 1 "exp"
|
||||
OpName %res "res"
|
||||
OpName %vertex_main_inner "vertex_main_inner"
|
||||
OpName %vertex_main "vertex_main"
|
||||
@ -24,8 +24,8 @@
|
||||
OpName %compute_main "compute_main"
|
||||
OpDecorate %value BuiltIn Position
|
||||
OpDecorate %vertex_point_size BuiltIn PointSize
|
||||
OpMemberDecorate %_frexp_result_vec2 0 Offset 0
|
||||
OpMemberDecorate %_frexp_result_vec2 1 Offset 8
|
||||
OpMemberDecorate %__frexp_result_vec2 0 Offset 0
|
||||
OpMemberDecorate %__frexp_result_vec2 1 Offset 8
|
||||
%float = OpTypeFloat 32
|
||||
%v4float = OpTypeVector %float 4
|
||||
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
||||
@ -39,22 +39,22 @@
|
||||
%v2float = OpTypeVector %float 2
|
||||
%int = OpTypeInt 32 1
|
||||
%v2int = OpTypeVector %int 2
|
||||
%_frexp_result_vec2 = OpTypeStruct %v2float %v2int
|
||||
%__frexp_result_vec2 = OpTypeStruct %v2float %v2int
|
||||
%19 = OpConstantNull %v2float
|
||||
%_ptr_Function__frexp_result_vec2 = OpTypePointer Function %_frexp_result_vec2
|
||||
%22 = OpConstantNull %_frexp_result_vec2
|
||||
%_ptr_Function___frexp_result_vec2 = OpTypePointer Function %__frexp_result_vec2
|
||||
%22 = OpConstantNull %__frexp_result_vec2
|
||||
%23 = OpTypeFunction %v4float
|
||||
%float_1 = OpConstant %float 1
|
||||
%frexp_db0637 = OpFunction %void None %9
|
||||
%frexp_4bdfc7 = OpFunction %void None %9
|
||||
%12 = OpLabel
|
||||
%res = OpVariable %_ptr_Function__frexp_result_vec2 Function %22
|
||||
%13 = OpExtInst %_frexp_result_vec2 %18 FrexpStruct %19
|
||||
%res = OpVariable %_ptr_Function___frexp_result_vec2 Function %22
|
||||
%13 = OpExtInst %__frexp_result_vec2 %18 FrexpStruct %19
|
||||
OpStore %res %13
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
%vertex_main_inner = OpFunction %v4float None %23
|
||||
%25 = OpLabel
|
||||
%26 = OpFunctionCall %void %frexp_db0637
|
||||
%26 = OpFunctionCall %void %frexp_4bdfc7
|
||||
OpReturnValue %5
|
||||
OpFunctionEnd
|
||||
%vertex_main = OpFunction %void None %9
|
||||
@ -66,11 +66,11 @@
|
||||
OpFunctionEnd
|
||||
%fragment_main = OpFunction %void None %9
|
||||
%32 = OpLabel
|
||||
%33 = OpFunctionCall %void %frexp_db0637
|
||||
%33 = OpFunctionCall %void %frexp_4bdfc7
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
%compute_main = OpFunction %void None %9
|
||||
%35 = OpLabel
|
||||
%36 = OpFunctionCall %void %frexp_db0637
|
||||
%36 = OpFunctionCall %void %frexp_4bdfc7
|
||||
OpReturn
|
||||
OpFunctionEnd
|
@ -1,19 +1,19 @@
|
||||
fn frexp_db0637() {
|
||||
fn frexp_4bdfc7() {
|
||||
var res = frexp(vec2<f32>());
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||
frexp_db0637();
|
||||
frexp_4bdfc7();
|
||||
return vec4<f32>();
|
||||
}
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn fragment_main() {
|
||||
frexp_db0637();
|
||||
frexp_4bdfc7();
|
||||
}
|
||||
|
||||
[[stage(compute), workgroup_size(1)]]
|
||||
fn compute_main() {
|
||||
frexp_db0637();
|
||||
frexp_4bdfc7();
|
||||
}
|
@ -23,23 +23,23 @@
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
// fn frexp(f32) -> _frexp_result
|
||||
fn frexp_12f1da() {
|
||||
// fn frexp(f32) -> __frexp_result
|
||||
fn frexp_eabd40() {
|
||||
var res = frexp(1.0);
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||
frexp_12f1da();
|
||||
frexp_eabd40();
|
||||
return vec4<f32>();
|
||||
}
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn fragment_main() {
|
||||
frexp_12f1da();
|
||||
frexp_eabd40();
|
||||
}
|
||||
|
||||
[[stage(compute), workgroup_size(1)]]
|
||||
fn compute_main() {
|
||||
frexp_12f1da();
|
||||
frexp_eabd40();
|
||||
}
|
@ -15,7 +15,7 @@ frexp_result tint_frexp(float param_0) {
|
||||
}
|
||||
|
||||
|
||||
void frexp_12f1da() {
|
||||
void frexp_eabd40() {
|
||||
frexp_result res = tint_frexp(1.0f);
|
||||
}
|
||||
|
||||
@ -24,7 +24,7 @@ struct tint_symbol {
|
||||
};
|
||||
|
||||
vec4 vertex_main_inner() {
|
||||
frexp_12f1da();
|
||||
frexp_eabd40();
|
||||
return vec4(0.0f, 0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
|
||||
@ -64,7 +64,7 @@ frexp_result tint_frexp(float param_0) {
|
||||
}
|
||||
|
||||
|
||||
void frexp_12f1da() {
|
||||
void frexp_eabd40() {
|
||||
frexp_result res = tint_frexp(1.0f);
|
||||
}
|
||||
|
||||
@ -73,7 +73,7 @@ struct tint_symbol {
|
||||
};
|
||||
|
||||
void fragment_main() {
|
||||
frexp_12f1da();
|
||||
frexp_eabd40();
|
||||
return;
|
||||
}
|
||||
void main() {
|
||||
@ -103,7 +103,7 @@ frexp_result tint_frexp(float param_0) {
|
||||
}
|
||||
|
||||
|
||||
void frexp_12f1da() {
|
||||
void frexp_eabd40() {
|
||||
frexp_result res = tint_frexp(1.0f);
|
||||
}
|
||||
|
||||
@ -113,7 +113,7 @@ struct tint_symbol {
|
||||
|
||||
layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
|
||||
void compute_main() {
|
||||
frexp_12f1da();
|
||||
frexp_eabd40();
|
||||
return;
|
||||
}
|
||||
void main() {
|
@ -9,7 +9,7 @@ frexp_result tint_frexp(float param_0) {
|
||||
return result;
|
||||
}
|
||||
|
||||
void frexp_12f1da() {
|
||||
void frexp_eabd40() {
|
||||
frexp_result res = tint_frexp(1.0f);
|
||||
}
|
||||
|
||||
@ -18,7 +18,7 @@ struct tint_symbol {
|
||||
};
|
||||
|
||||
float4 vertex_main_inner() {
|
||||
frexp_12f1da();
|
||||
frexp_eabd40();
|
||||
return float4(0.0f, 0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
|
||||
@ -30,12 +30,12 @@ tint_symbol vertex_main() {
|
||||
}
|
||||
|
||||
void fragment_main() {
|
||||
frexp_12f1da();
|
||||
frexp_eabd40();
|
||||
return;
|
||||
}
|
||||
|
||||
[numthreads(1, 1, 1)]
|
||||
void compute_main() {
|
||||
frexp_12f1da();
|
||||
frexp_eabd40();
|
||||
return;
|
||||
}
|
@ -16,12 +16,12 @@ struct tint_symbol {
|
||||
float4 value [[position]];
|
||||
};
|
||||
|
||||
void frexp_12f1da() {
|
||||
void frexp_eabd40() {
|
||||
frexp_result res = tint_frexp(1.0f);
|
||||
}
|
||||
|
||||
float4 vertex_main_inner() {
|
||||
frexp_12f1da();
|
||||
frexp_eabd40();
|
||||
return float4();
|
||||
}
|
||||
|
||||
@ -33,12 +33,12 @@ vertex tint_symbol vertex_main() {
|
||||
}
|
||||
|
||||
fragment void fragment_main() {
|
||||
frexp_12f1da();
|
||||
frexp_eabd40();
|
||||
return;
|
||||
}
|
||||
|
||||
kernel void compute_main() {
|
||||
frexp_12f1da();
|
||||
frexp_eabd40();
|
||||
return;
|
||||
}
|
||||
|
@ -13,10 +13,10 @@
|
||||
OpExecutionMode %compute_main LocalSize 1 1 1
|
||||
OpName %value "value"
|
||||
OpName %vertex_point_size "vertex_point_size"
|
||||
OpName %frexp_12f1da "frexp_12f1da"
|
||||
OpName %_frexp_result "_frexp_result"
|
||||
OpMemberName %_frexp_result 0 "sig"
|
||||
OpMemberName %_frexp_result 1 "exp"
|
||||
OpName %frexp_eabd40 "frexp_eabd40"
|
||||
OpName %__frexp_result "__frexp_result"
|
||||
OpMemberName %__frexp_result 0 "sig"
|
||||
OpMemberName %__frexp_result 1 "exp"
|
||||
OpName %res "res"
|
||||
OpName %vertex_main_inner "vertex_main_inner"
|
||||
OpName %vertex_main "vertex_main"
|
||||
@ -24,8 +24,8 @@
|
||||
OpName %compute_main "compute_main"
|
||||
OpDecorate %value BuiltIn Position
|
||||
OpDecorate %vertex_point_size BuiltIn PointSize
|
||||
OpMemberDecorate %_frexp_result 0 Offset 0
|
||||
OpMemberDecorate %_frexp_result 1 Offset 4
|
||||
OpMemberDecorate %__frexp_result 0 Offset 0
|
||||
OpMemberDecorate %__frexp_result 1 Offset 4
|
||||
%float = OpTypeFloat 32
|
||||
%v4float = OpTypeVector %float 4
|
||||
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
||||
@ -37,21 +37,21 @@
|
||||
%void = OpTypeVoid
|
||||
%9 = OpTypeFunction %void
|
||||
%int = OpTypeInt 32 1
|
||||
%_frexp_result = OpTypeStruct %float %int
|
||||
%__frexp_result = OpTypeStruct %float %int
|
||||
%float_1 = OpConstant %float 1
|
||||
%_ptr_Function__frexp_result = OpTypePointer Function %_frexp_result
|
||||
%20 = OpConstantNull %_frexp_result
|
||||
%_ptr_Function___frexp_result = OpTypePointer Function %__frexp_result
|
||||
%20 = OpConstantNull %__frexp_result
|
||||
%21 = OpTypeFunction %v4float
|
||||
%frexp_12f1da = OpFunction %void None %9
|
||||
%frexp_eabd40 = OpFunction %void None %9
|
||||
%12 = OpLabel
|
||||
%res = OpVariable %_ptr_Function__frexp_result Function %20
|
||||
%13 = OpExtInst %_frexp_result %16 FrexpStruct %float_1
|
||||
%res = OpVariable %_ptr_Function___frexp_result Function %20
|
||||
%13 = OpExtInst %__frexp_result %16 FrexpStruct %float_1
|
||||
OpStore %res %13
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
%vertex_main_inner = OpFunction %v4float None %21
|
||||
%23 = OpLabel
|
||||
%24 = OpFunctionCall %void %frexp_12f1da
|
||||
%24 = OpFunctionCall %void %frexp_eabd40
|
||||
OpReturnValue %5
|
||||
OpFunctionEnd
|
||||
%vertex_main = OpFunction %void None %9
|
||||
@ -63,11 +63,11 @@
|
||||
OpFunctionEnd
|
||||
%fragment_main = OpFunction %void None %9
|
||||
%29 = OpLabel
|
||||
%30 = OpFunctionCall %void %frexp_12f1da
|
||||
%30 = OpFunctionCall %void %frexp_eabd40
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
%compute_main = OpFunction %void None %9
|
||||
%32 = OpLabel
|
||||
%33 = OpFunctionCall %void %frexp_12f1da
|
||||
%33 = OpFunctionCall %void %frexp_eabd40
|
||||
OpReturn
|
||||
OpFunctionEnd
|
@ -1,19 +1,19 @@
|
||||
fn frexp_12f1da() {
|
||||
fn frexp_eabd40() {
|
||||
var res = frexp(1.0);
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||
frexp_12f1da();
|
||||
frexp_eabd40();
|
||||
return vec4<f32>();
|
||||
}
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn fragment_main() {
|
||||
frexp_12f1da();
|
||||
frexp_eabd40();
|
||||
}
|
||||
|
||||
[[stage(compute), workgroup_size(1)]]
|
||||
fn compute_main() {
|
||||
frexp_12f1da();
|
||||
frexp_eabd40();
|
||||
}
|
@ -23,23 +23,23 @@
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
// fn modf(f32) -> _modf_result
|
||||
fn modf_684d46() {
|
||||
// fn modf(f32) -> __modf_result
|
||||
fn modf_180fed() {
|
||||
var res = modf(1.0);
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||
modf_684d46();
|
||||
modf_180fed();
|
||||
return vec4<f32>();
|
||||
}
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn fragment_main() {
|
||||
modf_684d46();
|
||||
modf_180fed();
|
||||
}
|
||||
|
||||
[[stage(compute), workgroup_size(1)]]
|
||||
fn compute_main() {
|
||||
modf_684d46();
|
||||
modf_180fed();
|
||||
}
|
@ -15,7 +15,7 @@ modf_result tint_modf(float param_0) {
|
||||
}
|
||||
|
||||
|
||||
void modf_684d46() {
|
||||
void modf_180fed() {
|
||||
modf_result res = tint_modf(1.0f);
|
||||
}
|
||||
|
||||
@ -24,7 +24,7 @@ struct tint_symbol {
|
||||
};
|
||||
|
||||
vec4 vertex_main_inner() {
|
||||
modf_684d46();
|
||||
modf_180fed();
|
||||
return vec4(0.0f, 0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
|
||||
@ -64,7 +64,7 @@ modf_result tint_modf(float param_0) {
|
||||
}
|
||||
|
||||
|
||||
void modf_684d46() {
|
||||
void modf_180fed() {
|
||||
modf_result res = tint_modf(1.0f);
|
||||
}
|
||||
|
||||
@ -73,7 +73,7 @@ struct tint_symbol {
|
||||
};
|
||||
|
||||
void fragment_main() {
|
||||
modf_684d46();
|
||||
modf_180fed();
|
||||
return;
|
||||
}
|
||||
void main() {
|
||||
@ -103,7 +103,7 @@ modf_result tint_modf(float param_0) {
|
||||
}
|
||||
|
||||
|
||||
void modf_684d46() {
|
||||
void modf_180fed() {
|
||||
modf_result res = tint_modf(1.0f);
|
||||
}
|
||||
|
||||
@ -113,7 +113,7 @@ struct tint_symbol {
|
||||
|
||||
layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
|
||||
void compute_main() {
|
||||
modf_684d46();
|
||||
modf_180fed();
|
||||
return;
|
||||
}
|
||||
void main() {
|
@ -9,7 +9,7 @@ modf_result tint_modf(float param_0) {
|
||||
return result;
|
||||
}
|
||||
|
||||
void modf_684d46() {
|
||||
void modf_180fed() {
|
||||
modf_result res = tint_modf(1.0f);
|
||||
}
|
||||
|
||||
@ -18,7 +18,7 @@ struct tint_symbol {
|
||||
};
|
||||
|
||||
float4 vertex_main_inner() {
|
||||
modf_684d46();
|
||||
modf_180fed();
|
||||
return float4(0.0f, 0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
|
||||
@ -30,12 +30,12 @@ tint_symbol vertex_main() {
|
||||
}
|
||||
|
||||
void fragment_main() {
|
||||
modf_684d46();
|
||||
modf_180fed();
|
||||
return;
|
||||
}
|
||||
|
||||
[numthreads(1, 1, 1)]
|
||||
void compute_main() {
|
||||
modf_684d46();
|
||||
modf_180fed();
|
||||
return;
|
||||
}
|
@ -16,12 +16,12 @@ struct tint_symbol {
|
||||
float4 value [[position]];
|
||||
};
|
||||
|
||||
void modf_684d46() {
|
||||
void modf_180fed() {
|
||||
modf_result res = tint_modf(1.0f);
|
||||
}
|
||||
|
||||
float4 vertex_main_inner() {
|
||||
modf_684d46();
|
||||
modf_180fed();
|
||||
return float4();
|
||||
}
|
||||
|
||||
@ -33,12 +33,12 @@ vertex tint_symbol vertex_main() {
|
||||
}
|
||||
|
||||
fragment void fragment_main() {
|
||||
modf_684d46();
|
||||
modf_180fed();
|
||||
return;
|
||||
}
|
||||
|
||||
kernel void compute_main() {
|
||||
modf_684d46();
|
||||
modf_180fed();
|
||||
return;
|
||||
}
|
||||
|
@ -13,10 +13,10 @@
|
||||
OpExecutionMode %compute_main LocalSize 1 1 1
|
||||
OpName %value "value"
|
||||
OpName %vertex_point_size "vertex_point_size"
|
||||
OpName %modf_684d46 "modf_684d46"
|
||||
OpName %_modf_result "_modf_result"
|
||||
OpMemberName %_modf_result 0 "fract"
|
||||
OpMemberName %_modf_result 1 "whole"
|
||||
OpName %modf_180fed "modf_180fed"
|
||||
OpName %__modf_result "__modf_result"
|
||||
OpMemberName %__modf_result 0 "fract"
|
||||
OpMemberName %__modf_result 1 "whole"
|
||||
OpName %res "res"
|
||||
OpName %vertex_main_inner "vertex_main_inner"
|
||||
OpName %vertex_main "vertex_main"
|
||||
@ -24,8 +24,8 @@
|
||||
OpName %compute_main "compute_main"
|
||||
OpDecorate %value BuiltIn Position
|
||||
OpDecorate %vertex_point_size BuiltIn PointSize
|
||||
OpMemberDecorate %_modf_result 0 Offset 0
|
||||
OpMemberDecorate %_modf_result 1 Offset 4
|
||||
OpMemberDecorate %__modf_result 0 Offset 0
|
||||
OpMemberDecorate %__modf_result 1 Offset 4
|
||||
%float = OpTypeFloat 32
|
||||
%v4float = OpTypeVector %float 4
|
||||
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
||||
@ -36,21 +36,21 @@
|
||||
%vertex_point_size = OpVariable %_ptr_Output_float Output %8
|
||||
%void = OpTypeVoid
|
||||
%9 = OpTypeFunction %void
|
||||
%_modf_result = OpTypeStruct %float %float
|
||||
%__modf_result = OpTypeStruct %float %float
|
||||
%float_1 = OpConstant %float 1
|
||||
%_ptr_Function__modf_result = OpTypePointer Function %_modf_result
|
||||
%19 = OpConstantNull %_modf_result
|
||||
%_ptr_Function___modf_result = OpTypePointer Function %__modf_result
|
||||
%19 = OpConstantNull %__modf_result
|
||||
%20 = OpTypeFunction %v4float
|
||||
%modf_684d46 = OpFunction %void None %9
|
||||
%modf_180fed = OpFunction %void None %9
|
||||
%12 = OpLabel
|
||||
%res = OpVariable %_ptr_Function__modf_result Function %19
|
||||
%13 = OpExtInst %_modf_result %15 ModfStruct %float_1
|
||||
%res = OpVariable %_ptr_Function___modf_result Function %19
|
||||
%13 = OpExtInst %__modf_result %15 ModfStruct %float_1
|
||||
OpStore %res %13
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
%vertex_main_inner = OpFunction %v4float None %20
|
||||
%22 = OpLabel
|
||||
%23 = OpFunctionCall %void %modf_684d46
|
||||
%23 = OpFunctionCall %void %modf_180fed
|
||||
OpReturnValue %5
|
||||
OpFunctionEnd
|
||||
%vertex_main = OpFunction %void None %9
|
||||
@ -62,11 +62,11 @@
|
||||
OpFunctionEnd
|
||||
%fragment_main = OpFunction %void None %9
|
||||
%28 = OpLabel
|
||||
%29 = OpFunctionCall %void %modf_684d46
|
||||
%29 = OpFunctionCall %void %modf_180fed
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
%compute_main = OpFunction %void None %9
|
||||
%31 = OpLabel
|
||||
%32 = OpFunctionCall %void %modf_684d46
|
||||
%32 = OpFunctionCall %void %modf_180fed
|
||||
OpReturn
|
||||
OpFunctionEnd
|
@ -1,19 +1,19 @@
|
||||
fn modf_684d46() {
|
||||
fn modf_180fed() {
|
||||
var res = modf(1.0);
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||
modf_684d46();
|
||||
modf_180fed();
|
||||
return vec4<f32>();
|
||||
}
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn fragment_main() {
|
||||
modf_684d46();
|
||||
modf_180fed();
|
||||
}
|
||||
|
||||
[[stage(compute), workgroup_size(1)]]
|
||||
fn compute_main() {
|
||||
modf_684d46();
|
||||
modf_180fed();
|
||||
}
|
@ -23,23 +23,23 @@
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
// fn modf(vec<3, f32>) -> _modf_result_vec<3>
|
||||
fn modf_2199f1() {
|
||||
// fn modf(vec<3, f32>) -> __modf_result_vec<3>
|
||||
fn modf_9b75f7() {
|
||||
var res = modf(vec3<f32>());
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||
modf_2199f1();
|
||||
modf_9b75f7();
|
||||
return vec4<f32>();
|
||||
}
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn fragment_main() {
|
||||
modf_2199f1();
|
||||
modf_9b75f7();
|
||||
}
|
||||
|
||||
[[stage(compute), workgroup_size(1)]]
|
||||
fn compute_main() {
|
||||
modf_2199f1();
|
||||
modf_9b75f7();
|
||||
}
|
@ -15,7 +15,7 @@ modf_result_vec3 tint_modf(vec3 param_0) {
|
||||
}
|
||||
|
||||
|
||||
void modf_2199f1() {
|
||||
void modf_9b75f7() {
|
||||
modf_result_vec3 res = tint_modf(vec3(0.0f, 0.0f, 0.0f));
|
||||
}
|
||||
|
||||
@ -24,7 +24,7 @@ struct tint_symbol {
|
||||
};
|
||||
|
||||
vec4 vertex_main_inner() {
|
||||
modf_2199f1();
|
||||
modf_9b75f7();
|
||||
return vec4(0.0f, 0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
|
||||
@ -64,7 +64,7 @@ modf_result_vec3 tint_modf(vec3 param_0) {
|
||||
}
|
||||
|
||||
|
||||
void modf_2199f1() {
|
||||
void modf_9b75f7() {
|
||||
modf_result_vec3 res = tint_modf(vec3(0.0f, 0.0f, 0.0f));
|
||||
}
|
||||
|
||||
@ -73,7 +73,7 @@ struct tint_symbol {
|
||||
};
|
||||
|
||||
void fragment_main() {
|
||||
modf_2199f1();
|
||||
modf_9b75f7();
|
||||
return;
|
||||
}
|
||||
void main() {
|
||||
@ -103,7 +103,7 @@ modf_result_vec3 tint_modf(vec3 param_0) {
|
||||
}
|
||||
|
||||
|
||||
void modf_2199f1() {
|
||||
void modf_9b75f7() {
|
||||
modf_result_vec3 res = tint_modf(vec3(0.0f, 0.0f, 0.0f));
|
||||
}
|
||||
|
||||
@ -113,7 +113,7 @@ struct tint_symbol {
|
||||
|
||||
layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
|
||||
void compute_main() {
|
||||
modf_2199f1();
|
||||
modf_9b75f7();
|
||||
return;
|
||||
}
|
||||
void main() {
|
@ -9,7 +9,7 @@ modf_result_vec3 tint_modf(float3 param_0) {
|
||||
return result;
|
||||
}
|
||||
|
||||
void modf_2199f1() {
|
||||
void modf_9b75f7() {
|
||||
modf_result_vec3 res = tint_modf(float3(0.0f, 0.0f, 0.0f));
|
||||
}
|
||||
|
||||
@ -18,7 +18,7 @@ struct tint_symbol {
|
||||
};
|
||||
|
||||
float4 vertex_main_inner() {
|
||||
modf_2199f1();
|
||||
modf_9b75f7();
|
||||
return float4(0.0f, 0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
|
||||
@ -30,12 +30,12 @@ tint_symbol vertex_main() {
|
||||
}
|
||||
|
||||
void fragment_main() {
|
||||
modf_2199f1();
|
||||
modf_9b75f7();
|
||||
return;
|
||||
}
|
||||
|
||||
[numthreads(1, 1, 1)]
|
||||
void compute_main() {
|
||||
modf_2199f1();
|
||||
modf_9b75f7();
|
||||
return;
|
||||
}
|
@ -16,12 +16,12 @@ struct tint_symbol {
|
||||
float4 value [[position]];
|
||||
};
|
||||
|
||||
void modf_2199f1() {
|
||||
void modf_9b75f7() {
|
||||
modf_result_vec3 res = tint_modf(float3());
|
||||
}
|
||||
|
||||
float4 vertex_main_inner() {
|
||||
modf_2199f1();
|
||||
modf_9b75f7();
|
||||
return float4();
|
||||
}
|
||||
|
||||
@ -33,12 +33,12 @@ vertex tint_symbol vertex_main() {
|
||||
}
|
||||
|
||||
fragment void fragment_main() {
|
||||
modf_2199f1();
|
||||
modf_9b75f7();
|
||||
return;
|
||||
}
|
||||
|
||||
kernel void compute_main() {
|
||||
modf_2199f1();
|
||||
modf_9b75f7();
|
||||
return;
|
||||
}
|
||||
|
@ -13,10 +13,10 @@
|
||||
OpExecutionMode %compute_main LocalSize 1 1 1
|
||||
OpName %value "value"
|
||||
OpName %vertex_point_size "vertex_point_size"
|
||||
OpName %modf_2199f1 "modf_2199f1"
|
||||
OpName %_modf_result_vec3 "_modf_result_vec3"
|
||||
OpMemberName %_modf_result_vec3 0 "fract"
|
||||
OpMemberName %_modf_result_vec3 1 "whole"
|
||||
OpName %modf_9b75f7 "modf_9b75f7"
|
||||
OpName %__modf_result_vec3 "__modf_result_vec3"
|
||||
OpMemberName %__modf_result_vec3 0 "fract"
|
||||
OpMemberName %__modf_result_vec3 1 "whole"
|
||||
OpName %res "res"
|
||||
OpName %vertex_main_inner "vertex_main_inner"
|
||||
OpName %vertex_main "vertex_main"
|
||||
@ -24,8 +24,8 @@
|
||||
OpName %compute_main "compute_main"
|
||||
OpDecorate %value BuiltIn Position
|
||||
OpDecorate %vertex_point_size BuiltIn PointSize
|
||||
OpMemberDecorate %_modf_result_vec3 0 Offset 0
|
||||
OpMemberDecorate %_modf_result_vec3 1 Offset 16
|
||||
OpMemberDecorate %__modf_result_vec3 0 Offset 0
|
||||
OpMemberDecorate %__modf_result_vec3 1 Offset 16
|
||||
%float = OpTypeFloat 32
|
||||
%v4float = OpTypeVector %float 4
|
||||
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
||||
@ -37,22 +37,22 @@
|
||||
%void = OpTypeVoid
|
||||
%9 = OpTypeFunction %void
|
||||
%v3float = OpTypeVector %float 3
|
||||
%_modf_result_vec3 = OpTypeStruct %v3float %v3float
|
||||
%__modf_result_vec3 = OpTypeStruct %v3float %v3float
|
||||
%17 = OpConstantNull %v3float
|
||||
%_ptr_Function__modf_result_vec3 = OpTypePointer Function %_modf_result_vec3
|
||||
%20 = OpConstantNull %_modf_result_vec3
|
||||
%_ptr_Function___modf_result_vec3 = OpTypePointer Function %__modf_result_vec3
|
||||
%20 = OpConstantNull %__modf_result_vec3
|
||||
%21 = OpTypeFunction %v4float
|
||||
%float_1 = OpConstant %float 1
|
||||
%modf_2199f1 = OpFunction %void None %9
|
||||
%modf_9b75f7 = OpFunction %void None %9
|
||||
%12 = OpLabel
|
||||
%res = OpVariable %_ptr_Function__modf_result_vec3 Function %20
|
||||
%13 = OpExtInst %_modf_result_vec3 %16 ModfStruct %17
|
||||
%res = OpVariable %_ptr_Function___modf_result_vec3 Function %20
|
||||
%13 = OpExtInst %__modf_result_vec3 %16 ModfStruct %17
|
||||
OpStore %res %13
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
%vertex_main_inner = OpFunction %v4float None %21
|
||||
%23 = OpLabel
|
||||
%24 = OpFunctionCall %void %modf_2199f1
|
||||
%24 = OpFunctionCall %void %modf_9b75f7
|
||||
OpReturnValue %5
|
||||
OpFunctionEnd
|
||||
%vertex_main = OpFunction %void None %9
|
||||
@ -64,11 +64,11 @@
|
||||
OpFunctionEnd
|
||||
%fragment_main = OpFunction %void None %9
|
||||
%30 = OpLabel
|
||||
%31 = OpFunctionCall %void %modf_2199f1
|
||||
%31 = OpFunctionCall %void %modf_9b75f7
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
%compute_main = OpFunction %void None %9
|
||||
%33 = OpLabel
|
||||
%34 = OpFunctionCall %void %modf_2199f1
|
||||
%34 = OpFunctionCall %void %modf_9b75f7
|
||||
OpReturn
|
||||
OpFunctionEnd
|
@ -1,19 +1,19 @@
|
||||
fn modf_2199f1() {
|
||||
fn modf_9b75f7() {
|
||||
var res = modf(vec3<f32>());
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||
modf_2199f1();
|
||||
modf_9b75f7();
|
||||
return vec4<f32>();
|
||||
}
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn fragment_main() {
|
||||
modf_2199f1();
|
||||
modf_9b75f7();
|
||||
}
|
||||
|
||||
[[stage(compute), workgroup_size(1)]]
|
||||
fn compute_main() {
|
||||
modf_2199f1();
|
||||
modf_9b75f7();
|
||||
}
|
@ -23,23 +23,23 @@
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
// fn modf(vec<4, f32>) -> _modf_result_vec<4>
|
||||
fn modf_9b44a9() {
|
||||
// fn modf(vec<4, f32>) -> __modf_result_vec<4>
|
||||
fn modf_ec2dbc() {
|
||||
var res = modf(vec4<f32>());
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||
modf_9b44a9();
|
||||
modf_ec2dbc();
|
||||
return vec4<f32>();
|
||||
}
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn fragment_main() {
|
||||
modf_9b44a9();
|
||||
modf_ec2dbc();
|
||||
}
|
||||
|
||||
[[stage(compute), workgroup_size(1)]]
|
||||
fn compute_main() {
|
||||
modf_9b44a9();
|
||||
modf_ec2dbc();
|
||||
}
|
@ -15,7 +15,7 @@ modf_result_vec4 tint_modf(vec4 param_0) {
|
||||
}
|
||||
|
||||
|
||||
void modf_9b44a9() {
|
||||
void modf_ec2dbc() {
|
||||
modf_result_vec4 res = tint_modf(vec4(0.0f, 0.0f, 0.0f, 0.0f));
|
||||
}
|
||||
|
||||
@ -24,7 +24,7 @@ struct tint_symbol {
|
||||
};
|
||||
|
||||
vec4 vertex_main_inner() {
|
||||
modf_9b44a9();
|
||||
modf_ec2dbc();
|
||||
return vec4(0.0f, 0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
|
||||
@ -64,7 +64,7 @@ modf_result_vec4 tint_modf(vec4 param_0) {
|
||||
}
|
||||
|
||||
|
||||
void modf_9b44a9() {
|
||||
void modf_ec2dbc() {
|
||||
modf_result_vec4 res = tint_modf(vec4(0.0f, 0.0f, 0.0f, 0.0f));
|
||||
}
|
||||
|
||||
@ -73,7 +73,7 @@ struct tint_symbol {
|
||||
};
|
||||
|
||||
void fragment_main() {
|
||||
modf_9b44a9();
|
||||
modf_ec2dbc();
|
||||
return;
|
||||
}
|
||||
void main() {
|
||||
@ -103,7 +103,7 @@ modf_result_vec4 tint_modf(vec4 param_0) {
|
||||
}
|
||||
|
||||
|
||||
void modf_9b44a9() {
|
||||
void modf_ec2dbc() {
|
||||
modf_result_vec4 res = tint_modf(vec4(0.0f, 0.0f, 0.0f, 0.0f));
|
||||
}
|
||||
|
||||
@ -113,7 +113,7 @@ struct tint_symbol {
|
||||
|
||||
layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
|
||||
void compute_main() {
|
||||
modf_9b44a9();
|
||||
modf_ec2dbc();
|
||||
return;
|
||||
}
|
||||
void main() {
|
@ -9,7 +9,7 @@ modf_result_vec4 tint_modf(float4 param_0) {
|
||||
return result;
|
||||
}
|
||||
|
||||
void modf_9b44a9() {
|
||||
void modf_ec2dbc() {
|
||||
modf_result_vec4 res = tint_modf(float4(0.0f, 0.0f, 0.0f, 0.0f));
|
||||
}
|
||||
|
||||
@ -18,7 +18,7 @@ struct tint_symbol {
|
||||
};
|
||||
|
||||
float4 vertex_main_inner() {
|
||||
modf_9b44a9();
|
||||
modf_ec2dbc();
|
||||
return float4(0.0f, 0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
|
||||
@ -30,12 +30,12 @@ tint_symbol vertex_main() {
|
||||
}
|
||||
|
||||
void fragment_main() {
|
||||
modf_9b44a9();
|
||||
modf_ec2dbc();
|
||||
return;
|
||||
}
|
||||
|
||||
[numthreads(1, 1, 1)]
|
||||
void compute_main() {
|
||||
modf_9b44a9();
|
||||
modf_ec2dbc();
|
||||
return;
|
||||
}
|
@ -16,12 +16,12 @@ struct tint_symbol {
|
||||
float4 value [[position]];
|
||||
};
|
||||
|
||||
void modf_9b44a9() {
|
||||
void modf_ec2dbc() {
|
||||
modf_result_vec4 res = tint_modf(float4());
|
||||
}
|
||||
|
||||
float4 vertex_main_inner() {
|
||||
modf_9b44a9();
|
||||
modf_ec2dbc();
|
||||
return float4();
|
||||
}
|
||||
|
||||
@ -33,12 +33,12 @@ vertex tint_symbol vertex_main() {
|
||||
}
|
||||
|
||||
fragment void fragment_main() {
|
||||
modf_9b44a9();
|
||||
modf_ec2dbc();
|
||||
return;
|
||||
}
|
||||
|
||||
kernel void compute_main() {
|
||||
modf_9b44a9();
|
||||
modf_ec2dbc();
|
||||
return;
|
||||
}
|
||||
|
@ -13,10 +13,10 @@
|
||||
OpExecutionMode %compute_main LocalSize 1 1 1
|
||||
OpName %value "value"
|
||||
OpName %vertex_point_size "vertex_point_size"
|
||||
OpName %modf_9b44a9 "modf_9b44a9"
|
||||
OpName %_modf_result_vec4 "_modf_result_vec4"
|
||||
OpMemberName %_modf_result_vec4 0 "fract"
|
||||
OpMemberName %_modf_result_vec4 1 "whole"
|
||||
OpName %modf_ec2dbc "modf_ec2dbc"
|
||||
OpName %__modf_result_vec4 "__modf_result_vec4"
|
||||
OpMemberName %__modf_result_vec4 0 "fract"
|
||||
OpMemberName %__modf_result_vec4 1 "whole"
|
||||
OpName %res "res"
|
||||
OpName %vertex_main_inner "vertex_main_inner"
|
||||
OpName %vertex_main "vertex_main"
|
||||
@ -24,8 +24,8 @@
|
||||
OpName %compute_main "compute_main"
|
||||
OpDecorate %value BuiltIn Position
|
||||
OpDecorate %vertex_point_size BuiltIn PointSize
|
||||
OpMemberDecorate %_modf_result_vec4 0 Offset 0
|
||||
OpMemberDecorate %_modf_result_vec4 1 Offset 16
|
||||
OpMemberDecorate %__modf_result_vec4 0 Offset 0
|
||||
OpMemberDecorate %__modf_result_vec4 1 Offset 16
|
||||
%float = OpTypeFloat 32
|
||||
%v4float = OpTypeVector %float 4
|
||||
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
||||
@ -36,21 +36,21 @@
|
||||
%vertex_point_size = OpVariable %_ptr_Output_float Output %8
|
||||
%void = OpTypeVoid
|
||||
%9 = OpTypeFunction %void
|
||||
%_modf_result_vec4 = OpTypeStruct %v4float %v4float
|
||||
%_ptr_Function__modf_result_vec4 = OpTypePointer Function %_modf_result_vec4
|
||||
%18 = OpConstantNull %_modf_result_vec4
|
||||
%__modf_result_vec4 = OpTypeStruct %v4float %v4float
|
||||
%_ptr_Function___modf_result_vec4 = OpTypePointer Function %__modf_result_vec4
|
||||
%18 = OpConstantNull %__modf_result_vec4
|
||||
%19 = OpTypeFunction %v4float
|
||||
%float_1 = OpConstant %float 1
|
||||
%modf_9b44a9 = OpFunction %void None %9
|
||||
%modf_ec2dbc = OpFunction %void None %9
|
||||
%12 = OpLabel
|
||||
%res = OpVariable %_ptr_Function__modf_result_vec4 Function %18
|
||||
%13 = OpExtInst %_modf_result_vec4 %15 ModfStruct %5
|
||||
%res = OpVariable %_ptr_Function___modf_result_vec4 Function %18
|
||||
%13 = OpExtInst %__modf_result_vec4 %15 ModfStruct %5
|
||||
OpStore %res %13
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
%vertex_main_inner = OpFunction %v4float None %19
|
||||
%21 = OpLabel
|
||||
%22 = OpFunctionCall %void %modf_9b44a9
|
||||
%22 = OpFunctionCall %void %modf_ec2dbc
|
||||
OpReturnValue %5
|
||||
OpFunctionEnd
|
||||
%vertex_main = OpFunction %void None %9
|
||||
@ -62,11 +62,11 @@
|
||||
OpFunctionEnd
|
||||
%fragment_main = OpFunction %void None %9
|
||||
%28 = OpLabel
|
||||
%29 = OpFunctionCall %void %modf_9b44a9
|
||||
%29 = OpFunctionCall %void %modf_ec2dbc
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
%compute_main = OpFunction %void None %9
|
||||
%31 = OpLabel
|
||||
%32 = OpFunctionCall %void %modf_9b44a9
|
||||
%32 = OpFunctionCall %void %modf_ec2dbc
|
||||
OpReturn
|
||||
OpFunctionEnd
|
@ -1,19 +1,19 @@
|
||||
fn modf_9b44a9() {
|
||||
fn modf_ec2dbc() {
|
||||
var res = modf(vec4<f32>());
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||
modf_9b44a9();
|
||||
modf_ec2dbc();
|
||||
return vec4<f32>();
|
||||
}
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn fragment_main() {
|
||||
modf_9b44a9();
|
||||
modf_ec2dbc();
|
||||
}
|
||||
|
||||
[[stage(compute), workgroup_size(1)]]
|
||||
fn compute_main() {
|
||||
modf_9b44a9();
|
||||
modf_ec2dbc();
|
||||
}
|
@ -23,23 +23,23 @@
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
// fn modf(vec<2, f32>) -> _modf_result_vec<2>
|
||||
fn modf_c87851() {
|
||||
// fn modf(vec<2, f32>) -> __modf_result_vec<2>
|
||||
fn modf_f5f20d() {
|
||||
var res = modf(vec2<f32>());
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||
modf_c87851();
|
||||
modf_f5f20d();
|
||||
return vec4<f32>();
|
||||
}
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn fragment_main() {
|
||||
modf_c87851();
|
||||
modf_f5f20d();
|
||||
}
|
||||
|
||||
[[stage(compute), workgroup_size(1)]]
|
||||
fn compute_main() {
|
||||
modf_c87851();
|
||||
modf_f5f20d();
|
||||
}
|
@ -15,7 +15,7 @@ modf_result_vec2 tint_modf(vec2 param_0) {
|
||||
}
|
||||
|
||||
|
||||
void modf_c87851() {
|
||||
void modf_f5f20d() {
|
||||
modf_result_vec2 res = tint_modf(vec2(0.0f, 0.0f));
|
||||
}
|
||||
|
||||
@ -24,7 +24,7 @@ struct tint_symbol {
|
||||
};
|
||||
|
||||
vec4 vertex_main_inner() {
|
||||
modf_c87851();
|
||||
modf_f5f20d();
|
||||
return vec4(0.0f, 0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
|
||||
@ -64,7 +64,7 @@ modf_result_vec2 tint_modf(vec2 param_0) {
|
||||
}
|
||||
|
||||
|
||||
void modf_c87851() {
|
||||
void modf_f5f20d() {
|
||||
modf_result_vec2 res = tint_modf(vec2(0.0f, 0.0f));
|
||||
}
|
||||
|
||||
@ -73,7 +73,7 @@ struct tint_symbol {
|
||||
};
|
||||
|
||||
void fragment_main() {
|
||||
modf_c87851();
|
||||
modf_f5f20d();
|
||||
return;
|
||||
}
|
||||
void main() {
|
||||
@ -103,7 +103,7 @@ modf_result_vec2 tint_modf(vec2 param_0) {
|
||||
}
|
||||
|
||||
|
||||
void modf_c87851() {
|
||||
void modf_f5f20d() {
|
||||
modf_result_vec2 res = tint_modf(vec2(0.0f, 0.0f));
|
||||
}
|
||||
|
||||
@ -113,7 +113,7 @@ struct tint_symbol {
|
||||
|
||||
layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
|
||||
void compute_main() {
|
||||
modf_c87851();
|
||||
modf_f5f20d();
|
||||
return;
|
||||
}
|
||||
void main() {
|
@ -9,7 +9,7 @@ modf_result_vec2 tint_modf(float2 param_0) {
|
||||
return result;
|
||||
}
|
||||
|
||||
void modf_c87851() {
|
||||
void modf_f5f20d() {
|
||||
modf_result_vec2 res = tint_modf(float2(0.0f, 0.0f));
|
||||
}
|
||||
|
||||
@ -18,7 +18,7 @@ struct tint_symbol {
|
||||
};
|
||||
|
||||
float4 vertex_main_inner() {
|
||||
modf_c87851();
|
||||
modf_f5f20d();
|
||||
return float4(0.0f, 0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
|
||||
@ -30,12 +30,12 @@ tint_symbol vertex_main() {
|
||||
}
|
||||
|
||||
void fragment_main() {
|
||||
modf_c87851();
|
||||
modf_f5f20d();
|
||||
return;
|
||||
}
|
||||
|
||||
[numthreads(1, 1, 1)]
|
||||
void compute_main() {
|
||||
modf_c87851();
|
||||
modf_f5f20d();
|
||||
return;
|
||||
}
|
@ -16,12 +16,12 @@ struct tint_symbol {
|
||||
float4 value [[position]];
|
||||
};
|
||||
|
||||
void modf_c87851() {
|
||||
void modf_f5f20d() {
|
||||
modf_result_vec2 res = tint_modf(float2());
|
||||
}
|
||||
|
||||
float4 vertex_main_inner() {
|
||||
modf_c87851();
|
||||
modf_f5f20d();
|
||||
return float4();
|
||||
}
|
||||
|
||||
@ -33,12 +33,12 @@ vertex tint_symbol vertex_main() {
|
||||
}
|
||||
|
||||
fragment void fragment_main() {
|
||||
modf_c87851();
|
||||
modf_f5f20d();
|
||||
return;
|
||||
}
|
||||
|
||||
kernel void compute_main() {
|
||||
modf_c87851();
|
||||
modf_f5f20d();
|
||||
return;
|
||||
}
|
||||
|
@ -13,10 +13,10 @@
|
||||
OpExecutionMode %compute_main LocalSize 1 1 1
|
||||
OpName %value "value"
|
||||
OpName %vertex_point_size "vertex_point_size"
|
||||
OpName %modf_c87851 "modf_c87851"
|
||||
OpName %_modf_result_vec2 "_modf_result_vec2"
|
||||
OpMemberName %_modf_result_vec2 0 "fract"
|
||||
OpMemberName %_modf_result_vec2 1 "whole"
|
||||
OpName %modf_f5f20d "modf_f5f20d"
|
||||
OpName %__modf_result_vec2 "__modf_result_vec2"
|
||||
OpMemberName %__modf_result_vec2 0 "fract"
|
||||
OpMemberName %__modf_result_vec2 1 "whole"
|
||||
OpName %res "res"
|
||||
OpName %vertex_main_inner "vertex_main_inner"
|
||||
OpName %vertex_main "vertex_main"
|
||||
@ -24,8 +24,8 @@
|
||||
OpName %compute_main "compute_main"
|
||||
OpDecorate %value BuiltIn Position
|
||||
OpDecorate %vertex_point_size BuiltIn PointSize
|
||||
OpMemberDecorate %_modf_result_vec2 0 Offset 0
|
||||
OpMemberDecorate %_modf_result_vec2 1 Offset 8
|
||||
OpMemberDecorate %__modf_result_vec2 0 Offset 0
|
||||
OpMemberDecorate %__modf_result_vec2 1 Offset 8
|
||||
%float = OpTypeFloat 32
|
||||
%v4float = OpTypeVector %float 4
|
||||
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
||||
@ -37,22 +37,22 @@
|
||||
%void = OpTypeVoid
|
||||
%9 = OpTypeFunction %void
|
||||
%v2float = OpTypeVector %float 2
|
||||
%_modf_result_vec2 = OpTypeStruct %v2float %v2float
|
||||
%__modf_result_vec2 = OpTypeStruct %v2float %v2float
|
||||
%17 = OpConstantNull %v2float
|
||||
%_ptr_Function__modf_result_vec2 = OpTypePointer Function %_modf_result_vec2
|
||||
%20 = OpConstantNull %_modf_result_vec2
|
||||
%_ptr_Function___modf_result_vec2 = OpTypePointer Function %__modf_result_vec2
|
||||
%20 = OpConstantNull %__modf_result_vec2
|
||||
%21 = OpTypeFunction %v4float
|
||||
%float_1 = OpConstant %float 1
|
||||
%modf_c87851 = OpFunction %void None %9
|
||||
%modf_f5f20d = OpFunction %void None %9
|
||||
%12 = OpLabel
|
||||
%res = OpVariable %_ptr_Function__modf_result_vec2 Function %20
|
||||
%13 = OpExtInst %_modf_result_vec2 %16 ModfStruct %17
|
||||
%res = OpVariable %_ptr_Function___modf_result_vec2 Function %20
|
||||
%13 = OpExtInst %__modf_result_vec2 %16 ModfStruct %17
|
||||
OpStore %res %13
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
%vertex_main_inner = OpFunction %v4float None %21
|
||||
%23 = OpLabel
|
||||
%24 = OpFunctionCall %void %modf_c87851
|
||||
%24 = OpFunctionCall %void %modf_f5f20d
|
||||
OpReturnValue %5
|
||||
OpFunctionEnd
|
||||
%vertex_main = OpFunction %void None %9
|
||||
@ -64,11 +64,11 @@
|
||||
OpFunctionEnd
|
||||
%fragment_main = OpFunction %void None %9
|
||||
%30 = OpLabel
|
||||
%31 = OpFunctionCall %void %modf_c87851
|
||||
%31 = OpFunctionCall %void %modf_f5f20d
|
||||
OpReturn
|
||||
OpFunctionEnd
|
||||
%compute_main = OpFunction %void None %9
|
||||
%33 = OpLabel
|
||||
%34 = OpFunctionCall %void %modf_c87851
|
||||
%34 = OpFunctionCall %void %modf_f5f20d
|
||||
OpReturn
|
||||
OpFunctionEnd
|
@ -1,19 +1,19 @@
|
||||
fn modf_c87851() {
|
||||
fn modf_f5f20d() {
|
||||
var res = modf(vec2<f32>());
|
||||
}
|
||||
|
||||
[[stage(vertex)]]
|
||||
fn vertex_main() -> [[builtin(position)]] vec4<f32> {
|
||||
modf_c87851();
|
||||
modf_f5f20d();
|
||||
return vec4<f32>();
|
||||
}
|
||||
|
||||
[[stage(fragment)]]
|
||||
fn fragment_main() {
|
||||
modf_c87851();
|
||||
modf_f5f20d();
|
||||
}
|
||||
|
||||
[[stage(compute), workgroup_size(1)]]
|
||||
fn compute_main() {
|
||||
modf_c87851();
|
||||
modf_f5f20d();
|
||||
}
|
@ -9,19 +9,19 @@
|
||||
OpEntryPoint GLCompute %main "main"
|
||||
OpExecutionMode %main LocalSize 1 1 1
|
||||
OpName %main "main"
|
||||
OpName %_modf_result "_modf_result"
|
||||
OpMemberName %_modf_result 0 "fract"
|
||||
OpMemberName %_modf_result 1 "whole"
|
||||
OpMemberDecorate %_modf_result 0 Offset 0
|
||||
OpMemberDecorate %_modf_result 1 Offset 4
|
||||
OpName %__modf_result "__modf_result"
|
||||
OpMemberName %__modf_result 0 "fract"
|
||||
OpMemberName %__modf_result 1 "whole"
|
||||
OpMemberDecorate %__modf_result 0 Offset 0
|
||||
OpMemberDecorate %__modf_result 1 Offset 4
|
||||
%void = OpTypeVoid
|
||||
%1 = OpTypeFunction %void
|
||||
%float = OpTypeFloat 32
|
||||
%_modf_result = OpTypeStruct %float %float
|
||||
%__modf_result = OpTypeStruct %float %float
|
||||
%float_1_23000002 = OpConstant %float 1.23000002
|
||||
%main = OpFunction %void None %1
|
||||
%4 = OpLabel
|
||||
%5 = OpExtInst %_modf_result %8 ModfStruct %float_1_23000002
|
||||
%5 = OpExtInst %__modf_result %8 ModfStruct %float_1_23000002
|
||||
%10 = OpCompositeExtract %float %5 0
|
||||
%11 = OpCompositeExtract %float %5 1
|
||||
OpReturn
|
||||
|
Loading…
x
Reference in New Issue
Block a user