1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 11:13:28 +01:00
llvm-mirror/lib
Qiu Chaofan 53d9081fa4 [NFC] [PowerPC] Remove dead code in BUILD_VECTOR peephole
The piece of code tries to use splat+shift to lower build_vector with
repeating bit pattern. And immediate field of vector splat is only 5
bits (-16~15). It iterates over them one by one to find which
shifts/rotates to number in build_vector.

This patch removes code to try matching constant with algebraic
right-shift because that's meaningless - any negative number's algebraic
right-shift won't produce result smaller than itself. Besides, code
(int)((unsigned)i >> j) means logical shift-right in C.

Reviewed By: RKSimon

Differential Revision: https://reviews.llvm.org/D93937
2021-01-05 11:35:00 +08:00
..
Analysis [InstSimplify] gep with poison operand is poison 2021-01-05 11:07:49 +09:00
AsmParser
BinaryFormat
Bitcode
Bitstream
CodeGen [NFC] Add the getSizeInBytes() interface for MachineConstantPoolValue 2021-01-05 03:22:45 +00:00
DebugInfo
Demangle
DWARFLinker
ExecutionEngine [llvm] Use llvm::any_of (NFC) 2021-01-04 11:42:47 -08:00
Extensions
FileCheck
Frontend
Fuzzer
FuzzMutate
InterfaceStub
IR
IRReader
LineEditor
Linker
LTO
MC
MCA
Object
ObjectYAML
Option
Passes [llvm] Use llvm::any_of (NFC) 2021-01-04 11:42:47 -08:00
ProfileData
Remarks
Support [llvm] Use llvm::any_of (NFC) 2021-01-04 11:42:47 -08:00
TableGen
Target [NFC] [PowerPC] Remove dead code in BUILD_VECTOR peephole 2021-01-05 11:35:00 +08:00
Testing
TextAPI
ToolDrivers
Transforms [JumpThreading][NewPM] Skip when target has divergent CF 2021-01-04 16:08:08 -08:00
WindowsManifest
XRay
CMakeLists.txt