diff options
| author | Craig Topper <craig.topper@intel.com> | 2018-06-17 16:29:46 +0000 |
|---|---|---|
| committer | Craig Topper <craig.topper@intel.com> | 2018-06-17 16:29:46 +0000 |
| commit | b0e986f88e4db23f1e2613b9e80e496e689596d7 (patch) | |
| tree | 093ef74fcce223aa6da635961234657ed4edc115 /llvm/test | |
| parent | e930f569f778a6d011fcec42970a7a6f5b1d5b80 (diff) | |
| download | bcm5719-llvm-b0e986f88e4db23f1e2613b9e80e496e689596d7.tar.gz bcm5719-llvm-b0e986f88e4db23f1e2613b9e80e496e689596d7.zip | |
[X86] Pass the parent SDNode to X86DAGToDAGISel::selectScalarSSELoad to simplify the hasSingleUseFromRoot handling.
Some of the calls to hasSingleUseFromRoot were passing the load itself. If the load's chain result has a user this would count against that. By getting the true parent of the match and ensuring any intermediate between the match and the load have a single use we can avoid this case. isLegalToFold will take care of checking users of the load's data output.
This fixed at least fma-scalar-memfold.ll to succed without the peephole pass.
llvm-svn: 334908
Diffstat (limited to 'llvm/test')
| -rw-r--r-- | llvm/test/CodeGen/X86/fma-scalar-memfold.ll | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/test/CodeGen/X86/fma-scalar-memfold.ll b/llvm/test/CodeGen/X86/fma-scalar-memfold.ll index 7822139c3e1..016a78a8dd3 100644 --- a/llvm/test/CodeGen/X86/fma-scalar-memfold.ll +++ b/llvm/test/CodeGen/X86/fma-scalar-memfold.ll @@ -1,6 +1,6 @@ ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py -; RUN: llc < %s -mcpu=core-avx2 | FileCheck %s --check-prefix=CHECK --check-prefix=AVX2 -; RUN: llc < %s -mcpu=skx | FileCheck %s --check-prefix=CHECK --check-prefix=AVX512 +; RUN: llc < %s -disable-peephole -mcpu=core-avx2 | FileCheck %s --check-prefix=CHECK --check-prefix=AVX2 +; RUN: llc < %s -disable-peephole -mcpu=skx | FileCheck %s --check-prefix=CHECK --check-prefix=AVX512 target triple = "x86_64-unknown-unknown" |

