Commit b9f83dd2 authored by Daniel Sanders's avatar Daniel Sanders
Browse files

Try to make AsmPrinter vtable compatible with previous shared library.

r232083 added AsmPrinter::emitInlineAsmStart() before
AsmPrinter::emitInlineAsmEnd(), changing the vtable in an incompatible way.
This patch swaps the declaration order so that the new vtable entry is at the
end of the vtable.

llvm-svn: 232162
parent 4351822a
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -461,10 +461,6 @@ public:
                                     unsigned AsmVariant, const char *ExtraCode,
                                     raw_ostream &OS);

  /// Let the target do anything it needs to do before emitting inlineasm.
  /// \p StartInfo - the subtarget info before parsing inline asm
  virtual void emitInlineAsmStart(const MCSubtargetInfo &StartInfo) const;

  /// Let the target do anything it needs to do after emitting inlineasm.
  /// This callback can be used restore the original mode in case the
  /// inlineasm contains directives to switch modes.
@@ -474,6 +470,10 @@ public:
  virtual void emitInlineAsmEnd(const MCSubtargetInfo &StartInfo,
                                const MCSubtargetInfo *EndInfo) const;

  /// Let the target do anything it needs to do before emitting inlineasm.
  /// \p StartInfo - the subtarget info before parsing inline asm
  virtual void emitInlineAsmStart(const MCSubtargetInfo &StartInfo) const;

private:
  /// Private state for PrintSpecial()
  // Assign a unique ID to this machine instruction.
+2 −2
Original line number Diff line number Diff line
@@ -60,11 +60,11 @@ private:
  std::map<const char *, const llvm::Mips16HardFloatInfo::FuncSignature *>
  StubsNeeded;

  void emitInlineAsmStart(const MCSubtargetInfo &StartInfo) const override;

  void emitInlineAsmEnd(const MCSubtargetInfo &StartInfo,
                        const MCSubtargetInfo *EndInfo) const override;

  void emitInlineAsmStart(const MCSubtargetInfo &StartInfo) const override;

  void EmitJal(MCSymbol *Symbol);

  void EmitInstrReg(unsigned Opcode, unsigned Reg);