IR: Removes implicit sized CASPair

This commit is contained in:
Ryan Houdek committed 2023-08-28 07:12:31 -07:00
1 parent e9f2bc037f
commit 594baff705
2 files changed
+1 -4

No files matched your search

@@ -4671,7 +4671,7 @@ void OpDispatchBuilder::CMPXCHGPairOp(OpcodeArgs) {
// This will write to memory! Careful!
// Third operand must be a calculated guest memory address
OrderedNode *CASResult = _CASPair(Expected, Desired, Src1);
OrderedNode *CASResult = _CASPair(IR::SizeToOpSize(Size * 2), Expected, Desired, Src1);
OrderedNode *Result_Lower = _ExtractElementPair(CASResult, 0);
OrderedNode *Result_Upper = _ExtractElementPair(CASResult, 1);
-3
View File
@@ -112,9 +112,6 @@ friend class FEXCore::IR::PassManager;
IRPair<IROp_CAS> _CAS(OrderedNode *_Expected, OrderedNode *_Desired, OrderedNode *_Addr) {
return _CAS(static_cast<OpSize>(GetOpSize(_Expected)), _Expected, _Desired, _Addr);
}
IRPair<IROp_CASPair> _CASPair(OrderedNode *_Expected, OrderedNode *_Desired, OrderedNode *_Addr) {
return _CASPair(static_cast<OpSize>(GetOpSize(_Expected)), _Expected, _Desired, _Addr);
}
///< ALU
IRPair<IROp_Add> _Add(OrderedNode *_Src1, OrderedNode *_Src2) {
return _Add(static_cast<OpSize>(std::max<uint8_t>(4, std::max(GetOpSize(_Src1), GetOpSize(_Src2)))), _Src1, _Src2);