MCPcopy Create free account
hub / github.com/KhronosGroup/SPIRV-Tools / FromMessage

Method FromMessage

source/fuzz/transformation.cpp:115–395  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

113Transformation::~Transformation() = default;
114
115std::unique_ptr<Transformation> Transformation::FromMessage(
116 const protobufs::Transformation& message) {
117 switch (message.transformation_case()) {
118 case protobufs::Transformation::TransformationCase::kAccessChain:
119 return MakeUnique<TransformationAccessChain>(message.access_chain());
120 case protobufs::Transformation::TransformationCase::
121 kAddBitInstructionSynonym:
122 return MakeUnique<TransformationAddBitInstructionSynonym>(
123 message.add_bit_instruction_synonym());
124 case protobufs::Transformation::TransformationCase::kAddConstantBoolean:
125 return MakeUnique<TransformationAddConstantBoolean>(
126 message.add_constant_boolean());
127 case protobufs::Transformation::TransformationCase::kAddConstantComposite:
128 return MakeUnique<TransformationAddConstantComposite>(
129 message.add_constant_composite());
130 case protobufs::Transformation::TransformationCase::kAddConstantNull:
131 return MakeUnique<TransformationAddConstantNull>(
132 message.add_constant_null());
133 case protobufs::Transformation::TransformationCase::kAddConstantScalar:
134 return MakeUnique<TransformationAddConstantScalar>(
135 message.add_constant_scalar());
136 case protobufs::Transformation::TransformationCase::kAddCopyMemory:
137 return MakeUnique<TransformationAddCopyMemory>(message.add_copy_memory());
138 case protobufs::Transformation::TransformationCase::kAddDeadBlock:
139 return MakeUnique<TransformationAddDeadBlock>(message.add_dead_block());
140 case protobufs::Transformation::TransformationCase::kAddDeadBreak:
141 return MakeUnique<TransformationAddDeadBreak>(message.add_dead_break());
142 case protobufs::Transformation::TransformationCase::kAddDeadContinue:
143 return MakeUnique<TransformationAddDeadContinue>(
144 message.add_dead_continue());
145 case protobufs::Transformation::TransformationCase::
146 kAddEarlyTerminatorWrapper:
147 return MakeUnique<TransformationAddEarlyTerminatorWrapper>(
148 message.add_early_terminator_wrapper());
149 case protobufs::Transformation::TransformationCase::kAddFunction:
150 return MakeUnique<TransformationAddFunction>(message.add_function());
151 case protobufs::Transformation::TransformationCase::kAddGlobalUndef:
152 return MakeUnique<TransformationAddGlobalUndef>(
153 message.add_global_undef());
154 case protobufs::Transformation::TransformationCase::kAddGlobalVariable:
155 return MakeUnique<TransformationAddGlobalVariable>(
156 message.add_global_variable());
157 case protobufs::Transformation::TransformationCase::
158 kAddImageSampleUnusedComponents:
159 return MakeUnique<TransformationAddImageSampleUnusedComponents>(
160 message.add_image_sample_unused_components());
161 case protobufs::Transformation::TransformationCase::kAddLocalVariable:
162 return MakeUnique<TransformationAddLocalVariable>(
163 message.add_local_variable());
164 case protobufs::Transformation::TransformationCase::kAddLoopPreheader:
165 return MakeUnique<TransformationAddLoopPreheader>(
166 message.add_loop_preheader());
167 case protobufs::Transformation::TransformationCase::
168 kAddLoopToCreateIntConstantSynonym:
169 return MakeUnique<TransformationAddLoopToCreateIntConstantSynonym>(
170 message.add_loop_to_create_int_constant_synonym());
171 case protobufs::Transformation::TransformationCase::
172 kAddNoContractionDecoration:

Callers

nothing calls this directly

Calls 1

loadMethod · 0.80

Tested by

no test coverage detected