Chromium Code Reviews| Index: src/IceTargetLoweringARM32.h |
| diff --git a/src/IceTargetLoweringARM32.h b/src/IceTargetLoweringARM32.h |
| index 969e17a6b49c9ac8cdfdfcbfa400a53a058b1551..02aa97dea7478c6b4945d39f0399df8b58075435 100644 |
| --- a/src/IceTargetLoweringARM32.h |
| +++ b/src/IceTargetLoweringARM32.h |
| @@ -86,8 +86,9 @@ public: |
| bool hasFramePointer() const override { return UsesFramePointer; } |
| void setHasFramePointer() override { UsesFramePointer = true; } |
| SizeT getStackReg() const override { return RegARM32::Reg_sp; } |
| + SizeT getFrameReg() const override { return RegARM32::Reg_fp; } |
| SizeT getFrameOrStackReg() const override { |
| - return UsesFramePointer ? RegARM32::Reg_fp : RegARM32::Reg_sp; |
| + return UsesFramePointer ? getFrameReg() : getStackReg(); |
|
John
2015/11/16 14:00:02
nice. :)
sehr
2015/11/16 18:42:24
I thought so -- one place for constants is a good
|
| } |
| SizeT getReservedTmpReg() const { return RegARM32::Reg_ip; } |
| @@ -97,6 +98,18 @@ public: |
| return (typeWidthInBytes(Ty) + 3) & ~3; |
| } |
| uint32_t getStackAlignment() const override; |
| + void reserveFixedAllocaArea(size_t Size, size_t Align) override { |
| + // TODO(sehr,jpp): Implement fixed stack layout. |
| + (void) Size; |
| + (void) Align; |
| + llvm::report_fatal_error("Not yet implemented"); |
| + } |
| + int32_t getFrameFixedAllocaOffset() const override { |
| + // TODO(sehr,jpp): Implement fixed stack layout. |
| + llvm::report_fatal_error("Not yet implemented"); |
| + return 0; |
| + } |
| + |
| bool shouldSplitToVariable64On32(Type Ty) const override { |
| return Ty == IceType_i64; |