emit_x64_memory: Share constants
This commit is contained in:
parent
5cf2d59913
commit
fb586604b4
3 changed files with 4 additions and 8 deletions
|
@ -160,10 +160,6 @@ FakeCall A32EmitX64::FastmemCallback(u64 rip_) {
|
||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
|
|
||||||
constexpr size_t page_bits = 12;
|
|
||||||
constexpr size_t page_size = 1 << page_bits;
|
|
||||||
constexpr size_t page_mask = (1 << page_bits) - 1;
|
|
||||||
|
|
||||||
void EmitDetectMisaignedVAddr(BlockOfCode& code, A32EmitContext& ctx, size_t bitsize, Xbyak::Label& abort, Xbyak::Reg32 vaddr, Xbyak::Reg32 tmp) {
|
void EmitDetectMisaignedVAddr(BlockOfCode& code, A32EmitContext& ctx, size_t bitsize, Xbyak::Label& abort, Xbyak::Reg32 vaddr, Xbyak::Reg32 tmp) {
|
||||||
if (bitsize == 8 || (ctx.conf.detect_misaligned_access_via_page_table & bitsize) == 0) {
|
if (bitsize == 8 || (ctx.conf.detect_misaligned_access_via_page_table & bitsize) == 0) {
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -302,10 +302,6 @@ FakeCall A64EmitX64::FastmemCallback(u64 rip_) {
|
||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
|
|
||||||
constexpr size_t page_bits = 12;
|
|
||||||
constexpr size_t page_size = 1 << page_bits;
|
|
||||||
constexpr size_t page_mask = (1 << page_bits) - 1;
|
|
||||||
|
|
||||||
void EmitDetectMisaignedVAddr(BlockOfCode& code, A64EmitContext& ctx, size_t bitsize, Xbyak::Label& abort, Xbyak::Reg64 vaddr, Xbyak::Reg64 tmp) {
|
void EmitDetectMisaignedVAddr(BlockOfCode& code, A64EmitContext& ctx, size_t bitsize, Xbyak::Label& abort, Xbyak::Reg64 vaddr, Xbyak::Reg64 tmp) {
|
||||||
if (bitsize == 8 || (ctx.conf.detect_misaligned_access_via_page_table & bitsize) == 0) {
|
if (bitsize == 8 || (ctx.conf.detect_misaligned_access_via_page_table & bitsize) == 0) {
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -16,6 +16,10 @@ namespace {
|
||||||
|
|
||||||
using namespace Xbyak::util;
|
using namespace Xbyak::util;
|
||||||
|
|
||||||
|
constexpr size_t page_bits = 12;
|
||||||
|
constexpr size_t page_size = 1 << page_bits;
|
||||||
|
constexpr size_t page_mask = (1 << page_bits) - 1;
|
||||||
|
|
||||||
template<typename UserConfig>
|
template<typename UserConfig>
|
||||||
void EmitExclusiveLock(BlockOfCode& code, const UserConfig& conf, Xbyak::Reg64 pointer, Xbyak::Reg32 tmp) {
|
void EmitExclusiveLock(BlockOfCode& code, const UserConfig& conf, Xbyak::Reg64 pointer, Xbyak::Reg32 tmp) {
|
||||||
if (conf.HasOptimization(OptimizationFlag::Unsafe_IgnoreGlobalMonitor)) {
|
if (conf.HasOptimization(OptimizationFlag::Unsafe_IgnoreGlobalMonitor)) {
|
||||||
|
|
Loading…
Reference in a new issue