F64 ops Float load op with memory operand
| 59 | // F64 ops |
| 60 | // Float load op with memory operand |
| 61 | void OpDispatchBuilder::FLDF64(OpcodeArgs, IR::OpSize Width) { |
| 62 | const auto ReadWidth = (Width == OpSize::f80Bit) ? OpSize::i128Bit : Width; |
| 63 | Ref Data = LoadSource_WithOpSize(FPRClass, Op, Op->Src[0], ReadWidth, Op->Flags); |
| 64 | // Convert to 64bit float |
| 65 | Ref ConvertedData = Data; |
| 66 | if (Width == OpSize::i32Bit) { |
| 67 | ConvertedData = _Float_FToF(OpSize::i64Bit, OpSize::i32Bit, Data); |
| 68 | } else if (Width == OpSize::f80Bit) { |
| 69 | ConvertedData = _F80CVT(OpSize::i64Bit, Data); |
| 70 | } |
| 71 | _PushStack(ConvertedData, Data, ReadWidth, true); |
| 72 | } |
| 73 | |
| 74 | void OpDispatchBuilder::FBLDF64(OpcodeArgs) { |
| 75 | // Read from memory |
nothing calls this directly
no outgoing calls
no test coverage detected