diff options
| author | Evan Cheng <evan.cheng@apple.com> | 2008-05-10 06:46:49 +0000 | 
|---|---|---|
| committer | Evan Cheng <evan.cheng@apple.com> | 2008-05-10 06:46:49 +0000 | 
| commit | 71b9afb053d9a8eb9baf3a52f82acdf9efba1c55 (patch) | |
| tree | 209f232ecfc1b86778bd6d15110e7acd7e759803 /llvm/lib/Target | |
| parent | b93cfdb48ab79b9d574e41276e4dd9613d6597ec (diff) | |
| download | bcm5719-llvm-71b9afb053d9a8eb9baf3a52f82acdf9efba1c55.tar.gz bcm5719-llvm-71b9afb053d9a8eb9baf3a52f82acdf9efba1c55.zip | |
When transforming a vector_shuffle to a load, the base address must not be an undef.
llvm-svn: 50940
Diffstat (limited to 'llvm/lib/Target')
| -rw-r--r-- | llvm/lib/Target/X86/X86ISelLowering.cpp | 2 | 
1 files changed, 2 insertions, 0 deletions
| diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp index d2d76671e94..307aeae1b22 100644 --- a/llvm/lib/Target/X86/X86ISelLowering.cpp +++ b/llvm/lib/Target/X86/X86ISelLowering.cpp @@ -6283,6 +6283,8 @@ static bool EltsFromConsecutiveLoads(SDNode *N, SDOperand PermMask,        return false;      if (!Base) {        Base = Elt.Val; +      if (Base->getOpcode() == ISD::UNDEF) +        return false;        continue;      }      if (Elt.getOpcode() == ISD::UNDEF) | 

