projects
/
oota-llvm.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
478eed8
)
Don't create VBROADCAST nodes if any nodes use the chain result from the load. Fixes...
author
Craig Topper
<craig.topper@gmail.com>
Wed, 1 Feb 2012 06:51:58 +0000
(06:51 +0000)
committer
Craig Topper
<craig.topper@gmail.com>
Wed, 1 Feb 2012 06:51:58 +0000
(06:51 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149478
91177308
-0d34-0410-b5e6-
96231b3b80d8
lib/Target/X86/X86ISelLowering.cpp
patch
|
blob
|
history
diff --git
a/lib/Target/X86/X86ISelLowering.cpp
b/lib/Target/X86/X86ISelLowering.cpp
index 90cd3d3b747bb8b603f573666e747f3fe0a1fa36..2ce883a17007e0ecdbf7e1e1271889c536d7641c 100644
(file)
--- a/
lib/Target/X86/X86ISelLowering.cpp
+++ b/
lib/Target/X86/X86ISelLowering.cpp
@@
-4997,6
+4997,10
@@
static SDValue isVectorBroadcast(SDValue &Op, const X86Subtarget *Subtarget) {
if (!ISD::isNormalLoad(Ld.getNode()))
return SDValue();
+ // Reject loads that have uses of the chain result
+ if (Ld->hasAnyUseOfValue(1))
+ return SDValue();
+
bool Is256 = VT.getSizeInBits() == 256;
bool Is128 = VT.getSizeInBits() == 128;
unsigned ScalarSize = Ld.getValueType().getSizeInBits();