1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 03:02:36 +01:00
llvm-mirror/lib/Support
Amanieu d'Antras bea54db865 [AArch64] Add support for the GNU ILP32 ABI
Add the aarch64[_be]-*-gnu_ilp32 targets to support the GNU ILP32 ABI for AArch64.

The needed codegen changes were mostly already implemented in D61259, which added support for the watchOS ILP32 ABI. The main changes are:
- Wiring up the new target to enable ILP32 codegen and MC.
- ILP32 va_list support.
- ILP32 TLSDESC relocation support.

There was existing MC support for ELF ILP32 relocations from D25159 which could be enabled by passing "-target-abi ilp32" to llvm-mc. This was changed to check for "gnu_ilp32" in the target triple instead. This shouldn't cause any issues since the existing support was slightly broken: it was generating ELF64 objects instead of the ELF32 object files expected by the GNU ILP32 toolchain.

This target has been tested by running the full rustc testsuite on a big-endian ILP32 system based on the GCC ILP32 toolchain.

Reviewed By: kristof.beyls

Differential Revision: https://reviews.llvm.org/D94143
2021-01-20 13:34:47 +00:00
..
Unix [llvm] Remove redundant return and continue statements (NFC) 2021-01-14 20:30:34 -08:00
Windows Re-land [Support] On Windows, take the affinity mask into account 2021-01-14 17:03:22 -05:00
AArch64TargetParser.cpp [AArch64] Add +flagm archictecture option, allowing the v8.4a flag modification extension. 2021-01-08 13:21:12 +00:00
ABIBreak.cpp
Allocator.cpp
AMDGPUMetadata.cpp [NFC][AMDGPU] Reduce include files dependency. 2021-01-07 22:22:05 +03:00
APFixedPoint.cpp [Fixed Point] Add floating point methods to APFixedPoint. 2020-10-09 10:27:42 +02:00
APFloat.cpp Cleanup namespace comment to fix clang-tidy warning. NFCI. 2020-11-03 18:13:21 +00:00
APInt.cpp [APInt] Add the truncOrSelf resizing operator to APInt 2020-11-23 11:27:30 +00:00
APSInt.cpp
ARMAttributeParser.cpp [ARMAttributeParser] Correctly parse and print Tag_THUMB_ISA_use=3 2020-11-28 12:28:22 -08:00
ARMBuildAttrs.cpp
ARMTargetParser.cpp [ARM] Adding v8.7-A command-line support for the ARM target 2020-12-17 13:48:54 +00:00
ARMWinEH.cpp
Atomic.cpp
BinaryStreamError.cpp
BinaryStreamReader.cpp
BinaryStreamRef.cpp
BinaryStreamWriter.cpp
BlockFrequency.cpp
BranchProbability.cpp
BuryPointer.cpp
CachePruning.cpp [ThinLTO] Also prune Thin-* files from the ThinLTO cache 2021-01-19 14:43:49 +01:00
Chrono.cpp
circular_raw_ostream.cpp
CMakeLists.txt [Support] Introduce a new InstructionCost class 2020-12-11 08:12:54 +00:00
CodeGenCoverage.cpp
COM.cpp
CommandLine.cpp [llvm] Use llvm::any_of (NFC) 2021-01-19 20:19:16 -08:00
Compression.cpp
ConvertUTF.cpp
ConvertUTFWrapper.cpp Reland "[Support][unittests] Enforce alignment in ConvertUTFTest" 2020-10-14 12:02:27 +02:00
COPYRIGHT.regex
CrashRecoveryContext.cpp [LLD] Fix include following 45b8a741fbbf271e0fb71294cb7cdce3ad4b9bf3 2020-11-12 08:32:16 -05:00
CRC.cpp
DAGDeltaAlgorithm.cpp
DataExtractor.cpp
Debug.cpp
DebugCounter.cpp [llvm] Use llvm::sort (NFC) 2021-01-17 10:39:45 -08:00
DeltaAlgorithm.cpp
DJB.cpp
DynamicLibrary.cpp [llvm] Use llvm::find (NFC) 2021-01-19 20:19:14 -08:00
ELFAttributeParser.cpp [llvm-readobj, libSupport] - Refine the implementation of the code that dumps build attributes. 2020-12-02 13:51:32 +03:00
ELFAttributes.cpp
Errno.cpp
Error.cpp [Support] Add a C-API function to create a StringError instance. 2020-10-19 01:59:04 -07:00
ErrorHandling.cpp Remove -Wunused-result and -Wpedantic warnings from GCC. NFC. 2020-12-02 10:53:59 -05:00
ExtensibleRTTI.cpp
FileCollector.cpp [FileCollector] Move interface into FileCollectorBase (NFC) 2020-10-19 21:37:20 -07:00
FileOutputBuffer.cpp
FileUtilities.cpp
FoldingSet.cpp
FormattedStream.cpp
FormatVariadic.cpp
GlobPattern.cpp
GraphWriter.cpp
Hashing.cpp
Host.cpp Use basic_string::find(char) instead of basic_string::find(const char *s, size_type pos=0) 2020-12-16 23:28:32 -08:00
InitLLVM.cpp [InitLLVM] Ensure SIGPIPE handler installed before sigaction() 2021-01-08 15:13:04 -08:00
InstructionCost.cpp [Support] Introduce a new InstructionCost class 2020-12-11 08:12:54 +00:00
IntEqClasses.cpp
IntervalMap.cpp
ItaniumManglingCanonicalizer.cpp
JSON.cpp ADT: Stop peeking inside AlignedCharArrayUnion, NFC 2020-12-04 11:07:42 -08:00
KnownBits.cpp [Support] Simplify KnownBits::sextInReg implementation. 2021-01-14 15:14:32 +00:00
LEB128.cpp
LineIterator.cpp Support: Allow use of MemoryBufferRef with line_iterator 2020-10-13 16:43:49 -04:00
Locale.cpp
LockFileManager.cpp
LowLevelType.cpp [SVE] Make ElementCount and TypeSize use a new PolySize class 2020-10-12 08:23:38 +01:00
ManagedStatic.cpp
MathExtras.cpp
MD5.cpp
MemAlloc.cpp
Memory.cpp
MemoryBuffer.cpp Revert "[Modules] Add stats to measure performance of building and loading modules." 2020-09-24 12:36:06 -07:00
MemoryBufferRef.cpp Support: Add operator== for MemoryBufferRef and split out MemoryBufferRef.h 2020-10-13 16:42:24 -04:00
NativeFormatting.cpp
OptimizedStructLayout.cpp
Optional.cpp
Parallel.cpp
Path.cpp [llvm] Use early exits and get rid of if-return-else-return pattern; NFC 2020-10-21 14:18:42 +02:00
PluginLoader.cpp
PrettyStackTrace.cpp Escape command line arguments in backtraces 2020-11-17 12:16:13 +00:00
Process.cpp [LLD] Fix include following 45b8a741fbbf271e0fb71294cb7cdce3ad4b9bf3 2020-11-12 08:32:16 -05:00
Program.cpp Re-land [Support] On Windows, take the affinity mask into account 2021-01-14 17:03:22 -05:00
RandomNumberGenerator.cpp
raw_os_ostream.cpp
raw_ostream.cpp raw_ostream.cpp - remove duplicate includes. NFCI. 2020-09-16 18:32:28 +01:00
regcomp.c
regengine.inc
regerror.c
regex2.h
regex_impl.h
Regex.cpp
regexec.c
regfree.c
regstrlcpy.c
regutils.h
RISCVAttributeParser.cpp
RISCVAttributes.cpp
RWMutex.cpp
ScaledNumber.cpp
ScopedPrinter.cpp
SHA1.cpp
Signals.cpp Add support for setting the path to llvm-symbolizer through an environment variable 2020-09-24 19:14:04 +00:00
Signposts.cpp [llvm] Protect signpost map with a mutex 2021-01-19 11:41:54 -08:00
SmallPtrSet.cpp
SmallVector.cpp s/instantate/instantiate/ throughout. NFCI. 2020-12-01 22:13:40 -05:00
SourceMgr.cpp [llvm] Use llvm::any_of (NFC) 2021-01-04 11:42:47 -08:00
SpecialCaseList.cpp
Statistic.cpp
StringExtras.cpp
StringMap.cpp
StringRef.cpp
StringSaver.cpp
SuffixTree.cpp
SymbolRemappingReader.cpp
SystemUtils.cpp
TargetParser.cpp [llvm] Use llvm::lower_bound and llvm::upper_bound (NFC) 2021-01-05 21:15:59 -08:00
TargetRegistry.cpp
TarWriter.cpp
Threading.cpp
ThreadLocal.cpp
ThreadPool.cpp
TimeProfiler.cpp
Timer.cpp [Support] Untie the llvm::Signpost interface from llvm::Timer 2021-01-06 15:16:09 -08:00
ToolOutputFile.cpp
TrigramIndex.cpp TrigramIndex.cpp - remove unnecessary includes. NFCI. 2020-09-09 11:38:31 +01:00
Triple.cpp [AArch64] Add support for the GNU ILP32 ABI 2021-01-20 13:34:47 +00:00
Twine.cpp
Unicode.cpp Speedup some unicode rendering 2020-12-03 20:11:11 +01:00
UnicodeCaseFold.cpp
Valgrind.cpp
VersionTuple.cpp
VirtualFileSystem.cpp Support: Add RedirectingFileSystem::create from simple list of redirections 2020-12-08 17:53:30 -08:00
Watchdog.cpp
WithColor.cpp
X86TargetParser.cpp [X86] Support Intel avxvnni 2020-10-31 12:39:51 +08:00
xxhash.cpp
YAMLParser.cpp [llvm] Use llvm::append_range (NFC) 2021-01-06 18:27:33 -08:00
YAMLTraits.cpp [YAML] Support extended spellings when parsing bools. 2020-12-12 12:50:34 +00:00
Z3Solver.cpp