diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2010-12-27 00:36:05 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2010-12-27 00:36:05 +0000 |
commit | 3a83c40ab61d5ca624f2bbadd70237c6adbdb304 (patch) | |
tree | f0e3c71d1852277f7ed6d945f96c8493bc395101 /lib/MC/MCAsmStreamer.cpp | |
parent | def548f9a0efa6e997a68ac2d77cb0ef574b7d43 (diff) |
Add support for the same encodings of the personality function that gnu as
supports.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122577 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/MC/MCAsmStreamer.cpp')
-rw-r--r-- | lib/MC/MCAsmStreamer.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/lib/MC/MCAsmStreamer.cpp b/lib/MC/MCAsmStreamer.cpp index a171ba120b..ee1342937f 100644 --- a/lib/MC/MCAsmStreamer.cpp +++ b/lib/MC/MCAsmStreamer.cpp @@ -189,7 +189,7 @@ public: virtual bool EmitCFIDefCfaOffset(int64_t Offset); virtual bool EmitCFIDefCfaRegister(int64_t Register); virtual bool EmitCFIOffset(int64_t Register, int64_t Offset); - virtual bool EmitCFIPersonality(const MCSymbol *Sym); + virtual bool EmitCFIPersonality(const MCSymbol *Sym, unsigned Encoding); virtual bool EmitCFILsda(const MCSymbol *Sym); virtual void EmitInstruction(const MCInst &Inst); @@ -758,11 +758,12 @@ bool MCAsmStreamer::EmitCFIOffset(int64_t Register, int64_t Offset) { return false; } -bool MCAsmStreamer::EmitCFIPersonality(const MCSymbol *Sym) { - if (this->MCStreamer::EmitCFIPersonality(Sym)) +bool MCAsmStreamer::EmitCFIPersonality(const MCSymbol *Sym, + unsigned Encoding) { + if (this->MCStreamer::EmitCFIPersonality(Sym, Encoding)) return true; - OS << ".cfi_personality 0, " << *Sym; + OS << ".cfi_personality " << Encoding << ", " << *Sym; EmitEOL(); return false; |