Author: johannes Date: Tue Jan 15 17:20:17 2008 New Revision: 46028 URL: http://llvm.org/viewvc/llvm-project?rev=46028&view=rev Log: Use 64 bits for "save_filt" temps on 64-bit targets. LLVM uses 64 bits for these and they need to match.
Modified: llvm-gcc-4.2/trunk/gcc/tree-eh.c Modified: llvm-gcc-4.2/trunk/gcc/tree-eh.c URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/tree-eh.c?rev=46028&r1=46027&r2=46028&view=diff ============================================================================== --- llvm-gcc-4.2/trunk/gcc/tree-eh.c (original) +++ llvm-gcc-4.2/trunk/gcc/tree-eh.c Tue Jan 15 17:20:17 2008 @@ -838,14 +838,22 @@ tree save_eptr, save_filt; save_eptr = create_tmp_var (ptr_type_node, "save_eptr"); +#if ENABLE_LLVM + /* LLVM exceptions use 64 bits for these on 64-bit targets. */ + save_filt = create_tmp_var (long_integer_type_node, "save_filt"); +#else save_filt = create_tmp_var (integer_type_node, "save_filt"); - +#endif i = tsi_start (finally); x = build0 (EXC_PTR_EXPR, ptr_type_node); x = build2 (MODIFY_EXPR, void_type_node, save_eptr, x); tsi_link_before (&i, x, TSI_CONTINUE_LINKING); +#if ENABLE_LLVM + x = build0 (FILTER_EXPR, long_integer_type_node); +#else x = build0 (FILTER_EXPR, integer_type_node); +#endif x = build2 (MODIFY_EXPR, void_type_node, save_filt, x); tsi_link_before (&i, x, TSI_CONTINUE_LINKING); @@ -854,7 +862,11 @@ x = build2 (MODIFY_EXPR, void_type_node, x, save_eptr); tsi_link_after (&i, x, TSI_CONTINUE_LINKING); +#if ENABLE_LLVM + x = build0 (FILTER_EXPR, long_integer_type_node); +#else x = build0 (FILTER_EXPR, integer_type_node); +#endif x = build2 (MODIFY_EXPR, void_type_node, x, save_filt); tsi_link_after (&i, x, TSI_CONTINUE_LINKING); _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits