[llvm-dev] Upstreaming Exception Handling support for Windows on ARM64
Reid Kleckner via llvm-dev
llvm-dev at lists.llvm.org
Thu Jul 19 11:09:50 PDT 2018
I think your order of patches makes sense.
Do you plan to add assembler directives similar to the .cfi_* and .seh_*
directives? The assembly examples in the Microsoft docs don't have any, but
I think it would be really valuable for MC to have some. It's really useful
to be able to modify compiler generated assembly manually, reassemble with
a slightly different prologue, and have everything just work. For example,
I'm imagining the assembler would be responsible for adding nop unwind
codes for each non-prologue instruction interleaved in the prologue.
On Tue, Jul 17, 2018 at 12:04 PM via llvm-dev <llvm-dev at lists.llvm.org>
wrote:
> Hi,
>
>
>
> We would like to upstream exception handling support for Windows on
> ARM64. Microsoft-published specifications can be found here:
>
>
>
> a)
> https://docs.microsoft.com/en-us/cpp/build/arm64-exception-handling
>
> b)
> https://docs.microsoft.com/en-us/cpp/build/arm64-windows-abi-conventions
>
>
>
> We propose the following approach:
>
>
>
> 1) Upstream miscellaneous clang and llvm patches that are
> needed for exception handling on ARM64 Windows. These are small patches
> that deal with the ABI, relocations, etc. There are around 8 or 9 patches
> to upstream.
>
> 2) Upstream the MCLayer part. This mostly deals with unwinding
> opcodes that are described in a). This will probably consist of two
> patches.
>
> 3) Upstream the AArch64 frame lowering part. This mostly deals
> with emitting unwinding opcodes, as well as some small changes to the
> exception handling tables. Probably two patches.
>
> 4) Upstream setjmp support. This consists of two patches (one
> clang and one llvm).
>
>
>
> Any thoughts?
>
>
>
> Mandeep and I will start upstreaming shortly.
>
>
>
> Thanks,
>
> Sanjin
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20180719/5438afe4/attachment.html>
More information about the llvm-dev
mailing list