Skip to content

Commit eb44794

Browse files
committed
[tint][ir] Remove BuiltinCall::IntrinsicName()
And move the 'spirv.' prefix to the spirv::ir::BuiltinCall() implementation of FriendlyName(). Change-Id: I684f13b03247f9dab9856f377b23a23881e6017e Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/152548 Kokoro: Kokoro <[email protected]> Reviewed-by: dan sinclair <[email protected]>
1 parent 30c31a9 commit eb44794

File tree

6 files changed

+37
-46
lines changed

6 files changed

+37
-46
lines changed

src/tint/lang/core/ir/builtin_call.h

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,6 @@ class BuiltinCall : public Castable<BuiltinCall, Call> {
3636
/// @returns the identifier for the function
3737
virtual size_t FuncId() = 0;
3838

39-
/// @returns the intrinsic name
40-
virtual const char* IntrinsicName() = 0;
41-
4239
/// @returns the table data to validate this builtin
4340
virtual const core::intrinsic::TableData& TableData() = 0;
4441
};

src/tint/lang/core/ir/core_builtin_call.h

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,9 +49,6 @@ class CoreBuiltinCall final : public Castable<CoreBuiltinCall, BuiltinCall> {
4949
/// @returns the friendly name for the instruction
5050
std::string FriendlyName() override { return core::str(func_); }
5151

52-
/// @returns the intrinsic name
53-
const char* IntrinsicName() override { return core::str(func_); }
54-
5552
/// @returns the table data to validate this builtin
5653
const core::intrinsic::TableData& TableData() override { return core::intrinsic::data::kData; }
5754

src/tint/lang/core/ir/validator.cc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -531,8 +531,8 @@ void Validator::CheckBuiltinCall(BuiltinCall* call) {
531531
auto args = Transform<8>(call->Args(), [&](ir::Value* v) { return v->Type(); });
532532
intrinsic::Context context{call->TableData(), mod_.Types(), mod_.symbols, diagnostics_};
533533

534-
auto result = core::intrinsic::Lookup(context, call->IntrinsicName(), call->FuncId(), args,
535-
core::EvaluationStage::kRuntime, Source{});
534+
auto result = core::intrinsic::Lookup(context, call->FriendlyName().c_str(), call->FuncId(),
535+
args, core::EvaluationStage::kRuntime, Source{});
536536
if (result) {
537537
if (result->return_type != call->Result()->Type()) {
538538
AddError(call, InstError(call, "call result type does not match builtin return type"));

src/tint/lang/spirv/builtin_fn.cc

Lines changed: 33 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -30,71 +30,71 @@ const char* str(BuiltinFn i) {
3030
case BuiltinFn::kNone:
3131
return "<none>";
3232
case BuiltinFn::kArrayLength:
33-
return "spirv.array_length";
33+
return "array_length";
3434
case BuiltinFn::kAtomicAnd:
35-
return "spirv.atomic_and";
35+
return "atomic_and";
3636
case BuiltinFn::kAtomicCompareExchange:
37-
return "spirv.atomic_compare_exchange";
37+
return "atomic_compare_exchange";
3838
case BuiltinFn::kAtomicExchange:
39-
return "spirv.atomic_exchange";
39+
return "atomic_exchange";
4040
case BuiltinFn::kAtomicIadd:
41-
return "spirv.atomic_iadd";
41+
return "atomic_iadd";
4242
case BuiltinFn::kAtomicIsub:
43-
return "spirv.atomic_isub";
43+
return "atomic_isub";
4444
case BuiltinFn::kAtomicLoad:
45-
return "spirv.atomic_load";
45+
return "atomic_load";
4646
case BuiltinFn::kAtomicOr:
47-
return "spirv.atomic_or";
47+
return "atomic_or";
4848
case BuiltinFn::kAtomicSmax:
49-
return "spirv.atomic_smax";
49+
return "atomic_smax";
5050
case BuiltinFn::kAtomicSmin:
51-
return "spirv.atomic_smin";
51+
return "atomic_smin";
5252
case BuiltinFn::kAtomicStore:
53-
return "spirv.atomic_store";
53+
return "atomic_store";
5454
case BuiltinFn::kAtomicUmax:
55-
return "spirv.atomic_umax";
55+
return "atomic_umax";
5656
case BuiltinFn::kAtomicUmin:
57-
return "spirv.atomic_umin";
57+
return "atomic_umin";
5858
case BuiltinFn::kAtomicXor:
59-
return "spirv.atomic_xor";
59+
return "atomic_xor";
6060
case BuiltinFn::kDot:
61-
return "spirv.dot";
61+
return "dot";
6262
case BuiltinFn::kImageDrefGather:
63-
return "spirv.image_dref_gather";
63+
return "image_dref_gather";
6464
case BuiltinFn::kImageFetch:
65-
return "spirv.image_fetch";
65+
return "image_fetch";
6666
case BuiltinFn::kImageGather:
67-
return "spirv.image_gather";
67+
return "image_gather";
6868
case BuiltinFn::kImageQuerySize:
69-
return "spirv.image_query_size";
69+
return "image_query_size";
7070
case BuiltinFn::kImageQuerySizeLod:
71-
return "spirv.image_query_size_lod";
71+
return "image_query_size_lod";
7272
case BuiltinFn::kImageRead:
73-
return "spirv.image_read";
73+
return "image_read";
7474
case BuiltinFn::kImageSampleImplicitLod:
75-
return "spirv.image_sample_implicit_lod";
75+
return "image_sample_implicit_lod";
7676
case BuiltinFn::kImageSampleExplicitLod:
77-
return "spirv.image_sample_explicit_lod";
77+
return "image_sample_explicit_lod";
7878
case BuiltinFn::kImageSampleDrefImplicitLod:
79-
return "spirv.image_sample_dref_implicit_lod";
79+
return "image_sample_dref_implicit_lod";
8080
case BuiltinFn::kImageSampleDrefExplicitLod:
81-
return "spirv.image_sample_dref_explicit_lod";
81+
return "image_sample_dref_explicit_lod";
8282
case BuiltinFn::kImageWrite:
83-
return "spirv.image_write";
83+
return "image_write";
8484
case BuiltinFn::kMatrixTimesMatrix:
85-
return "spirv.matrix_times_matrix";
85+
return "matrix_times_matrix";
8686
case BuiltinFn::kMatrixTimesScalar:
87-
return "spirv.matrix_times_scalar";
87+
return "matrix_times_scalar";
8888
case BuiltinFn::kMatrixTimesVector:
89-
return "spirv.matrix_times_vector";
89+
return "matrix_times_vector";
9090
case BuiltinFn::kSampledImage:
91-
return "spirv.sampled_image";
91+
return "sampled_image";
9292
case BuiltinFn::kSelect:
93-
return "spirv.select";
93+
return "select";
9494
case BuiltinFn::kVectorTimesMatrix:
95-
return "spirv.vector_times_matrix";
95+
return "vector_times_matrix";
9696
case BuiltinFn::kVectorTimesScalar:
97-
return "spirv.vector_times_scalar";
97+
return "vector_times_scalar";
9898
}
9999
return "<unknown>";
100100
}

src/tint/lang/spirv/builtin_fn.cc.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ const char* str(BuiltinFn i) {
2222
return "<none>";
2323
{{- range $I.Sem.Builtins }}
2424
case BuiltinFn::k{{PascalCase .Name}}:
25-
return "spirv.{{.Name}}";
25+
return "{{.Name}}";
2626
{{- end }}
2727
}
2828
return "<unknown>";

src/tint/lang/spirv/ir/builtin_call.h

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -47,10 +47,7 @@ class BuiltinCall final : public Castable<BuiltinCall, core::ir::BuiltinCall> {
4747
size_t FuncId() override { return static_cast<size_t>(func_); }
4848

4949
/// @returns the friendly name for the instruction
50-
std::string FriendlyName() override { return str(func_); }
51-
52-
/// @returns the intrinsic name
53-
const char* IntrinsicName() override { return str(func_); }
50+
std::string FriendlyName() override { return std::string("spirv.") + str(func_); }
5451

5552
/// @returns the table data to validate this builtin
5653
const core::intrinsic::TableData& TableData() override { return spirv::intrinsic::data::kData; }

0 commit comments

Comments
 (0)