Use dwarf exceptions on armv7 and aarch64

Dwarf is also the default in clang on i686, but libunwind currently
has an issue relating to unwinding dwarf exceptions on i686 on
windows (and less easily reproducible on other platforms),
see https://reviews.llvm.org/D38680.

This enables exceptions on aarch64, where they previously were
avoided/disabled.

When linking to a statically linked libunwind with support for
dwarf, one (currently) has to link in -lpsapi.
This commit is contained in:
Martin Storsjö committed 2017-11-28 18:06:46 +02:00
1 parent a30166a84f
commit 03f1fd6c65
3 files changed
+9 -24

No files matched your search

+3 -3
View File
@@ -5,11 +5,11 @@ EXE=$(basename $0 | sed 's/.*-\(clang.*\)/\1/')
# We could set these defaults in the clang frontend driver, but that's not yet merged upstream
ARCH=$(echo $TARGET | sed 's/-.*//')
case $ARCH in
i686|x86_64|armv7)
i686|x86_64)
EH_FLAG=-fsjlj-exceptions
;;
aarch64)
EH_FLAG=-fno-exceptions
armv7|aarch64)
EH_FLAG=
;;
esac
$DIR/$EXE -target $TARGET -rtlib=compiler-rt -stdlib=libc++ -fuse-ld=lld $EH_FLAG -Qunused-arguments "$@"