diff options
| author | Bill Wendling <isanbard@gmail.com> | 2011-07-19 00:06:12 +0000 | 
|---|---|---|
| committer | Bill Wendling <isanbard@gmail.com> | 2011-07-19 00:06:12 +0000 | 
| commit | e52e3f2c020354c8e0e966b719152b08349d0334 (patch) | |
| tree | 083724180e1ab2d14925ed92adfe775ca3d851fe /lib | |
| parent | e060a5cd0688caea0e3de670f642f92a4d0b326e (diff) | |
| download | external_llvm-e52e3f2c020354c8e0e966b719152b08349d0334.zip external_llvm-e52e3f2c020354c8e0e966b719152b08349d0334.tar.gz external_llvm-e52e3f2c020354c8e0e966b719152b08349d0334.tar.bz2  | |
Use the CompactUnwindEncoding from the Frame, if it's defined.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135451 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/MC/MCDwarf.cpp | 9 | 
1 files changed, 2 insertions, 7 deletions
diff --git a/lib/MC/MCDwarf.cpp b/lib/MC/MCDwarf.cpp index aba470e..ba3bda0 100644 --- a/lib/MC/MCDwarf.cpp +++ b/lib/MC/MCDwarf.cpp @@ -687,9 +687,6 @@ void FrameEmitterImpl::EmitCFIInstructions(MCStreamer &streamer,  /// normal CIE and FDE.  bool FrameEmitterImpl::EmitCompactUnwind(MCStreamer &Streamer,                                           const MCDwarfFrameInfo &Frame) { -#if 1 -  return false; -#else    MCContext &Context = Streamer.getContext();    const TargetAsmInfo &TAI = Context.getTargetAsmInfo();    bool VerboseAsm = Streamer.isVerboseAsm(); @@ -716,9 +713,7 @@ bool FrameEmitterImpl::EmitCompactUnwind(MCStreamer &Streamer,    //   .quad __gxx_personality    //   .quad except_tab1 -  uint32_t Encoding = -    TAI.getCompactUnwindEncoding(Frame.Instructions, -                                 getDataAlignmentFactor(Streamer), IsEH); +  uint32_t Encoding = Frame.CompactUnwindEncoding;    if (!Encoding) return false;    // The encoding needs to know we have an LSDA. @@ -745,6 +740,7 @@ bool FrameEmitterImpl::EmitCompactUnwind(MCStreamer &Streamer,                                        Twine(llvm::utohexstr(Encoding)));    Streamer.EmitIntValue(Encoding, Size); +    // Personality Function    Size = getSizeForEncoding(Streamer, dwarf::DW_EH_PE_absptr);    if (VerboseAsm) Streamer.AddComment("Personality Function"); @@ -762,7 +758,6 @@ bool FrameEmitterImpl::EmitCompactUnwind(MCStreamer &Streamer,      Streamer.EmitIntValue(0, Size); // No LSDA    return true; -#endif  }  const MCSymbol &FrameEmitterImpl::EmitCIE(MCStreamer &streamer,  | 
