1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 12:12:47 +01:00
llvm-mirror/lib
Stefan Pintilie dbd743acfc [PowerPC] Inefficient register allocation of ACC registers results in many copies.
ACC registers are a combination of four consecutive vector registers.
If the vector registers are assigned first this often forces a number
of copies to appear just before the ACC register is created. If the ACC
register is assigned first then fewer copies are generated when the vector
registers are assigned.

This patch tries to force the register allocator to assign the ACC registers first
and then the UACC registers and then the vector pair registers. It does this
by changing the priority of the register classes.

This patch also adds hints to help the register allocator assign UACC registers from
known ACC registers and vector pair registers from known UACC registers.

Reviewed By: nemanjai

Differential Revision: https://reviews.llvm.org/D105854
2021-07-20 10:53:40 -05:00
..
Analysis [ScalarEvolution] Refine computeMaxBECountForLT to be accurate in more cases. 2021-07-19 15:43:30 -07:00
AsmParser [IR] Add elementtype attribute 2021-07-15 18:04:26 +02:00
BinaryFormat [SystemZ][z/OS] Add GOFF support to file magic identification 2021-07-20 10:50:47 -04:00
Bitcode [BPF] Use elementtype attribute for preserve.array/struct.index intrinsics 2021-07-17 11:09:18 +02:00
Bitstream
CodeGen [PowerPC] Inefficient register allocation of ACC registers results in many copies. 2021-07-20 10:53:40 -05:00
DebugInfo [DebugInfo] Remove unnecessary <string> include dependency from DebugInfo headers. NFC. 2021-07-17 16:56:06 +01:00
Demangle Demangle: correct swift_async demangling for Microsoft scheme 2021-07-14 11:43:44 -07:00
DWARFLinker [MC] Refactor MCObjectFileInfo initialization and allow targets to create MCObjectFileInfo 2021-05-23 14:15:23 -07:00
ExecutionEngine [ORC] Explicitly convert to ArrayRefs to silence errors. 2021-07-19 20:48:30 +10:00
Extensions
FileCheck [llvm] Rename StringRef _lower() method calls to _insensitive() 2021-06-25 00:22:01 +03:00
Frontend [OpenMP] Unified entry point for SPMD & generic kernels in the device RTL 2021-07-10 17:53:56 -05:00
Fuzzer
FuzzMutate [NewPM][FuzzMutate] Fix renaming 'unswitch' to 'simple-loop-unswitch' 2021-07-09 12:24:12 +02:00
InterfaceStub [ifs][elfabi] Merge llvm-ifs/elfabi tools 2021-07-19 11:23:19 -07:00
IR [IR] Don't accept null type in ConstantExpr::getGetElementPtr() 2021-07-17 15:59:31 +02:00
IRReader
LineEditor
Linker [CSSPGO] Do not import pseudo probe desc in thinLTO 2021-07-13 18:26:36 -07:00
LTO PR51018: Remove explicit conversions from SmallString to StringRef to future-proof against C++23 2021-07-08 13:37:57 -07:00
MC [WebAssembly] Generate R_WASM_FUNCTION_OFFSET relocs in debuginfo sections 2021-07-19 14:02:33 -07:00
MCA [MCA] [In-order pipeline] Fix for 0 latency instruction causing assertion to fail. 2021-06-22 10:18:39 -07:00
Object [SystemZ][z/OS] Add GOFF support to file magic identification 2021-07-20 10:50:47 -04:00
ObjectYAML [COFF] [CodeView] Add a few new enum values 2021-07-07 22:00:18 +03:00
Option [OptTable] Rename PrintHelp to printHelp 2021-06-24 14:47:03 -07:00
Passes [LICM] Create LoopNest Invariant Code Motion (LNICM) pass 2021-07-20 00:31:18 +09:00
ProfileData PR51018: Remove explicit conversions from SmallString to StringRef to future-proof against C++23 2021-07-08 13:37:57 -07:00
Remarks [Support] Don't include VirtualFileSystem.h in CommandLine.h 2021-04-21 10:19:01 -04:00
Support Avoid keeping internal string_views in Twine. 2021-07-20 08:46:53 -07:00
TableGen DetailedRecordsBackend.cpp - printSectionHeading - avoid std::string creation/copies. 2021-06-13 16:49:40 +01:00
Target [PowerPC] Inefficient register allocation of ACC registers results in many copies. 2021-07-20 10:53:40 -05:00
Testing Fix for error "'Run' overrides a member function but is not marked 2021-06-11 06:56:00 -07:00
TextAPI Reland "[llvm] llvm-tapi-diff" 2021-06-09 21:17:34 -07:00
ToolDrivers [OptTable] Rename PrintHelp to printHelp 2021-06-24 14:47:03 -07:00
Transforms [LV] Change interface of getReductionPatternCost to return Optional 2021-07-20 16:44:50 +01:00
WindowsManifest llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
XRay
CMakeLists.txt