diff options
author | Bernhard Schommer <bschommer@users.noreply.github.com> | 2019-08-12 16:16:10 +0200 |
---|---|---|
committer | Xavier Leroy <xavierleroy@users.noreply.github.com> | 2019-08-12 16:16:10 +0200 |
commit | 040d9c67942c73d875eec9a2ab131fbae6e8f984 (patch) | |
tree | 13a98dd663fb8b7a7824d3fc629a9ab2e9301e98 /x86/CBuiltins.ml | |
parent | 2ce5e496b8d4c838c87c9f00a84ed23d1abc26fc (diff) | |
download | compcert-040d9c67942c73d875eec9a2ab131fbae6e8f984.tar.gz compcert-040d9c67942c73d875eec9a2ab131fbae6e8f984.zip |
bswap builtins: give semantics to them, support bswap64 on all targets
* Added semantic for byte swap builtins
The `__builtin_bswap`, `__builtin_bswap16`, `__builtin_bswap32`, `__builtin_bswap64` builtin function are now standard builtin functions with a defined semantics.
The semantics is given in terms of the decode/encode functions used for the memory model.
* Added bswap64 expansion to PowerPC 32 bits.
* Added bswap64 expansion for ARM.
Diffstat (limited to 'x86/CBuiltins.ml')
-rw-r--r-- | x86/CBuiltins.ml | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/x86/CBuiltins.ml b/x86/CBuiltins.ml index 6fb8b697..f4f40a31 100644 --- a/x86/CBuiltins.ml +++ b/x86/CBuiltins.ml @@ -31,8 +31,6 @@ let builtins = { ]; builtin_functions = [ (* Integer arithmetic *) - "__builtin_bswap64", - (TInt(IULongLong, []), [TInt(IULongLong, [])], false); "__builtin_clz", (TInt(IInt, []), [TInt(IUInt, [])], false); "__builtin_clzl", |