Index: src/IceTargetLoweringARM32.cpp |
diff --git a/src/IceTargetLoweringARM32.cpp b/src/IceTargetLoweringARM32.cpp |
index 17bd1b5876fc6f1cbaf0210859dabf61802b779f..2f1357f08d6258b80ebef8d2f8ff6d2bfe924cc8 100644 |
--- a/src/IceTargetLoweringARM32.cpp |
+++ b/src/IceTargetLoweringARM32.cpp |
@@ -239,6 +239,11 @@ void TargetARM32::translateO2() { |
// TODO(stichnot): share passes with X86? |
// https://code.google.com/p/nativeclient/issues/detail?id=4094 |
+ // Do not merge Alloca instructions, and lay out the stack. |
+ static constexpr bool SortAndCombineAllocas = false; |
+ Func->processAllocas(SortAndCombineAllocas); |
+ Func->dump("After Alloca processing"); |
+ |
if (!Ctx->getFlags().getPhiEdgeSplit()) { |
// Lower Phi instructions. |
Func->placePhiLoads(); |
@@ -340,6 +345,11 @@ void TargetARM32::translateOm1() { |
// TODO: share passes with X86? |
+ // Do not merge Alloca instructions, and lay out the stack. |
+ static constexpr bool SortAndCombineAllocas = false; |
+ Func->processAllocas(SortAndCombineAllocas); |
+ Func->dump("After Alloca processing"); |
+ |
Func->placePhiLoads(); |
if (Func->hasError()) |
return; |