summaryrefslogtreecommitdiff
path: root/Source/Core/Common/x64Emitter.cpp
diff options
context:
space:
mode:
authorMarkus Wick <markus@selfnet.de>2015-08-22 10:09:28 +0200
committerMarkus Wick <markus@selfnet.de>2015-08-22 10:09:28 +0200
commit3f5ff98c1baf83cc0ec1dbfe17a52eca2a72ef75 (patch)
treebd2ae317cd73972910d1361cc736e1e88e5bcf86 /Source/Core/Common/x64Emitter.cpp
parent2d505bc2a6dfb677dc773ab6289801edc6a23553 (diff)
parenta69755d9ee4cd880c4993eaaee49ab0342202113 (diff)
Merge pull request #2890 from lioncash/ptr
x64Emitter: Remove pointer casts from Write{8,16,32,64} functions
Diffstat (limited to 'Source/Core/Common/x64Emitter.cpp')
-rw-r--r--Source/Core/Common/x64Emitter.cpp24
1 files changed, 24 insertions, 0 deletions
diff --git a/Source/Core/Common/x64Emitter.cpp b/Source/Core/Common/x64Emitter.cpp
index 839e350c16..fd9494f8b1 100644
--- a/Source/Core/Common/x64Emitter.cpp
+++ b/Source/Core/Common/x64Emitter.cpp
@@ -3,6 +3,7 @@
// Refer to the license.txt file included.
#include <cinttypes>
+#include <cstring>
#include "Common/CommonTypes.h"
#include "Common/CPUDetect.h"
@@ -91,6 +92,29 @@ u8* XEmitter::GetWritableCodePtr()
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)
{
for (int i = 0; i < bytes; i++)