[c++] Don't emit exception tables for UI_NONE

Jakub Jelinek jakub@redhat.com
Fri Aug 3 09:52:00 GMT 2018


On Fri, Aug 03, 2018 at 11:45:31AM +0200, Tom de Vries wrote:
> 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.
> 
> OK for trunk if currently running bootstrap and reg-test on x86_64 succeeds?

LGTM (for UI_NONE there is no personality function either, so nothing to
decode .gcc_except_table ...).

> 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.

	Jakub



More information about the Gcc-patches mailing list