x64Emitter: Don't assume that std::tie is constexpr

Using constexpr tie broke building with older GCC versions according to
https://forums.dolphin-emu.org/Thread-build-error-on-linux-mint-18-3
This commit is contained in:
JosJuice 2018-04-14 20:46:24 +02:00
parent 9d7009796c
commit 8a146d5210

View File

@ -120,8 +120,10 @@ struct OpArg
}
constexpr bool operator==(const OpArg& b) const
{
return std::tie(scale, offsetOrBaseReg, indexReg, offset, operandReg) ==
std::tie(b.scale, b.offsetOrBaseReg, b.indexReg, b.offset, b.operandReg);
// TODO: Use std::tie here once Dolphin requires C++17. (We can't do it immediately,
// (because we still support some older versions of GCC where std::tie is not constexpr.)
return operandReg == b.operandReg && scale == b.scale && offsetOrBaseReg == b.offsetOrBaseReg &&
indexReg == b.indexReg && offset == b.offset;
}
constexpr bool operator!=(const OpArg& b) const { return !operator==(b); }
u64 Imm64() const