Index: llvm/lib/Target/ARC/ARCAsmPrinter.cpp =================================================================== --- llvm/lib/Target/ARC/ARCAsmPrinter.cpp +++ llvm/lib/Target/ARC/ARCAsmPrinter.cpp @@ -42,6 +42,8 @@ StringRef getPassName() const override { return "ARC Assembly Printer"; } void emitInstruction(const MachineInstr *MI) override; + + bool runOnMachineFunction(MachineFunction &MF) override; }; } // end anonymous namespace @@ -61,6 +63,12 @@ EmitToStreamer(*OutStreamer, TmpInst); } +bool ARCAsmPrinter::runOnMachineFunction(MachineFunction &MF) { + // Functions are 4-byte aligned. + MF.ensureAlignment(Align(4)); + AsmPrinter::runOnMachineFunction(MF); +} + // Force static initialization. extern "C" LLVM_EXTERNAL_VISIBILITY void LLVMInitializeARCAsmPrinter() { RegisterAsmPrinter X(getTheARCTarget());