diff options
author | Rui Ueyama <ruiu@google.com> | 2018-10-22 20:50:01 +0000 |
---|---|---|
committer | Rui Ueyama <ruiu@google.com> | 2018-10-22 20:50:01 +0000 |
commit | ea8cd00a1d1ae8ba47d749ca7bd2c9281e4b1847 (patch) | |
tree | 9a48695cf58deed17a3eccedd09fe099794fc45b /clang/lib/CodeGen/CodeGenModule.cpp | |
parent | 01cc58bfb0139bf3a758d01c9985f78144d0c70c (diff) | |
download | bcm5719-llvm-ea8cd00a1d1ae8ba47d749ca7bd2c9281e4b1847.tar.gz bcm5719-llvm-ea8cd00a1d1ae8ba47d749ca7bd2c9281e4b1847.zip |
Add OUTPUT_FORMAT linker script directive support.
This patch adds a support for OUTPUT_FORMAT linker script directive.
Since I'm not 100% confident with BFD names you can use in the directive
for all architectures, I added only a few in this patch. We can add
other names for other archtiectures later.
We still do not support triple-style OUTPUT_FORMAT directive, namely,
OUTPUT_FORMAT(bfdname, big, little). If you pass -EL (little endian)
or -EB (big endian) to the linker, GNU linkers pick up big or little
as a BFD name, correspondingly, so that you can use a single linker
script for bi-endian processor. I'm not sure if we really need to
support that, so I'll leave it alone for now.
Note that -m takes precedence over OUTPUT_FORAMT, but we always parse
a BFD name given to OUTPUT_FORMAT for error checking. You cannot write
an invalid name in the OUTPUT_FORMAT directive.
Differential Revision: https://reviews.llvm.org/D53495
llvm-svn: 344952
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions