summaryrefslogtreecommitdiffstats
path: root/clang/lib/Headers/intrin.h
diff options
context:
space:
mode:
authorMandeep Singh Grang <mgrang@codeaurora.org>2019-01-15 01:26:26 +0000
committerMandeep Singh Grang <mgrang@codeaurora.org>2019-01-15 01:26:26 +0000
commit1b9337f16b7197758a61e7039cd82a91cdf1a168 (patch)
tree36c0d54aee54caf42afbdfab76da50c2bd72e816 /clang/lib/Headers/intrin.h
parentfe5e5dcab0c09ca4567611ba680c7a603bf6b89d (diff)
downloadbcm5719-llvm-1b9337f16b7197758a61e7039cd82a91cdf1a168.tar.gz
bcm5719-llvm-1b9337f16b7197758a61e7039cd82a91cdf1a168.zip
[COFF, ARM64] Add __byteswap intrinsics
Reviewers: rnk, efriedma, ssijaric, TomTan, haripul Reviewed By: efriedma Subscribers: javed.absar, cfe-commits, kristof.beyls Differential Revision: https://reviews.llvm.org/D56685 llvm-svn: 351147
Diffstat (limited to 'clang/lib/Headers/intrin.h')
-rw-r--r--clang/lib/Headers/intrin.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/clang/lib/Headers/intrin.h b/clang/lib/Headers/intrin.h
index 1a33af7f295..c86f41faeb8 100644
--- a/clang/lib/Headers/intrin.h
+++ b/clang/lib/Headers/intrin.h
@@ -566,6 +566,16 @@ unsigned __int64 __getReg(int);
long _InterlockedAdd(long volatile *Addend, long Value);
int _ReadStatusReg(int);
void _WriteStatusReg(int, int);
+
+static inline unsigned short _byteswap_ushort (unsigned short val) {
+ return __builtin_bswap16(val);
+}
+static inline unsigned long _byteswap_ulong (unsigned long val) {
+ return __builtin_bswap32(val);
+}
+static inline unsigned __int64 _byteswap_uint64 (unsigned __int64 val) {
+ return __builtin_bswap64(val);
+}
#endif
/*----------------------------------------------------------------------------*\
OpenPOWER on IntegriCloud