Browse Source

Merge pull request #1058 from lioncash/ptr

emitter: Remove pointer casts
nce_cpp
Lioncash 10 years ago
parent
commit
3a56bd4a9e
  1. 23
      src/common/x64/emitter.cpp
  2. 8
      src/common/x64/emitter.h

23
src/common/x64/emitter.cpp

@ -109,6 +109,29 @@ u8 *XEmitter::GetWritableCodePtr()
return code; return code;
} }
void XEmitter::Write8(u8 value)
{
*code++ = value;
}
void XEmitter::Write16(u16 value)
{
std::memcpy(code, &value, sizeof(u16));
code += sizeof(u16);
}
void XEmitter::Write32(u32 value)
{
std::memcpy(code, &value, sizeof(u32));
code += sizeof(u32);
}
void XEmitter::Write64(u64 value)
{
std::memcpy(code, &value, sizeof(u64));
code += sizeof(u64);
}
void XEmitter::ReserveCodeSpace(int bytes) void XEmitter::ReserveCodeSpace(int bytes)
{ {
for (int i = 0; i < bytes; i++) for (int i = 0; i < bytes; i++)

8
src/common/x64/emitter.h

@ -359,10 +359,10 @@ private:
void ABI_CalculateFrameSize(u32 mask, size_t rsp_alignment, size_t needed_frame_size, size_t* shadowp, size_t* subtractionp, size_t* xmm_offsetp); void ABI_CalculateFrameSize(u32 mask, size_t rsp_alignment, size_t needed_frame_size, size_t* shadowp, size_t* subtractionp, size_t* xmm_offsetp);
protected: protected:
void Write8(u8 value) {*code++ = value;}
void Write16(u16 value) {*(u16*)code = (value); code += 2;}
void Write32(u32 value) {*(u32*)code = (value); code += 4;}
void Write64(u64 value) {*(u64*)code = (value); code += 8;}
void Write8(u8 value);
void Write16(u16 value);
void Write32(u32 value);
void Write64(u64 value);
public: public:
XEmitter() { code = nullptr; flags_locked = false; } XEmitter() { code = nullptr; flags_locked = false; }

Loading…
Cancel
Save