llvm-project/llvm/lib
LemonBoy 6d103ca855 [SelectionDAG] Unify scalarizeVectorLoad and VectorLegalizer::ExpandLoad
The two code paths have the same goal, legalizing a load of a non-byte-sized vector by loading the "flattened" representation in memory, slicing off each single element and then building a vector out of those pieces.

The technique employed by `ExpandLoad`  is slightly more convoluted and produces slightly better codegen on ARM, AMDGPU and x86 but suffers from some bugs (D78480) and is wrong for BE machines.

Differential Revision: https://reviews.llvm.org/D79096
2020-05-02 15:18:10 -07:00
..
Analysis [ValueTracking] Short-circuit GEP known bits calculation (NFC) 2020-05-02 12:29:26 +02:00
AsmParser Add IR constructs for preallocated (inalloca replacement) 2020-04-27 16:15:50 -07:00
BinaryFormat XCOFF.h - replace StringRef.h include with forward declaration. NFC. 2020-04-23 13:52:48 +01:00
Bitcode [BitcodeReader] Simplify raw attribute handling (NFC) 2020-04-30 18:47:14 +02:00
Bitstream [Bitcode] reserve in front of push_back loops. NFCI. 2020-05-01 15:52:53 +02:00
CodeGen [SelectionDAG] Unify scalarizeVectorLoad and VectorLegalizer::ExpandLoad 2020-05-02 15:18:10 -07:00
DWARFLinker [cmake] LLVMDWARFLinker - add include/llvm/DWARFLinker header path 2020-04-18 12:31:41 +01:00
DebugInfo [Object] Change ObjectFile::getSymbolValue() return type to Expected<uint64_t> 2020-05-02 14:04:44 +08:00
Demangle Use std::foo_t rather than std::foo in LLVM. 2020-02-11 15:12:51 -08:00
ExecutionEngine std::isspace -> llvm::isSpace (where locale should be ignored) 2020-05-02 15:36:04 +02:00
Extensions Update compiler extension integration into the build system 2020-04-24 09:40:14 +02:00
Frontend [cmake] LLVMFrontendOpenMP - fix include/llvm/Frontend/OpenMP header path 2020-04-18 12:31:39 +01:00
FuzzMutate Remove CompositeType class. 2020-03-18 13:53:17 -07:00
Fuzzer
IR Remove getNumUses() comparisons (NFC) 2020-05-02 11:05:19 +02:00
IRReader
LTO Update compiler extension integration into the build system 2020-04-24 09:40:14 +02:00
LineEditor Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
Linker [SVE] Add new VectorType subclasses 2020-04-22 08:59:01 -07:00
MC [MC][Target][XCOFF] Consolidate MCAsmInfo XCOFF defaults; NFC 2020-04-30 20:48:30 -04:00
MCA [MC][Bugfix] Remove redundant parameter for relaxInstruction 2020-04-21 11:06:55 +08:00
Object [Object] Change ObjectFile::getSymbolValue() return type to Expected<uint64_t> 2020-05-02 14:04:44 +08:00
ObjectYAML [obj2yaml] - Program headers: simplify the computation of p_filesz. 2020-04-24 15:23:16 +03:00
Option Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
Passes [llvm][NFC] Factor out inlining pipeline as a module pipeline. 2020-04-24 09:24:12 -07:00
ProfileData std::isspace -> llvm::isSpace (where locale should be ignored) 2020-05-02 15:36:04 +02:00
Remarks Revert "Remove redundant "std::move"s in return statements" 2020-02-10 07:07:40 -08:00
Support [COFF] Add and use a zero-copy tokenizer for .drectve 2020-05-02 10:47:02 -07:00
TableGen [TableGen] Simplify with TGParser::consume() 2020-04-26 15:26:49 -07:00
Target [RISCV] Implement convertSelectOfConstantsToMath 2020-05-02 15:05:57 +01:00
Testing
TextAPI [cmake] Add headers in TextAPI/Elf and TextAPI/MachO subdirectories 2020-04-24 18:42:44 +01:00
ToolDrivers [ms] llvm-lib gives a more useful error if no inputs and no output path are provided 2020-05-01 07:43:32 -04:00
Transforms Remove getNumUses() comparisons (NFC) 2020-05-02 11:05:19 +02:00
WindowsManifest Try to fix WindowsManifest CMake logic on Windows 2020-02-28 17:24:03 -08:00
XRay [Object] Change ObjectFile::getSymbolValue() return type to Expected<uint64_t> 2020-05-02 14:04:44 +08:00
CMakeLists.txt Update compiler extension integration into the build system 2020-04-24 09:40:14 +02:00
LLVMBuild.txt Update compiler extension integration into the build system 2020-04-24 09:40:14 +02:00