geode/loader/dobby/source/MemoryAllocator/CodeBuffer/code-buffer-x86.cc

25 lines
570 B
C++
Raw Normal View History

2022-07-30 12:24:03 -04:00
#include "platform_macro.h"
#if defined(TARGET_ARCH_IA32)
// alk
#include <iomanip>
#include <iostream>
#include "MemoryAllocator/CodeBuffer/code-buffer-x86.h"
void CodeBuffer::Emit32(int32_t data) {
DLOG(0, "[code buffer] Emit32 from x86 with %x, cursor %x", data, buffer_cursor);
ensureCapacity(getSize() + sizeof(int32_t));
*reinterpret_cast<int32_t *>(getCursor()) = data;
buffer_cursor += sizeof(int32_t);
return;
}
void CodeBuffer::FixBindLabel(int offset, int32_t disp) {
*reinterpret_cast<uint32_t *>(buffer + offset) = disp;
return;
}
#endif