| 3576 | } |
| 3577 | |
| 3578 | void OpDispatchBuilder::BSWAPOp(OpcodeArgs) { |
| 3579 | Ref Dest; |
| 3580 | const auto Size = OpSizeFromSrc(Op); |
| 3581 | if (Size == OpSize::i16Bit) { |
| 3582 | // BSWAP of 16bit is undef. ZEN+ causes the lower 16bits to get zero'd |
| 3583 | Dest = Constant(0); |
| 3584 | } else { |
| 3585 | Dest = LoadSource_WithOpSize(GPRClass, Op, Op->Dest, GetGPROpSize(), Op->Flags); |
| 3586 | Dest = _Rev(Size, Dest); |
| 3587 | } |
| 3588 | StoreResult(GPRClass, Op, Dest, OpSize::iInvalid); |
| 3589 | } |
| 3590 | |
| 3591 | void OpDispatchBuilder::PUSHFOp(OpcodeArgs) { |
| 3592 | const auto Size = OpSizeFromSrc(Op); |
nothing calls this directly
no outgoing calls
no test coverage detected