mirror of
https://github.com/boykopovar/AnyPS5.git
synced 2026-11-05 13:20:11 +00:00
Merge pull request #5683 from MarcZX100/codex/rosetta-scalar-compare-5642
fix(relinker): isolate Rosetta scalar compare hazards
This commit is contained in:
7 files changed
+159
-1
No files matched your search
@@ -42,6 +42,7 @@ inline constexpr Entry kRdseed = {"RDSEED", nullptr, 0};
|
||||
inline constexpr Entry kRdpid = {"RDPID", nullptr, 0};
|
||||
inline constexpr Entry kClwb = {"CLWB", nullptr, 0};
|
||||
inline constexpr Entry kWideStore = {"256-bit store", nullptr, 0};
|
||||
inline constexpr Entry kScalarCompare = {"scalar compare", nullptr, 0};
|
||||
inline constexpr Entry kExtrq = {"EXTRQ", nullptr, 0};
|
||||
inline constexpr Entry kInsertq = {"INSERTQ", nullptr, 0};
|
||||
inline constexpr Entry kExtrqRegisterForm = {"EXTRQ register form", nullptr, 0};
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
#ifndef CODEGEN_X86_SCALARCOMPAREOPERANDS_HPP
|
||||
#define CODEGEN_X86_SCALARCOMPAREOPERANDS_HPP
|
||||
|
||||
#include <cstddef>
|
||||
#include <cstdint>
|
||||
#include <optional>
|
||||
|
||||
namespace Codegen {
|
||||
|
||||
struct ScalarCompareOperands {
|
||||
std::optional<std::size_t> RipDisplacementOffset;
|
||||
std::int64_t RipTarget = 0;
|
||||
};
|
||||
|
||||
[[nodiscard]] std::optional<ScalarCompareOperands> DecodeScalarCompare(const std::uint8_t* data, std::size_t length);
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
Reference in new issue
Block a user