Merge fixed alloca stack adjustments into the prolog
Also removes reliance on lowerAlloca entirely for the fixed allocations.
BUG=
R=jpp@chromium.org, stichnot@chromium.org
Review URL: https://codereview.chromium.org/1435363002 .
diff --git a/src/IceTargetLowering.h b/src/IceTargetLowering.h
index aff423c..c613d99 100644
--- a/src/IceTargetLowering.h
+++ b/src/IceTargetLowering.h
@@ -203,9 +203,12 @@
virtual bool hasFramePointer() const { return false; }
virtual void setHasFramePointer() = 0;
virtual SizeT getStackReg() const = 0;
+ virtual SizeT getFrameReg() const = 0;
virtual SizeT getFrameOrStackReg() const = 0;
virtual size_t typeWidthInBytesOnStack(Type Ty) const = 0;
virtual uint32_t getStackAlignment() const = 0;
+ virtual void reserveFixedAllocaArea(size_t Size, size_t Align) = 0;
+ virtual int32_t getFrameFixedAllocaOffset() const = 0;
/// Return whether a 64-bit Variable should be split into a Variable64On32.
virtual bool shouldSplitToVariable64On32(Type Ty) const = 0;