[c++] Don't emit exception tables for UI_NONE
authorTom de Vries <tdevries@suse.de>
Fri, 3 Aug 2018 11:21:09 +0000 (11:21 +0000)
committerTom de Vries <vries@gcc.gnu.org>
Fri, 3 Aug 2018 11:21:09 +0000 (11:21 +0000)
commitd989dba8ef02c2406b7c9e62b352197dffc6b880
tree583b687ac4891326b23d1469a5fd735ff85ffff9
parenta77e3a39de3843a8c0a0d59635b2bdd07ee67812
[c++] Don't emit exception tables for UI_NONE

If a target does not support exceptions, it can indicate this by returning
UI_NONE in TARGET_EXCEPT_UNWIND_INFO.  Currently the compiler still emits
exception tables for such a target.

This patch makes sure that no exception tables are emitted if the target does
not support exceptions.  This allows us to remove a workaround in
TARGET_ASM_BYTE_OP in the nvptx port.

Build on x86_64 with nvptx accelerator, and tested libgomp.

Build and reg-tested on x86_64.

2018-08-03  Tom de Vries  <tdevries@suse.de>

* common/config/nvptx/nvptx-common.c (nvptx_except_unwind_info): Return
UI_NONE.
* config/nvptx/nvptx.c (TARGET_ASM_BYTE_OP): Remove define.
* except.c (output_function_exception_table): Do early exit if
targetm_common.except_unwind_info (&global_options) == UI_NONE.

From-SVN: r263287
gcc/ChangeLog
gcc/common/config/nvptx/nvptx-common.c
gcc/config/nvptx/nvptx.c
gcc/except.c