diff options
author | Renato Golin <renato.golin@linaro.org> | 2015-11-09 12:40:30 +0000 |
---|---|---|
committer | Renato Golin <renato.golin@linaro.org> | 2015-11-09 12:40:30 +0000 |
commit | 6d435f12f0ef0be987476a3e18215fbcd182bcd1 (patch) | |
tree | 13895dabeb67795d69a68a8c65e4e27e6851aa38 /llvm/docs/CommandGuide/llc.rst | |
parent | 1d8a2c952f9073b5ee06d262704aec03e3b25c56 (diff) | |
download | bcm5719-llvm-6d435f12f0ef0be987476a3e18215fbcd182bcd1.tar.gz bcm5719-llvm-6d435f12f0ef0be987476a3e18215fbcd182bcd1.zip |
[EABI] Add LLVM support for -meabi flag
"GCC requires the freestanding environment provide memcpy, memmove, memset
and memcmp": https://gcc.gnu.org/onlinedocs/gcc-5.2.0/gcc/Standards.html
Hence in GNUEABI targets LLVM should not convert 'memops' to their equivalent
'__aeabi_memops'. This convertion violates GCC contract.
The -meabi flag controls whether or not LLVM will modify 'memops' in GNUEABI
targets.
Without -meabi: use the triple default EABI.
With -meabi=default: use the triple default EABI.
With -meabi=gnu: use 'memops'.
With -meabi=4 or -meabi=5: use '__aeabi_memops'.
With -meabi set to an unknown value: same as -meabi=default.
Patch by Vinicius Tinti.
llvm-svn: 252462
Diffstat (limited to 'llvm/docs/CommandGuide/llc.rst')
-rw-r--r-- | llvm/docs/CommandGuide/llc.rst | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/llvm/docs/CommandGuide/llc.rst b/llvm/docs/CommandGuide/llc.rst index 8d5c9ce8f8a..5094259f9f9 100644 --- a/llvm/docs/CommandGuide/llc.rst +++ b/llvm/docs/CommandGuide/llc.rst @@ -127,6 +127,12 @@ End-user Options implements an LLVM target. This will permit the target name to be used with the :option:`-march` option so that code can be generated for that target. +.. option:: -meabi=[default|gnu|4|5] + + Specify which EABI version should conform to. Valid EABI versions are *gnu*, + *4* and *5*. Default value (*default*) depends on the triple. + + Tuning/Configuration Options ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |