diff options
author | Brian Gaeke <gaeke@uiuc.edu> | 2004-08-24 06:41:39 +0000 |
---|---|---|
committer | Brian Gaeke <gaeke@uiuc.edu> | 2004-08-24 06:41:39 +0000 |
commit | f1b7eb145e5376ee46b95040d1ec09a4c98ed1bc (patch) | |
tree | 5bee57c0becb666d97a939c3f3c89cc523570769 /lib/Target/SparcV9/RegAlloc | |
parent | ac9edd5faae048507c65c9d319b7904e43a49dec (diff) | |
download | external_llvm-f1b7eb145e5376ee46b95040d1ec09a4c98ed1bc.zip external_llvm-f1b7eb145e5376ee46b95040d1ec09a4c98ed1bc.tar.gz external_llvm-f1b7eb145e5376ee46b95040d1ec09a4c98ed1bc.tar.bz2 |
Fix bug in PhyRegAlloc::setCallInterferences() handling call through a
null pointer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16013 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/SparcV9/RegAlloc')
-rw-r--r-- | lib/Target/SparcV9/RegAlloc/PhyRegAlloc.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/Target/SparcV9/RegAlloc/PhyRegAlloc.cpp b/lib/Target/SparcV9/RegAlloc/PhyRegAlloc.cpp index 02f18fc..bbbaee8 100644 --- a/lib/Target/SparcV9/RegAlloc/PhyRegAlloc.cpp +++ b/lib/Target/SparcV9/RegAlloc/PhyRegAlloc.cpp @@ -204,8 +204,9 @@ void PhyRegAlloc::setCallInterferences(const MachineInstr *MInst, // That has a call interference because it conflicts with outgoing args. if (const Value *AddrVal = argDesc->getIndirectFuncPtr()) { LiveRange *AddrValLR = LRI->getLiveRangeForValue( AddrVal ); - assert( AddrValLR && "No LR for indirect addr val of call"); - AddrValLR->setCallInterference(); + // LR can be null if the function pointer is a constant. + if (AddrValLR) + AddrValLR->setCallInterference(); } } |