mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-25 13:24:46 +00:00
MergeFunctions: Two different sized allocas are *not* the same
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@237193 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -719,6 +719,15 @@ int FunctionComparator::cmpOperations(const Instruction *L,
|
||||
R->getRawSubclassOptionalData()))
|
||||
return Res;
|
||||
|
||||
if (const AllocaInst *AI = dyn_cast<AllocaInst>(L)) {
|
||||
if (int Res = cmpTypes(AI->getAllocatedType(),
|
||||
cast<AllocaInst>(R)->getAllocatedType()))
|
||||
return Res;
|
||||
if (int Res =
|
||||
cmpNumbers(AI->getAlignment(), cast<AllocaInst>(R)->getAlignment()))
|
||||
return Res;
|
||||
}
|
||||
|
||||
// We have two instructions of identical opcode and #operands. Check to see
|
||||
// if all operands are the same type
|
||||
for (unsigned i = 0, e = L->getNumOperands(); i != e; ++i) {
|
||||
|
Reference in New Issue
Block a user