From: Richard Henderson Date: Mon, 27 Aug 2001 17:25:36 +0000 (-0700) Subject: dwarf2asm.c (dw2_asm_output_encoded_addr_rtx): Use proper alignment for assemble_inte... X-Git-Tag: prereleases/libstdc++-3.0.95~2417 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=225b9cb9f70d310e06ca3fc06f3d2c7a2f667b80;p=thirdparty%2Fgcc.git dwarf2asm.c (dw2_asm_output_encoded_addr_rtx): Use proper alignment for assemble_integer for DW_EH_PE_aligned. * dwarf2asm.c (dw2_asm_output_encoded_addr_rtx): Use proper alignment for assemble_integer for DW_EH_PE_aligned. * except.c (output_function_exception_table): Likewise. From-SVN: r45198 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e38ff4a2f8c4..cdaf55abe6de 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -2,6 +2,7 @@ * dwarf2asm.c (dw2_asm_output_encoded_addr_rtx): Use proper alignment for assemble_integer for DW_EH_PE_aligned. + * except.c (output_function_exception_table): Likewise. 2001-08-26 Andreas Jaeger diff --git a/gcc/except.c b/gcc/except.c index 25a08d5c737d..9aad8f598c93 100644 --- a/gcc/except.c +++ b/gcc/except.c @@ -3636,16 +3636,19 @@ output_function_exception_table () while (i-- > 0) { tree type = VARRAY_TREE (cfun->eh->ttype_data, i); + rtx value; if (type == NULL_TREE) type = integer_zero_node; else type = lookup_type_for_runtime (type); - dw2_asm_output_encoded_addr_rtx (tt_format, - expand_expr (type, NULL_RTX, VOIDmode, - EXPAND_INITIALIZER), - NULL); + value = expand_expr (type, NULL_RTX, VOIDmode, EXPAND_INITIALIZER); + if (tt_format == DW_EH_PE_absptr || tt_format == DW_EH_PE_aligned) + assemble_integer (value, tt_format_size, + tt_format_size * BITS_PER_UNIT, 1); + else + dw2_asm_output_encoded_addr_rtx (tt_format, value, NULL); } #ifdef HAVE_AS_LEB128