diff options
| author | hthh <hthh@hh.ht> | 2014-10-04 11:04:46 +1000 |
|---|---|---|
| committer | hthh <hthh@hh.ht> | 2014-10-05 15:03:11 +1100 |
| commit | c7208318fb9f9fd535f0f78c7c2956d874ef5b98 (patch) | |
| tree | c6cb60a3f4979ae8dc88a1c25dffcfe7878d3adc /Source/Core/Common/x64Analyzer.cpp | |
| parent | 16d3604211fd9999eb07426f2ba69c51a46e8238 (diff) | |
JIT: Reuse trampolines when possible
Diffstat (limited to 'Source/Core/Common/x64Analyzer.cpp')
| -rw-r--r-- | Source/Core/Common/x64Analyzer.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/Source/Core/Common/x64Analyzer.cpp b/Source/Core/Common/x64Analyzer.cpp index 5be91ea585..7e8b40e6cd 100644 --- a/Source/Core/Common/x64Analyzer.cpp +++ b/Source/Core/Common/x64Analyzer.cpp @@ -223,3 +223,19 @@ bool DisassembleMov(const unsigned char *codePtr, InstructionInfo *info) info->instructionSize = (int)(codePtr - startCodePtr); return true; } + +bool InstructionInfo::operator==(const InstructionInfo &other) const +{ + return operandSize == other.operandSize && + instructionSize == other.instructionSize && + regOperandReg == other.regOperandReg && + otherReg == other.otherReg && + scaledReg == other.scaledReg && + zeroExtend == other.zeroExtend && + signExtend == other.signExtend && + hasImmediate == other.hasImmediate && + isMemoryWrite == other.isMemoryWrite && + byteSwap == other.byteSwap && + immediate == other.immediate && + displacement == other.displacement; +} |
