1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 11:02:59 +02:00
llvm-mirror/test
Craig Topper 2116458c40 [DAGCombiner] Call ExtendUsesToFormExtLoad in (zext (and (load)))->(and (zextload)) even when the and does not have multiple uses
Same for the sign extend case.

Currently we check for multiple uses on the binop. Then we call ExtendUsesToFormExtLoad to capture SetCCs that use the load. So we only end up finding any setccs when the and has additional uses and the load is used by a setcc. I don't think the and having multiple uses is relevant here. I think we should only be checking for the load having multiple uses.

This changes an NVPTX test because we now find that the load has a second use by a truncate, but ExtendUsesToFormExtLoad only looks at setccs it can extend. All other operations just check isTruncateFree. Maybe we should allow widening of an existing truncate even if its not free?

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

llvm-svn: 325289
2018-02-15 20:20:32 +00:00
..
Analysis [SCEV] Make getPostIncExpr guaranteed to return AddRec 2018-02-12 05:09:38 +00:00
Assembler [DebugInfo] Unify ChecksumKind and Checksum value in DIFile 2018-02-12 19:45:54 +00:00
Bindings
Bitcode [DebugInfo] Unify ChecksumKind and Checksum value in DIFile 2018-02-12 19:45:54 +00:00
BugPoint [bugpoint] Report non-existent opt binary 2018-02-09 06:09:15 +00:00
CodeGen [DAGCombiner] Call ExtendUsesToFormExtLoad in (zext (and (load)))->(and (zextload)) even when the and does not have multiple uses 2018-02-15 20:20:32 +00:00
DebugInfo [DebugInfo] Accept enumeration types without underlying integer type present in 2018-02-15 13:29:33 +00:00
Examples
ExecutionEngine
Feature
FileCheck
Instrumentation [hwasan] Fix kernel instrumentation of stack. 2018-02-09 00:59:10 +00:00
Integer
JitListener
Linker
LTO LTO: Include live bit in ThinLTO cache key. 2018-02-09 05:58:55 +00:00
MC [X86] Change 32 and 64 bit versions of LSL instruction have a 16-bit memory operand. 2018-02-15 01:21:53 +00:00
Object
ObjectYAML
Other Recommit r325001: [CallSiteSplitting] Support splitting of blocks with instrs before call. 2018-02-14 13:59:12 +00:00
SafepointIRVerifier
SymbolRewriter
TableGen [tablegen] Fixed few !foreach evaluation issues. 2018-02-09 18:37:55 +00:00
ThinLTO/X86 [ThinLTO/CFI] Include TYPE_ID summaries into GLOBALVAL_SUMMARY_BLOCK 2018-02-14 22:41:15 +00:00
tools [llvm-objcopy] Fix handling of zero-size segments in llvm-objcopy 2018-02-14 23:31:33 +00:00
Transforms [Coroutines] Don't move stores for allocator args 2018-02-15 19:31:45 +00:00
Unit
Verifier [DebugInfo] Unify ChecksumKind and Checksum value in DIFile 2018-02-12 19:45:54 +00:00
YAMLParser
.clang-format
CMakeLists.txt
lit.cfg.py
lit.site.cfg.py.in
TestRunner.sh