2008-06-20 Laurynas Biveinis <laurynas.biveinis@gmail.com>
Tobias Burnus <burnus@net-b.de>
PR fortran/34908
PR fortran/36276
* scanner.c (preprocessor_line): do not call gfc_free for
current_file->filename if it differs from filename.
From-SVN: r136989
2008-06-20 Bernhard Fischer <aldot@gcc.gnu.org>
* tree-ssa-pre.c: Fix typo in comment.
(init_antic, fini_antic): Add explicit funtions for
initializing and deinitializing ANTIC and AVAIL sets.
(create_expression_by_pieces): Fix typo in comment.
Remove redundant set of new_stuff and use NULL_TREE instead of
NULL.
(execute_pre): Eventually dump details about ANTIC_IN.
From-SVN: r136984
2008-06-19 Bernhard Fischer <aldot@gcc.gnu.org>
* cgraphunit.c (cgraph_finalize_function): Remove redundant setting of
node->decl.
(cgraph_expand_function): Use local copy of decl.
(cgraph_expand_all_functions): Remove redundant initialization of
order_pos.
(cgraph_optimize): Reword internal_error message.
From-SVN: r136941
* gcc.dg/tree-ssa/forwprop-6.c: Use long or int to match size of float. Otherwise error.
* gcc.dg/tree-ssa/ssa-fre-7.c: Ditto.
* gcc.dg/tree-ssa/ssa-fre-8.c: Ditto.
From-SVN: r136923
* gcc.c-torture/compile/limits-fndefn.c: Skip for AVR.
* gcc.dg/builtins-config.h: Use standard independent __AVR__ symbol.
* gcc.dg/cdce1.c: Skip for AVR.
* gcc.dg/cdce2.c: Ditto.
* gcc.dg/fold-bitand-1.c: Ignore warnings such as alignment.
* gcc.dg/fold-eqandshift-3.c: Use long on AVR.
* gcc.dg/fold-overflow-1.c: Skip for AVR.
* gcc.dg/multiple-overflow-warn-3.c: Use target independent macro for ms bit position.
* gcc.dg/pch/struct-1.c: Allow for target without 32 bit int.
* gcc.dg/tree-ssa/pr33920.c: Add warning check for AVR.
* gcc.dg/ucnid-5.c: Skip for AVR.
* gcc.dg/Wconversion-5.c: Mark warning xfail for AVR target.
* gcc.dg/Wconversion-real-integer.c: Skip for AVR.
* gcc.dg/Wconversion-real.c: Ditto.
* gcc.dg/wtr-conversion-1.c: Add warning test for AVR.
* gcc.dg/utf-cvt.c: Skip tests and mark excess xfail for AVR.
* gcc.dg/Wtype-limits-Wextra.c: Ditto.
* gcc.dg/Wtype-limits.c: Ditto.
From-SVN: r136918
* targhooks.h (struct gcc_target): New member unwind_word_mode.
(default_unwind_word_mode): Add prototype.
* targhooks.c (default_unwind_word_mode): New function.
(default_eh_return_filter_mode): Return targetm.unwind_word_mode ()
instead of word_mode.
* target-def.h (TARGET_UNWIND_WORD_MODE): New macro.
(TARGET_INITIALIZER): Use it.
* c-common.c (handle_mode_attribute): Support "unwind_word"
mode attribute.
* unwind-generic.h (_Unwind_Word, _Unwind_Sword): Use it.
* except.c (init_eh): Use targetm.unwind_word_mode () instead of
word_mode to access SjLj_Function_Context member "data".
(sjlj_emit_dispatch_table): Likewise. Also, perform type
conversion from targetm.eh_return_filter_mode () to
targetm.unwind_word_mode () if they differ.
* builtin-types.def (BT_UNWINDWORD): New primitive type.
(BT_FN_UNWINDWORD_PTR): New function type.
(BT_FN_WORD_PTR): Remove.
* builtins.def (BUILT_IN_EXTEND_POINTER): Use BT_FN_UNWINDWORD_PTR.
* except.c (expand_builtin_extend_pointer): Convert pointer to
targetm.unwind_word_mode () instead of word_mode.
* config/spu/spu-protos.h (spu_eh_return_filter_mode): Remove.
* config/spu/spu.c (spu_eh_return_filter_mode): Remove.
(spu_unwind_word_mode): New function.
(TARGET_EH_RETURN_FILTER_MODE): Do not define.
(TARGET_UNWIND_WORD_MODE): Define.
* config/spu/t-spu-elf (TARGET_LIBGCC2_CFLAGS): Remove -D__word__=SI.
From-SVN: r136912
* c-opts.c (c_common_post_options): PCH is not compatible with
no-unit-at-a-time.
* opts.c (handle_options): Enable unit-at-a-time at O0 along with
-fno-toplevel-reorder by default now.
* gcc.dg/weak/weak-2.c: We no longer complain about incompatibilty.
* gcc.dg/weak/weak-3.c: We no longer complain about incompatibilty.
* gcc.dg/weak/weak-4.c: We no longer complain about incompatibilty.
* gcc.dg/weak/weak-5.c: We no longer complain about incompatibilty.
* gcc.dg/weak/weak-6.c: Fix thinko in previous change.
* gcc.dg/weak/weak-7.c: Likewise.
From-SVN: r136903
PR rtl-optimization/35604
* jump.c (redirect_exp_1): Skip the condition of an IF_THEN_ELSE. We
only want to change jump destinations, not eventual label comparisons.
From-SVN: r136899
* cgraphunit.c (cgraph_expand_pending_functions): Give up at
syntax errors.
(cgraph_analyze_function): Likewise.
* gcc.dg/asm-wide-1.c: Do not require extra errors we output
confused by earlier errors.
* gcc.target/i386/sseregparm-2.c: Remove markers for errors not
output at parsing time.
* gcc.target/i386/sseregparm-8.c: Move here compile time errors
from gcc.target/i386/sseregparm-2.c.
* gcc.dg/weak/weak-6.c: Do not require extra errors we output
confused by earlier errors.
* gcc.dg/weak/weak-7.c: Likewise.
From-SVN: r136895
2008-06-18 Daniel Kraft <d@domob.eu>
PR fortran/36517, fortran/36492
* gfortran.dg/array_constructor_25.f03: New test.
* gfortran.dg/array_constructor_26.f03: New test.
* gfortran.dg/array_constructor_27.f03: New test.
* gfortran.dg/array_constructor_28.f03: New test.
* gfortran.dg/array_constructor_29.f03: New test.
* gfortran.dg/array_constructor_30.f03: New test.
* gfortran.dg/array_constructor_type_19.f03: New test.
* gfortran.dg/array_constructor_type_20.f03: New test.
* gfortran.dg/array_constructor_type_21.f03: New test.
2008-06-18 Daniel Kraft <d@domob.eu>
PR fortran/36517, fortran/36492
* array.c (gfc_resolve_character_array_constructor): Call
gfc_set_constant_character_len with changed length-chec argument.
* decl.c (gfc_set_constant_character_len): Changed array argument to
be a generic length-checking argument that can be used for correct
checking with typespec and in special cases where the should-be length
is different from the target length.
(build_struct): Call gfc_set_constant_character_len with changed length
checking argument and introduced additional checks for exceptional
conditions on invalid code.
(add_init_expr_to_sym), (do_parm): Call gfc_set_constant_character_len
with changed argument.
* match.h (gfc_set_constant_character_len): Changed third argument to
int for the should-be length rather than bool.
From-SVN: r136894
* cgraph.h (cgraph_mark_if_needed): New function.
* cgraphunit.c (cgraph_mark_if_needed): New function.
* c-decl.c (duplicate_decl): Use it.
From-SVN: r136893
* cgraph.c (cgraph_add_new_function): When in expansion state, do lowering.
* method.c: Include cgraph.h.
(use_thunk): Use cgraph_add_new_function instead of calling backend directly.
From-SVN: r136892