MCPcopy Create free account
hub / github.com/FEX-Emu/FEX / CVTFPR_To_GPR

Method CVTFPR_To_GPR

FEXCore/Source/Interface/Core/OpcodeDispatcher/Vector.cpp:2133–2141  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2131
2132template<IR::OpSize SrcElementSize, bool HostRoundingMode>
2133void OpDispatchBuilder::CVTFPR_To_GPR(OpcodeArgs) {
2134 // If loading a vector, use the full size, so we don't
2135 // unnecessarily zero extend the vector. Otherwise, if
2136 // memory, then we want to load the element size exactly.
2137 const auto SrcSize = Op->Src[0].IsGPR() ? OpSize::i128Bit : SrcElementSize;
2138 Ref Src = LoadSource_WithOpSize(FPRClass, Op, Op->Src[0], SrcSize, Op->Flags);
2139 Ref Result = CVTFPR_To_GPRImpl(Op, Src, SrcElementSize, HostRoundingMode);
2140 StoreResult(GPRClass, Op, Result, OpSize::iInvalid);
2141}
2142
2143template void OpDispatchBuilder::CVTFPR_To_GPR<OpSize::i32Bit, true>(OpcodeArgs);
2144template void OpDispatchBuilder::CVTFPR_To_GPR<OpSize::i32Bit, false>(OpcodeArgs);

Callers

nothing calls this directly

Calls 1

IsGPRMethod · 0.45

Tested by

no test coverage detected