shader: Implement R2P
This commit is contained in:
parent
924f0a9149
commit
7d6ba5b984
8 changed files with 88 additions and 15 deletions
|
@ -412,6 +412,8 @@ Value IREmitter::Select(const U1& condition, const Value& true_value, const Valu
|
|||
throw InvalidArgument("Mismatching types {} and {}", true_value.Type(), false_value.Type());
|
||||
}
|
||||
switch (true_value.Type()) {
|
||||
case Type::U1:
|
||||
return Inst(Opcode::SelectU1, condition, true_value, false_value);
|
||||
case Type::U8:
|
||||
return Inst(Opcode::SelectU8, condition, true_value, false_value);
|
||||
case Type::U16:
|
||||
|
|
|
@ -115,6 +115,7 @@ OPCODE(CompositeInsertF64x3, F64x3, F64x
|
|||
OPCODE(CompositeInsertF64x4, F64x4, F64x4, F64, U32, )
|
||||
|
||||
// Select operations
|
||||
OPCODE(SelectU1, U1, U1, U1, U1, )
|
||||
OPCODE(SelectU8, U8, U1, U8, U8, )
|
||||
OPCODE(SelectU16, U16, U1, U16, U16, )
|
||||
OPCODE(SelectU32, U32, U1, U32, U32, )
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue