[PATCH][MC/SPARC] Add support for EH to SPARC backend

Venkatraman Govindaraju venkatra at cs.wisc.edu
Fri Sep 13 09:59:37 PDT 2013


Ping.


On Fri, Sep 6, 2013 at 9:50 AM, Venkatraman Govindaraju <
venkatra at cs.wisc.edu> wrote:

> Hi Rafael,
>
>   Thank you for the reviews.
>    Now. I split the patch into three patches.
>   First patch implements parsing and emitting .cfi_window_save and checks
> the binary output also. Second patch teaches AsmPrinter how to emit
> .cfi_register, which is required for implemening exceptionhandling for
> SPARC. The final patch implements ExceptionHandling support in sparc
> backend.
>
>   Originally I named EmitCFIGNUWIndowSave because the corresponding enum
> in llvm/Support/dwarf.h is DW_CFA_GNU_window_save. Now, I renamed the
> functions as CFIWindowSave to be consistent with the .cfi_window_save as
> suggested.
>
>   The EmitCFIWindowSave() and ParseCFIWindowSave() functions still start
> with uppercase letter to be consistent with other methods in the
> AsmStreamer and AsmParser class.
>
> Thanks,
> Venkatraman
>
>
> On Thu, Sep 5, 2013 at 1:45 PM, Rafael EspĂ­ndola <
> rafael.espindola at gmail.com> wrote:
>
>> Why the EmitCFIGNUWindowSave name? The other methods are named almost
>> 1:1 with the instruction. Also, please start new methods with a
>> lowercase letter.
>>
>> +  case MCCFIInstruction::OpRegister:
>> +    OutStreamer.EmitCFIRegister(Inst.getRegister(), Inst.getRegister2());
>> +    break;
>>
>> Is this related?
>>
>> +  ExceptionsType = ExceptionHandling::DwarfCFI;
>>
>> Can you split this and lib/Target/Sparc/SparcFrameLowering.cpp  to a
>> followup patch? In fact, please make the first patch be just about
>> parsing and emitting .cfi_window_save. The testcase should check the
>> binary output too.
>>
>>
>> On 1 September 2013 13:37, Venkatraman Govindaraju <venkatra at cs.wisc.edu>
>> wrote:
>> >
>> > Thank you for the comment. I updated the patch with support for the new
>> CFI
>> > directive in MC/MCParser/AsmParser.cpp.
>> >
>> > Please let me know if it is okay to commit.
>> >
>> > Thanks,
>> > Venkatraman
>> >
>> >
>> > On Thu, Aug 29, 2013 at 6:11 PM, Bill Wendling <wendling at apple.com>
>> wrote:
>> >>
>> >> Hi Venkatraman,
>> >>
>> >> One comment, you should also add parsing support for the new CFI
>> directive
>> >> in lib/MC/MCParser/AsmParser.cpp.
>> >>
>> >> -bw
>> >>
>> >> On Aug 28, 2013, at 1:34 PM, Venkatraman Govindaraju
>> >> <venkatra at cs.wisc.edu> wrote:
>> >>
>> >> > Ping.
>> >> >
>> >> >
>> >> > On Fri, Aug 9, 2013 at 10:57 PM, Venkatraman Govindaraju
>> >> > <venkatra at cs.wisc.edu> wrote:
>> >> > Please review the attached patch.
>> >> >
>> >> > This patch enables exception handling (using DwarfCFI) for SPARC.
>> >> >
>> >> > This patch also modifies MC layer so that the SPARC backend can emit
>> >> > ".cfi_window_save" and ".cfi_register" directives, which are
>> required for EH
>> >> > to work correctly in SPARC.
>> >> >
>> >> > Thanks,
>> >> > Venkatraman
>> >> >
>> >> > _______________________________________________
>> >> > llvm-commits mailing list
>> >> > llvm-commits at cs.uiuc.edu
>> >> > http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>> >>
>> >
>> >
>> > _______________________________________________
>> > llvm-commits mailing list
>> > llvm-commits at cs.uiuc.edu
>> > http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>> >
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130913/d0d7ee90/attachment.html>


More information about the llvm-commits mailing list