llvm-project/llvm/test
Michael Kuperstein d36e24a166 [X86] Avoid folding scalar loads into unary sse intrinsics
Not folding these cases tends to avoid partial register updates:
sqrtss (%eax), %xmm0
Has a partial update of %xmm0, while
movss (%eax), %xmm0
sqrtss %xmm0, %xmm0
Has a clobber of the high lanes immediately before the partial update,
avoiding a potential stall.

Given this, we only want to fold when optimizing for size.
This is consistent with the patterns we already have for some of
the fp/int converts, and in X86InstrInfo::foldMemoryOperandImpl()

Differential Revision: http://reviews.llvm.org/D15741

llvm-svn: 256671
2015-12-31 09:45:16 +00:00
..
Analysis [ValueTracking] fix bug computing isKnownToBeAPowerOfTwo() with arithmetic shift right (PR25900) 2015-12-30 22:40:52 +00:00
Assembler [ConstantFold] Fix bitcast to gep constant folding transform. 2015-12-14 19:30:32 +00:00
Bindings Deprecate a few C APIs. 2015-12-18 23:46:42 +00:00
Bitcode Add InaccessibleMemOnly and inaccessibleMemOrArgMemOnly attributes 2015-12-16 16:16:19 +00:00
BugPoint [bugpoint] Add a named metadata (+their operands) reducer 2015-11-06 00:12:50 +00:00
CodeGen [X86] Avoid folding scalar loads into unary sse intrinsics 2015-12-31 09:45:16 +00:00
DebugInfo [X86, Win64] Use a frame pointer if pushf is emitted 2015-12-27 06:07:26 +00:00
Examples
ExecutionEngine Un-XFAIL JIT EH tests under [am]san. 2015-12-15 23:46:21 +00:00
Feature [MergeFunctions] Use II instead of CI for InvokeInst; NFC 2015-12-14 19:11:45 +00:00
FileCheck
Instrumentation Partial fix for PR25912, see comment 13. Should fix the sanitizer bootstrap bot 2015-12-22 01:18:49 +00:00
Integer
JitListener DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
LTO Add InaccessibleMemOnly and inaccessibleMemOrArgMemOnly attributes 2015-12-16 16:16:19 +00:00
LibDriver
Linker [ThinLTO/LTO] Don't link in unneeded metadata 2015-12-18 17:51:37 +00:00
MC Accept dwarf version 5 for CIE versions. 2015-12-28 23:02:42 +00:00
Object Handle archives with paths in the names. 2015-12-18 16:07:17 +00:00
Other [llc/opt] Add an option to run all passes twice 2015-12-04 21:56:46 +00:00
SymbolRewriter
TableGen Add new vector types for 512-, 1024- and 2048-bit vectors 2015-11-24 13:07:35 +00:00
Transforms [JumpThreading] Fix opcode bonus in getJumpThreadDuplicationCost() 2015-12-29 18:10:16 +00:00
Unit
Verifier [gc.statepoint] Change gc.statepoint intrinsic's return type to token type instead of i32 type 2015-12-26 07:54:32 +00:00
YAMLParser
tools Fix gold test after r256465. 2015-12-29 03:48:37 +00:00
.clang-format
CMakeLists.txt [llvm-dwp] Add missing dependency from llvm tests on the llvm-dwp tool 2015-12-01 00:57:05 +00:00
Makefile check-llvm: Tweak the feature "timestamps" for autoconf. 2015-12-21 08:46:12 +00:00
Makefile.tests
TestRunner.sh
lit.cfg Prune the feature "tls". No one is using it since TLS is enabled for Cygwin. 2015-12-27 06:14:33 +00:00
lit.site.cfg.in [MC, COFF] Unbreak support for COFF timestamps 2015-12-21 08:03:07 +00:00