Place all XMM constants in memory so we can avoid clobbering rax.

This commit is contained in:
Ben Vanik
2015-06-15 18:47:53 -07:00
parent 329a03e7c4
commit 0ffd8bbedd
6 changed files with 63 additions and 10 deletions

View File

@@ -36,7 +36,6 @@ class X64CodeCache {
// TODO(benvanik): padding/guards/etc
void set_indirection_default(uint32_t default_value);
void AddIndirection(uint32_t guest_address, uint32_t host_address);
void CommitExecutableRange(uint32_t guest_low, uint32_t guest_high);
@@ -44,6 +43,8 @@ class X64CodeCache {
void* PlaceCode(uint32_t guest_address, void* machine_code, size_t code_size,
size_t stack_size);
uint32_t PlaceData(const void* data, size_t length);
private:
const static uint64_t kIndirectionTableBase = 0x80000000;
const static uint64_t kIndirectionTableSize = 0x1FFFFFFF;