1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 11:02:59 +02:00
llvm-mirror/test
Roman Lebedev 9f046e58b4 [X86] X86DAGToDAGISel::matchBitExtract(): prepare 'control' in 32 bits
Summary:
Noticed while looking at D56052.
```
  // The 'control' of BEXTR has the pattern of:
  // [15...8 bit][ 7...0 bit] location
  // [ bit count][     shift] name
  // I.e. 0b000000011'00000001 means  (x >> 0b1) & 0b11
```
I.e. we do not care about any of the bits aside from the low 16 bits.
So there is no point in doing the `slh`,`or` in 64 bits,
let's just do everything in 32 bits, and anyext if needed.

We could do that in 16 even, but we intentionally don't
zext to i16 (longer encoding IIRC),
so i'm guessing the same applies here.

Reviewers: craig.topper, andreadb, RKSimon

Reviewed By: craig.topper

Subscribers: llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D56715

llvm-svn: 353073
2019-02-04 19:04:26 +00:00
..
Analysis [SCEV] Do not bother creating separate SCEVUnknown for unreachable nodes 2019-02-04 05:04:19 +00:00
Assembler Add a 'dynamic' parameter to the objectsize intrinsic 2019-01-30 20:34:35 +00:00
Bindings
Bitcode Revert "[Sanitizers] UBSan unreachable incompatible with ASan in the presence of noreturn calls" 2019-01-24 18:04:21 +00:00
BugPoint
CodeGen [X86] X86DAGToDAGISel::matchBitExtract(): prepare 'control' in 32 bits 2019-02-04 19:04:26 +00:00
DebugInfo [DebugInfo] Fix mkdir use in test 2019-02-01 21:14:21 +00:00
Demangle
Examples
ExecutionEngine
Feature
FileCheck Fixup test after r352704 since it changes how paths may be emitted. 2019-01-31 07:58:34 +00:00
Instrumentation [ASan] Do not instrument other runtime functions with __asan_handle_no_return 2019-02-02 02:05:16 +00:00
Integer
JitListener
Linker
LTO
MC [WebAssembly] Make segment/size/type directives optional in asm 2019-02-04 18:03:11 +00:00
Object [WebAssembly] Rename relocations from R_WEBASSEMBLY_ to R_WASM_ 2019-02-04 17:28:46 +00:00
ObjectYAML [WebAssembly] Rename relocations from R_WEBASSEMBLY_ to R_WASM_ 2019-02-04 17:28:46 +00:00
Other Add a 'dynamic' parameter to the objectsize intrinsic 2019-01-30 20:34:35 +00:00
SafepointIRVerifier
SymbolRewriter
TableGen [TblGen] Extend !if semantics through new feature !cond 2019-01-25 10:25:25 +00:00
ThinLTO/X86 Try to make new test more resilient to different orderings 2019-01-29 02:04:01 +00:00
tools [WebAssembly] Rename relocations from R_WEBASSEMBLY_ to R_WASM_ 2019-02-04 17:28:46 +00:00
Transforms [CGP] use IRBuilder to simplify code 2019-02-04 16:30:46 +00:00
Unit
Verifier GlobalISel: Verify memory size for load/store 2019-01-30 01:10:42 +00:00
YAMLParser
.clang-format
CMakeLists.txt
lit.cfg.py
lit.site.cfg.py.in
TestRunner.sh