mirror of
https://github.com/FEX-Emu/FEX.git
synced 2026-10-06 19:00:17 +02:00
OpcodeDispatcher: simplify
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
This commit is contained in:
1 parent
28936073c4
commit
8232669b22
1 file changed
+2
-4
@@ -4063,17 +4063,15 @@ void OpDispatchBuilder::NEGOp(OpcodeArgs) {
|
||||
auto Size = GetSrcSize(Op);
|
||||
auto ZeroConst = _Constant(0);
|
||||
|
||||
OrderedNode *Dest{};
|
||||
|
||||
if (DestIsLockedMem(Op)) {
|
||||
OrderedNode *DestMem = LoadSource(GPRClass, Op, Op->Dest, Op->Flags, {.LoadData = false});
|
||||
DestMem = AppendSegmentOffset(DestMem, Op->Flags);
|
||||
|
||||
Dest = _AtomicFetchNeg(IR::SizeToOpSize(Size), DestMem);
|
||||
OrderedNode *Dest = _AtomicFetchNeg(IR::SizeToOpSize(Size), DestMem);
|
||||
CalculateFlags_SUB(Size, ZeroConst, Dest);
|
||||
}
|
||||
else {
|
||||
Dest = LoadSource(GPRClass, Op, Op->Dest, Op->Flags, {.AllowUpperGarbage = true});
|
||||
OrderedNode *Dest = LoadSource(GPRClass, Op, Op->Dest, Op->Flags, {.AllowUpperGarbage = true});
|
||||
OrderedNode *Result = CalculateFlags_SUB(Size, ZeroConst, Dest);
|
||||
|
||||
StoreResult(GPRClass, Op, Result, -1);
|
||||
|
||||
Reference in new issue
Block a user