| 126 | } |
| 127 | |
| 128 | void OpDispatchBuilder::FST(OpcodeArgs, IR::OpSize Width) { |
| 129 | const auto SourceSize = ReducedPrecisionMode ? OpSize::i64Bit : OpSize::i128Bit; |
| 130 | AddressMode A = DecodeAddress(Op, Op->Dest, MemoryAccessType::DEFAULT, false); |
| 131 | |
| 132 | A = SelectAddressMode(this, A, GetGPROpSize(), CTX->HostFeatures.SupportsTSOImm9, false, false, Width); |
| 133 | _StoreStackMem(SourceSize, Width, A.Base, A.Index, OpSize::iInvalid, A.IndexType, A.IndexScale, /*Float=*/true); |
| 134 | |
| 135 | if (Op->TableInfo->Flags & X86Tables::InstFlags::FLAGS_POP) { |
| 136 | _PopStackDestroy(); |
| 137 | } |
| 138 | } |
| 139 | |
| 140 | void OpDispatchBuilder::FSTToStack(OpcodeArgs) { |
| 141 | const uint8_t Offset = Op->OP & 7; |
nothing calls this directly
no test coverage detected