summaryrefslogtreecommitdiffstats
path: root/llvm/lib/MC/WinCOFFObjectWriter.cpp
diff options
context:
space:
mode:
authorHans Wennborg <hans@hanshq.net>2014-09-28 00:22:27 +0000
committerHans Wennborg <hans@hanshq.net>2014-09-28 00:22:27 +0000
commitba80b5d43c516a6136897f5db37b90f75a62f4be (patch)
tree7dbd40ab4eba8bea5660c450e96868d47c81d250 /llvm/lib/MC/WinCOFFObjectWriter.cpp
parent04e9d9ce64d5e5ea90ee3c4e3fb3375984ca5483 (diff)
downloadbcm5719-llvm-ba80b5d43c516a6136897f5db37b90f75a62f4be.tar.gz
bcm5719-llvm-ba80b5d43c516a6136897f5db37b90f75a62f4be.zip
WinCOFFObjectWriter.cpp: make write_uint32_le more efficient
llvm-svn: 218574
Diffstat (limited to 'llvm/lib/MC/WinCOFFObjectWriter.cpp')
-rw-r--r--llvm/lib/MC/WinCOFFObjectWriter.cpp10
1 files changed, 4 insertions, 6 deletions
diff --git a/llvm/lib/MC/WinCOFFObjectWriter.cpp b/llvm/lib/MC/WinCOFFObjectWriter.cpp
index f40e1abb048..5ffa107da9a 100644
--- a/llvm/lib/MC/WinCOFFObjectWriter.cpp
+++ b/llvm/lib/MC/WinCOFFObjectWriter.cpp
@@ -28,6 +28,7 @@
#include "llvm/MC/MCValue.h"
#include "llvm/Support/COFF.h"
#include "llvm/Support/Debug.h"
+#include "llvm/Support/Endian.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/TimeValue.h"
#include <cstdio>
@@ -196,12 +197,9 @@ public:
};
}
-static inline void write_uint32_le(void *Data, uint32_t const &Value) {
- uint8_t *Ptr = reinterpret_cast<uint8_t *>(Data);
- Ptr[0] = (Value & 0x000000FF) >> 0;
- Ptr[1] = (Value & 0x0000FF00) >> 8;
- Ptr[2] = (Value & 0x00FF0000) >> 16;
- Ptr[3] = (Value & 0xFF000000) >> 24;
+static inline void write_uint32_le(void *Data, uint32_t Value) {
+ support::endian::write<uint32_t, support::little, support::unaligned>(Data,
+ Value);
}
//------------------------------------------------------------------------------
OpenPOWER on IntegriCloud