Index: lib/Target/ARM/ARMAsmPrinter.h |
diff --git a/lib/Target/ARM/ARMAsmPrinter.h b/lib/Target/ARM/ARMAsmPrinter.h |
index 5ff20ce777cb81fc5d5e4462466222dd88a4fb03..7f2c86e6e39eceb40482828da9315d4904381a92 100644 |
--- a/lib/Target/ARM/ARMAsmPrinter.h |
+++ b/lib/Target/ARM/ARMAsmPrinter.h |
@@ -74,9 +74,15 @@ public: |
void EmitInstruction(const MachineInstr *MI) override; |
bool runOnMachineFunction(MachineFunction &F) override; |
+ // @LOCALMOD-START |
+ // Usually this does nothing on ARM as constants pools are handled with |
+ // custom code (for constant islands). |
+ // When not using constant islands, fall back to the default implementation. |
void EmitConstantPool() override { |
- // we emit constant pools customly! |
+ if (!Subtarget->useConstIslands()) AsmPrinter::EmitConstantPool(); |
} |
+ // @LOCALMOD-END |
+ |
void EmitFunctionBodyEnd() override; |
void EmitFunctionEntryLabel() override; |
void EmitStartOfAsmFile(Module &M) override; |
@@ -85,6 +91,17 @@ public: |
// lowerOperand - Convert a MachineOperand into the equivalent MCOperand. |
bool lowerOperand(const MachineOperand &MO, MCOperand &MCOp); |
+ |
+ // @LOCALMOD-START |
+ /// UseReadOnlyJumpTables - true if JumpTableInfo must be in rodata. |
+ bool UseReadOnlyJumpTables() const override; |
+ /// GetTargetBasicBlockAlign - Get the target alignment for basic blocks. |
+ unsigned GetTargetBasicBlockAlign() const override; |
+ /// GetTargetLabelAlign - Get optional alignment for TargetOpcode |
+ /// labels E.g., EH_LABEL. |
+ /// TODO(sehr,robertm): remove this if the labeled block has address taken. |
+ unsigned GetTargetLabelAlign(const MachineInstr *MI) const override; |
+ // @LOCALMOD-END |
private: |
// Helpers for EmitStartOfAsmFile() and EmitEndOfAsmFile() |