llvm-project/llvm/test
Craig Topper 8324003818 [X86][InstCombine] Add basic simplification support for BEXTR/BEXTRI intrinsics.
This patch adds simplification support for the BEXTR/BEXTRI intrinsics to match gcc. This only supports cases that fold to 0 or can be fully constant folded. Theoretically we could support converting to AND if the shift part is unused or to only a shift if the mask doesn't modify any bits after an equivalent shl. gcc doesn't do these transformations either.

I put this in InstCombine, but it could be done in InstSimplify. It would be the first target specific intrinsic in InstSimplify.

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

llvm-svn: 309603
2017-07-31 18:52:13 +00:00
..
Analysis [tests] Do not emity binary bitcode to stdout in RegionInfo tests 2017-07-29 09:58:43 +00:00
Assembler test: add an additional cfi_return_column test 2017-07-30 21:30:54 +00:00
Bindings [LLVM-C] [OCaml] Expose Type::subtypes. 2017-06-05 11:49:52 +00:00
Bitcode Remove the obsolete offset parameter from @llvm.dbg.value 2017-07-28 20:21:02 +00:00
BugPoint bugpoint: disabling symbolication of bugpoint-executed programs 2017-06-09 07:29:03 +00:00
CodeGen [TargetPassConfig] Feature generic options to setup start/stop-after/before 2017-07-31 18:24:07 +00:00
DebugInfo DebugInfo: Fix r309526, ensure resetting base address selection entries are used 2017-07-31 00:18:24 +00:00
DllTool [llvm-dlltool] Write correct weak externals 2017-07-31 11:18:41 +00:00
Examples
ExecutionEngine
Feature Remove the BBVectorize pass. 2017-06-30 07:09:08 +00:00
FileCheck [llvm] Remove redundant check-prefix=CHECK from tests. NFC. 2017-07-17 17:32:45 +00:00
Instrumentation [sanitizer-coverage] rename sanitizer-coverage-create-pc-table into sanitizer-coverage-pc-table and add plumbing for a clang flag 2017-07-28 00:09:29 +00:00
Integer
JitListener
LTO [LTO] llvm-lto2: Add option to load sample profile 2017-07-28 23:43:22 +00:00
LibDriver [llvm-ar] Make llvm-lib behave more like the MSVC archiver 2017-06-12 19:45:35 +00:00
Linker ThinLTO: Don't import aliases of any kind (even linkonce_odr) 2017-07-27 15:09:06 +00:00
MC [AArch64] Tie source and destination operands for AESMC/AESIMC. 2017-07-29 20:35:28 +00:00
Object [LTO] Prevent dead stripping and internalization of symbols with sections 2017-07-25 19:42:32 +00:00
ObjectYAML [codeview] Fix YAML for LF_TYPESERVER2 by hoisting PDB_UniqueId 2017-07-17 23:59:44 +00:00
Other Update the test to make windows bot pass. 2017-07-29 07:01:25 +00:00
SafepointIRVerifier [SafepointIRVerifier] Avoid false positives in GC verifier for compare between pointers 2017-07-07 13:02:29 +00:00
SymbolRewriter
TableGen Re-commit: r309094 [globalisel][tablegen] Fuse the generated tables together. 2017-07-27 11:03:45 +00:00
ThinLTO/X86 ThinLTO: Don't import aliases of any kind (even linkonce_odr) 2017-07-27 15:09:06 +00:00
Transforms [X86][InstCombine] Add basic simplification support for BEXTR/BEXTRI intrinsics. 2017-07-31 18:52:13 +00:00
Unit Change remaining references to lit.util.capture to use subprocess.check_output. 2017-07-06 21:46:47 +00:00
Verifier Remove the obsolete offset parameter from @llvm.dbg.value 2017-07-28 20:21:02 +00:00
YAMLParser
tools [DWARF] Added verification check for tags in accelerator tables. This patch verifies that the atom tag is actually the same with the tag of the DIE that we retrieve from the table. 2017-07-31 18:01:16 +00:00
.clang-format
CMakeLists.txt Revert "Reland "[LLVM][llvm-objcopy] Added basic plumbing to get things started"" 2017-07-27 06:02:05 +00:00
TestRunner.sh
lit.cfg Re-enable libxml2 tests. 2017-07-27 01:11:53 +00:00
lit.site.cfg.in Correctly enable the llvm-mt tests, now that build flags changed. 2017-07-26 16:35:44 +00:00