| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Very few ELF platforms still use .ctors/.dtors now. Linux (glibc: 1999-07),
DragonFlyBSD, FreeBSD (2012-03) and Solaris have supported .init_array
for many years. Some architectures like AArch64/RISC-V default to
.init_array . GNU ld and gold can even convert .ctors to .init_array .
It makes more sense to flip the CC1 default, and only uses
-fno-use-init-array on platforms that don't support .init_array .
For example, OpenBSD did not support DT_INIT_ARRAY before Aug 2016
(https://github.com/openbsd/src/commit/86fa57a2792c6374b0849dd7b818a11e676e60ba)
I may miss some ELF platforms that still use .ctors, but their
maintainers can easily diagnose such problems.
Reviewed By: rnk
Differential Revision: https://reviews.llvm.org/D71393
|
|
|
|
|
|
|
| |
For NetBSD 9 and later, it is the default. On older versions, only ARM
and AArch64 use it by default.
llvm-svn: 375468
|
|
|
|
| |
llvm-svn: 355033
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
LLVM triple normalization is handling "unknown" and empty components
differently; for example given "x86_64-unknown-linux-gnu" and
"x86_64-linux-gnu" which should be equivalent, triple normalization
returns "x86_64-unknown-linux-gnu" and "x86_64--linux-gnu". autoconf's
config.sub returns "x86_64-unknown-linux-gnu" for both
"x86_64-linux-gnu" and "x86_64-unknown-linux-gnu". This changes the
triple normalization to behave the same way, replacing empty triple
components with "unknown".
This addresses PR37129.
Differential Revision: https://reviews.llvm.org/D50219
llvm-svn: 339294
|
|
|
|
| |
llvm-svn: 336947
|
|
|
|
|
|
| |
seems to have been a C&P error from old GCC specs for OpenBSD.
llvm-svn: 292119
|
|
|
|
| |
llvm-svn: 291436
|
|
|
|
|
|
|
|
| |
match was the ld.elf_so that should be matched in a second step. Add one
of the ever-present-but-irrelevant-for-this-test arguments to the
pattern to force matching the right argument.
llvm-svn: 271893
|
|
|
|
|
|
| |
non-shared, PIE and shared output mode.
llvm-svn: 271801
|
|
|
|
|
|
|
| |
linking defaults as other NetBSD targets, i.e. compiler_rt-in-libc and
libc++ as STL.
llvm-svn: 260616
|
|
|
|
|
|
|
|
|
| |
is not defined for 32bit mode, but __sparcv9 is. Pass down the correct
-target-cpu flags to the backend, so that instruction restrictions are
applied correctly. Pass down the correct -A flag when not using IAS.
The latter is limited to NetBSD targets in this commit.
llvm-svn: 252545
|
|
|
|
|
|
|
|
| |
Those used the old Big Endian support on ARM and don't need flags.
Refactor the logic in a separate common function, which also looks at
-march. Add corresponding logic for the Linux toolchain.
llvm-svn: 227393
|
|
|
|
|
|
| |
currently not planned.
llvm-svn: 227088
|
|
|
|
| |
llvm-svn: 215670
|
|
|
|
|
|
|
| |
integrated assembler, libc++ and libgcc. Set emulation for ld for both
platforms for correct -m32 handling.
llvm-svn: 215551
|
|
|
|
|
|
| |
From Matt Thomas.
llvm-svn: 215292
|
|
|
|
| |
llvm-svn: 215291
|
|
|
|
|
|
| |
for NetBSD.
llvm-svn: 213972
|
|
|
|
|
|
|
| |
Don't bother with keeping the old support for x86_64 in 6.99.23+, just
use a single range. Update test cases for the always-on --eh-frame-hdr.
llvm-svn: 208170
|
|
|
|
|
|
|
| |
This covers all tests in tests/Driver and tests/Preprocessor, but there are some
failing tests in test/Sema that need looking into.
llvm-svn: 206464
|
|
|
|
|
|
| |
ARM, MIPS and i386 ABIs.
llvm-svn: 206416
|
|
|
|
| |
llvm-svn: 203742
|
|
|
|
| |
llvm-svn: 201894
|
|
|
|
| |
llvm-svn: 201730
|
|
|
|
| |
llvm-svn: 200946
|
|
|
|
| |
llvm-svn: 200709
|
|
|
|
| |
llvm-svn: 199124
|
|
|
|
|
|
| |
driver.
llvm-svn: 192676
|
|
|
|
| |
llvm-svn: 192641
|
|
Adjust linkage to make more sense for older releases.
llvm-svn: 192615
|