[AArch64] Default to SEH exception handling on MinGW

The SEH implementation is pretty mature at this point.

Differential Revision: https://reviews.llvm.org/D61590

llvm-svn: 360080
This commit is contained in:
Martin Storsjo 2019-05-06 21:18:15 +00:00
parent 60b240edb4
commit 899f3cd581
3 changed files with 4 additions and 6 deletions

View File

@ -130,8 +130,6 @@ AArch64MCAsmInfoGNUCOFF::AArch64MCAsmInfoGNUCOFF() {
CodePointerSize = 8;
CommentString = "//";
ExceptionsType = ExceptionHandling::DwarfCFI;
// The default is dwarf, but WinEH can be enabled optionally, which requires
// WinEHEncodingType to be set.
ExceptionsType = ExceptionHandling::WinEH;
WinEHEncodingType = WinEH::EncodingType::Itanium;
}

View File

@ -1,4 +1,4 @@
; RUN: llc -mtriple aarch64-windows-gnu -filetype=asm -o - %s | FileCheck %s
; RUN: llc -mtriple aarch64-windows-gnu -exception-model=dwarf -filetype=asm -o - %s | FileCheck %s
define void @_Z1gv() personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) {
entry:

View File

@ -1,5 +1,5 @@
; RUN: llc < %s -exception-model=wineh -mtriple=aarch64-pc-mingw32 | FileCheck %s -check-prefix=WINEH
; RUN: llc < %s -exception-model=wineh -mtriple=aarch64-pc-mingw32 -filetype=obj | llvm-readobj -S | FileCheck %s -check-prefix=WINEH-SECTIONS
; RUN: llc < %s -mtriple=aarch64-pc-mingw32 | FileCheck %s -check-prefix=WINEH
; RUN: llc < %s -mtriple=aarch64-pc-mingw32 -filetype=obj | llvm-readobj -S | FileCheck %s -check-prefix=WINEH-SECTIONS
; Check emission of eh handler and handler data
declare i32 @_d_eh_personality(i32, i32, i64, i8*, i8*)