llvm-project/llvm/test
Craig Topper 8d7e73effe [RISCV] Teach lowerVECTOR_SHUFFLE to recognize some shuffles as vnsrl.
Unary shuffles such as <0,2,4,6,8,10,12,14> or <1,3,5,7,9,11,13,15>
where half the elements are returned, can be lowered using vnsrl.

SelectionDAGBuilder lowers such shuffles as a build_vector of
extract_elements since the mask has less elements than the source.
To fix this, I've enable the extractSubvectorIsCheapHook to allow
DAGCombine to rebuild the shuffle using 2 extract_subvectors preceding
the shufffle.

I've gone very conservative on extractSubvectorIsCheapHook to minimize
test impact and match what we have test coverage for. This can be
improved in the future.

Reviewed By: reames

Differential Revision: https://reviews.llvm.org/D133736
2022-09-13 11:07:11 -07:00
..
Analysis [CostModel][X86] Add CostKinds test coverage for bitreverse intrinsics 2022-09-13 11:23:03 +01:00
Assembler [LLParser] Add test for phi first class type error (NFC) 2022-08-31 14:24:13 +02:00
Bindings [ConstantExpr] Remove fneg expression 2022-09-08 10:24:55 +02:00
Bitcode [Bitcode] Fix constexpr autoupgrade for arrays and structs 2022-09-07 12:47:21 +02:00
BugPoint
CodeGen [RISCV] Teach lowerVECTOR_SHUFFLE to recognize some shuffles as vnsrl. 2022-09-13 11:07:11 -07:00
DebugInfo Revert "[clang, llvm] Add __declspec(safebuffers), support it in CodeView" 2022-09-13 10:53:59 +02:00
Demangle
Examples
ExecutionEngine [JITLink][COFF] Use DLLImportDefinitionGenerator for creating PLT stubs. 2022-09-10 15:25:44 +09:00
Feature [Verifier] Reject dllexport with non-default visibility 2022-09-05 10:53:41 -07:00
FileCheck
Instrumentation [test][msan] Add tests for @llvm.masked.* 2022-09-10 17:04:47 -07:00
Integer
JitListener
LTO
Linker [IR] Use Min behavior for module flag "PIC Level" 2022-08-18 16:28:55 -07:00
MC [AMDGPU][MC][GFX11][NFC] Update disassembler tests for VOPD instructions 2022-09-09 13:10:55 +03:00
MachineVerifier [MachineVerifier] Fix crash on early clobbered subreg operands. 2022-09-05 17:08:21 +03:00
Object [Object] Improve ArchiveWriter diagnostics 2022-09-10 21:06:52 +08:00
ObjectYAML
Other Loop names used in reporting can grow very large 2022-09-09 13:45:14 -04:00
SafepointIRVerifier
Support
SymbolRewriter
TableGen [RISCV][TableGen] Mark MachineInstr with FrameIndex as not compressible 2022-08-24 13:23:38 +08:00
ThinLTO/X86
Transforms [RISCV] Implement isMaskAndCmp0FoldingBeneficial hook 2022-09-13 18:54:00 +01:00
Unit [test] Propagate HWASAN_OPTIONS 2022-08-17 18:59:49 -07:00
Verifier [AArch64][SME] Add utility class for handling SME attributes. 2022-09-12 12:41:30 +00:00
YAMLParser
tools Revert "[llvm-dwp] Report the filename if it cannot be found" 2022-09-13 09:07:16 -04:00
.clang-format
CMakeLists.txt Add a utility for converting between different types of remarks 2022-09-12 15:04:19 -07:00
TestRunner.sh
lit.cfg.py Add a utility for converting between different types of remarks 2022-09-12 15:04:19 -07:00
lit.site.cfg.py.in