1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-26 04:32:44 +01:00
llvm-mirror/lib
LemonBoy f587aff82a [LoopVectorize] Refine hasIrregularType predicate
The `hasIrregularType` predicate checks whether an array of N values of type Ty is "bitcast-compatible" with a <N x Ty> vector.
The previous check returned invalid results in some cases where there's some padding between the array elements: eg. a 4-element array of u7 values is considered as compatible with <4 x u7>, even though the vector is only loading/storing 28 bits instead of 32.

The problem causes LLVM to generate incorrect code for some targets: for AArch64 the vector loads/stores are lowered in terms of ubfx/bfi, effectively losing the top (N * padding bits).

Reviewed By: lebedev.ri

Differential Revision: https://reviews.llvm.org/D97465
2021-03-17 17:03:47 +01:00
..
Analysis [BasicAA] Drop dependency on Loop Info. PR43276 2021-03-17 11:43:44 +07:00
AsmParser
BinaryFormat
Bitcode
Bitstream
CodeGen Revert "[DebugInfo] Handle multiple variable location operands in IR" 2021-03-17 13:36:48 +01:00
DebugInfo [CMake] Clean up unnecessary dependency 2021-03-15 16:29:16 -07:00
Demangle
DWARFLinker
ExecutionEngine [JITLink][MachO][x86-64] Introduce generic x86-64 support. 2021-03-15 15:43:07 -07:00
Extensions
FileCheck [FileCheck] Add support for hex alternate form in FileCheck 2021-03-12 18:14:17 +00:00
Frontend Revert "[OpenMP] Do not propagate match extensions to nested contexts" 2021-03-11 23:48:36 -06:00
Fuzzer
FuzzMutate
InterfaceStub
IR Revert "[DebugInfo] Handle multiple variable location operands in IR" 2021-03-17 13:36:48 +01:00
IRReader
LineEditor
Linker
LTO llvm-lto: default Relocation Model should be selected by the TargetMachine. 2021-03-10 17:31:26 -05:00
MC Revert "[AsmParser][SystemZ][z/OS] Reland "Introduce HLASM Comment Syntax"" 2021-03-16 18:39:04 -04:00
MCA [MCA] Support in-order CPUs with MicroOpBufferSize=1 2021-03-11 10:12:54 +00:00
Object [llvm-objcopy][NFC] replace class Buffer/MemBuffer/FileBuffer with streams. 2021-03-10 23:50:04 +03:00
ObjectYAML
Option
Passes Remove original implementation of UniqueInternalLinkageNames pass. 2021-03-10 11:57:40 -08:00
ProfileData [CSSPGO] Load context profile for external functions in PreLink and populate ThinLTO import list 2021-03-15 12:22:15 -07:00
Remarks
Support [llvm-objcopy][NFC] Move ownership keeping code into restoreStatOnFile(). 2021-03-17 17:27:00 +03:00
TableGen
Target [ARM] Use lrdsb for more thumb1 loads. 2021-03-17 15:29:02 +00:00
Testing
TextAPI
ToolDrivers
Transforms [LoopVectorize] Refine hasIrregularType predicate 2021-03-17 17:03:47 +01:00
WindowsManifest
XRay
CMakeLists.txt