frontend/ir_emitter: Add half-precision opcode for FPVectorRecipEstimate
This commit is contained in:
parent
1615ba0adc
commit
c55db96819
@ -1092,6 +1092,10 @@ static void EmitRecipEstimate(BlockOfCode& code, EmitContext& ctx, IR::Inst* ins
|
||||
});
|
||||
}
|
||||
|
||||
void EmitX64::EmitFPVectorRecipEstimate16(EmitContext& ctx, IR::Inst* inst) {
|
||||
EmitRecipEstimate<u16>(code, ctx, inst);
|
||||
}
|
||||
|
||||
void EmitX64::EmitFPVectorRecipEstimate32(EmitContext& ctx, IR::Inst* inst) {
|
||||
EmitRecipEstimate<u32>(code, ctx, inst);
|
||||
}
|
||||
|
@ -2273,6 +2273,8 @@ U128 IREmitter::FPVectorPairedAddLower(size_t esize, const U128& a, const U128&
|
||||
|
||||
U128 IREmitter::FPVectorRecipEstimate(size_t esize, const U128& a) {
|
||||
switch (esize) {
|
||||
case 16:
|
||||
return Inst<U128>(Opcode::FPVectorRecipEstimate16, a);
|
||||
case 32:
|
||||
return Inst<U128>(Opcode::FPVectorRecipEstimate32, a);
|
||||
case 64:
|
||||
|
@ -337,6 +337,7 @@ bool Inst::ReadsFromAndWritesToFPSRCumulativeExceptionBits() const {
|
||||
case Opcode::FPVectorPairedAddLower64:
|
||||
case Opcode::FPVectorPairedAdd32:
|
||||
case Opcode::FPVectorPairedAdd64:
|
||||
case Opcode::FPVectorRecipEstimate16:
|
||||
case Opcode::FPVectorRecipEstimate32:
|
||||
case Opcode::FPVectorRecipEstimate64:
|
||||
case Opcode::FPVectorRecipStepFused16:
|
||||
|
@ -572,6 +572,7 @@ OPCODE(FPVectorPairedAdd32, U128, U128
|
||||
OPCODE(FPVectorPairedAdd64, U128, U128, U128 )
|
||||
OPCODE(FPVectorPairedAddLower32, U128, U128, U128 )
|
||||
OPCODE(FPVectorPairedAddLower64, U128, U128, U128 )
|
||||
OPCODE(FPVectorRecipEstimate16, U128, U128 )
|
||||
OPCODE(FPVectorRecipEstimate32, U128, U128 )
|
||||
OPCODE(FPVectorRecipEstimate64, U128, U128 )
|
||||
OPCODE(FPVectorRecipStepFused16, U128, U128, U128 )
|
||||
|
Loading…
x
Reference in New Issue
Block a user