Janus Weil [Tue, 28 Apr 2009 16:27:27 +0000 (18:27 +0200)]
re PR fortran/39946 (PROCEDURE statements: interface with RESULT variable)
2009-04-28 Janus Weil <janus@gcc.gnu.org>
PR fortran/39946
* resolve.c (resolve_symbol): Correctly copy the interface of a
PROCEDURE statement if the interface involves a RESULT variable.
2009-04-28 Janus Weil <janus@gcc.gnu.org>
PR fortran/39946
* gfortran.dg/proc_ptr_16.f90: New.
From-SVN: r146905
Uros Bizjak [Tue, 28 Apr 2009 16:18:17 +0000 (18:18 +0200)]
re PR rtl-optimization/39914 (96% performance regression in floating point code; part of the problem started 2009/03/12-13)
PR rtl-optimization/39914
* ira-conflicts.c (ira_build_conflicts): Prohibit call used
registers for allocnos created from user-defined variables only
when not optimizing.
From-SVN: r146904
Steve Ellcey [Tue, 28 Apr 2009 16:14:35 +0000 (16:14 +0000)]
sync-1.c: Check for cmpxchg8 only if lp64 is true.
* testsuite/gcc.target/ia64/sync-1.c: Check for cmpxchg8 only if
lp64 is true.
From-SVN: r146903
Steve Ellcey [Tue, 28 Apr 2009 15:27:28 +0000 (15:27 +0000)]
Forgot to ci fixincl.x in previous checkin.
From-SVN: r146902
Richard Guenther [Tue, 28 Apr 2009 15:27:09 +0000 (15:27 +0000)]
re PR middle-end/39937 (Revision 146831 failed SPEC CPU 2006)
2009-04-28 Richard Guenther <rguenther@suse.de>
PR middle-end/39937
* fold-const.c (fold_binary): Use distribute_real_division only
on float types.
* gfortran.fortran-torture/compile/pr39937.f: New testcase.
From-SVN: r146901
Steve Ellcey [Tue, 28 Apr 2009 15:20:07 +0000 (15:20 +0000)]
config.gcc (hppa*64*-*-hpux11*): Set use_gcc_stdint and add hpux-stdint.h to tm_file.
* config.gcc (hppa*64*-*-hpux11*): Set use_gcc_stdint and
add hpux-stdint.h to tm_file.
(hppa[12]*-*-hpux11*): Ditto.
(ia64*-*-hpux*): Ditto.
* config/hpux-stdint.h: New.
* gcc/config/ia64/hpux.h (TARGET_OS_CPP_BUILTINS): Set
__STDC_EXT__ for all compiles.
* gcc/config/pa/pa-hpux.h: Ditto.
* gcc/config/pa/pa-hpux10.h: Ditto.
* gcc/config/pa/pa-hpux11.h: Ditto.
From-SVN: r146900
Steve Ellcey [Tue, 28 Apr 2009 15:17:49 +0000 (15:17 +0000)]
inclhack.def (hpux11_uint32_c): Remove.
* inclhack.def (hpux11_uint32_c): Remove.
(hpux_long_double): Disable on hpux11.3*.
(hpux_long_double_2): New.
(hpux_c99_intptr): New.
(hpux_c99_inttypes): New.
(hpux_c99_inttypes2): New.
(hpux_stdint_least): New.
(hpux_stdint_fast): New.
(hpux_inttype_int_least8_t): New.
(hpux_inttype_int8_t): New.
* fixincl.x: Regenerate.
* tests/base/sys/_inttypes.h: New.
* tests/base/inttypes.h: Update.
* tests/base/stdlib.h: Update.
* tests/base/stdint.h: Update.
From-SVN: r146899
Catherine Moore [Tue, 28 Apr 2009 15:06:16 +0000 (11:06 -0400)]
debug.h (set_name): Add comment.
2009-04-28 Catherine Moore <clm@codesourcery.com>
* debug.h (set_name): Add comment.
From-SVN: r146897
Dave Korn [Tue, 28 Apr 2009 15:05:56 +0000 (15:05 +0000)]
* testsuite/libjava.jvmti/jvmti-interp.exp
(gcj_jni_compile_c_to_so): Fix so extension to '.dll' on win32.
* testsuite/lib/libjava.exp (libjava_init): Likewise.
* testsuite/libjava.jni/jni.exp
(gcj_jni_compile_c_to_so): Likewise.
(gcj_jni_test_one): Likewise.
From-SVN: r146896
Andrew Pinski [Tue, 28 Apr 2009 14:19:00 +0000 (07:19 -0700)]
re PR bootstrap/39929 (Bootstrapping fails at stage 1 on powerpc-ibm-aix)
2009-04-28 Andrew Pinski <pinskia@gmail.com>
PR target/39929
* config/darwin.c (machopic_gen_offset): Check
currently_expanding_to_rtl if current_ir_type returns IR_GIMPLE.
* config/arm/arm.c (require_pic_register): Likewise.
From-SVN: r146894
H.J. Lu [Tue, 28 Apr 2009 13:43:15 +0000 (13:43 +0000)]
g++.dg/warn/pr35652.C: Removed.
2009-04-28 H.J. Lu <hongjiu.lu@intel.com>
g++.dg/warn/pr35652.C: Removed.
gcc.dg/pr35652.c: Likewise.
From-SVN: r146892
Paolo Bonzini [Tue, 28 Apr 2009 13:17:28 +0000 (13:17 +0000)]
m32c.c (TARGET_PROMOTE_FUNCTION_RETURN, [...]): Delete.
2009-04-28 Paolo Bonzini <bonzini@gnu.org>
* config/m32c/m32c.c (TARGET_PROMOTE_FUNCTION_RETURN,
m32c_promote_function_return, TARGET_PROMOTE_PROTOTYPES,
m32c_promote_prototypes): Delete.
From-SVN: r146891
Michael Matz [Tue, 28 Apr 2009 12:22:47 +0000 (12:22 +0000)]
re PR middle-end/39922 (Revision 146817 caused many regressions on trunk)
PR middle-end/39922
* tree-outof-ssa.c (insert_value_copy_on_edge): Don't convert
constants.
From-SVN: r146889
Richard Guenther [Tue, 28 Apr 2009 12:16:22 +0000 (12:16 +0000)]
tree-vect-stmts.c (vect_get_vec_def_for_operand): Fix type error.
2009-04-28 Richard Guenther <rguenther@suse.de>
* tree-vect-stmts.c (vect_get_vec_def_for_operand): Fix
type error.
From-SVN: r146888
Ramana Radhakrishnan [Tue, 28 Apr 2009 10:39:41 +0000 (10:39 +0000)]
Add support for arm1156tf-s
From-SVN: r146887
Joseph Myers [Tue, 28 Apr 2009 10:21:24 +0000 (11:21 +0100)]
inclhack.def (glibc_stdint): New fix.
* inclhack.def (glibc_stdint): New fix.
* fixincl.x: Regenerate.
* tests/base/stdint.h: Update.
From-SVN: r146883
Alexander Monakov [Tue, 28 Apr 2009 10:01:52 +0000 (14:01 +0400)]
20071210-2.c: New testcase.
gcc/testsuite/Changelog:
2009-04-28 Alexander Monakov <amonakov@ispras.ru>
* gcc.target/ia64/
20071210-2.c: New testcase.
gcc/Changelog:
2009-04-28 Alexander Monakov <amonakov@ispras.ru>
* sel-sched-ir.c (maybe_tidy_empty_bb): Do not attempt to delete a
block if there are complex incoming edges.
(sel_merge_blocks): Remove useless assert.
(sel_redirect_edge_and_branch): Check that edge was redirected.
* sel-sched-ir.h (_eligible_successor_edge_p): Remove assert.
(sel_find_rgns): Delete declaration.
* sel-sched.c (purge_empty_blocks): Attempt to remove first block of
the region when it is not a preheader.
From-SVN: r146882
Uros Bizjak [Tue, 28 Apr 2009 09:48:04 +0000 (11:48 +0200)]
re PR target/39323 (MAX_OFILE_ALIGNMENT in elfos.h is too big)
PR c/39323
* config/alpha/elf.h (MAX_OFILE_ALIGNMENT): Sync with elfos.h
testsuite/ChangeLog:
PR c/39323
* gcc.dg/pr39323-2.c: Also scan for alignment in log2 format.
* gcc.dg/pr39323-3.c: Ditto.
From-SVN: r146881
Janus Weil [Tue, 28 Apr 2009 09:44:36 +0000 (11:44 +0200)]
re PR fortran/39930 (Bogus error: ambiguous reference)
2009-04-28 Janus Weil <janus@gcc.gnu.org>
PR fortran/39930
PR fortran/39931
* expr.c (gfc_check_pointer_assign): Correctly detect if the left hand
side is a pointer.
* parse.c (gfc_fixup_sibling_symbols): Don't check for ambiguity.
2009-04-28 Janus Weil <janus@gcc.gnu.org>
PR fortran/39930
PR fortran/39931
* gfortran.dg/ambiguous_reference_2.f90: New.
* gfortran.dg/pointer_assign_7.f90: New.
From-SVN: r146880
Andrew Haley [Tue, 28 Apr 2009 09:35:22 +0000 (09:35 +0000)]
re PR libgcj/39899 (gjdoc in 4.4.0 fails to build the libgcj documentation)
2009-04-28 Andrew Haley <aph@redhat.com>
PR libgcj/39899
* Makefile.am (libgcj_tools_la_LDFLAGS): Add
-fno-bootstrap-classes to libgcj_tools_la_GCJFLAGS.
* Makefile.in: Regenerate.
From-SVN: r146878
Richard Guenther [Tue, 28 Apr 2009 08:50:19 +0000 (08:50 +0000)]
tree.h (SSA_NAME_VALUE): Remove.
2009-04-28 Richard Guenther <rguenther@suse.de>
* tree.h (SSA_NAME_VALUE): Remove.
(struct tree_ssa_name): Remove value_handle member.
* tree-vrp.c (execute_vrp): Initialize/free the value-handle
array for jump threading.
* tree-ssa-propagate.c (ssa_prop_init): Do not initialize
SSA_NAME_VALUEs.
* print-tree.c (print_node): Do not dump SSA_NAME_VALUEs.
* tree-flow.h (threadedge_initialize_values): Declare.
(threadedge_finalize_values): Likewise.
* tree-ssa-threadedge.c (ssa_name_values): New global variable.
(SSA_NAME_VALUE): Define.
(threadedge_initialize_values): New function.
(threadedge_finalize_values): Likewise.
* tree-ssa-dom.c (ssa_name_values): New global variable.
(SSA_NAME_VALUE): Define.
(tree_ssa_dominator_optimize): Initialize/free the value-handle
array.
From-SVN: r146877
Nathan Froyd [Tue, 28 Apr 2009 08:38:37 +0000 (08:38 +0000)]
20020118-1.c: Skip on vxworks targets.
2009-04-28 Nathan Froyd <froydnj@codesourcery.com>
Mark Mitchell <mark@codesourcery.com>
* gcc.target/powerpc/
20020118-1.c: Skip on vxworks targets.
* gcc.dg/
20020103-1.c: Check for __ppc.
* gcc.dg/asm-b.c: Check for __ppc.
* gcc.dg/
20020919-1.c: Check for __ppc.
* gcc.dg/
20020312-2.c: Likewise.
* gcc.dg/trampoline-1.c: Add appropriate NO_TRAMPOLINES #ifndefs.
* gcc.dg/torture/asm-subreg-1.c: Skip on sparc vxworks targets.
* gcc.dg/attr-weakref-1.c: Skip on selected vxworks targets.
* g++.dg/warn/weak1.C: Likewise.
* gcc.dg/tree-ssa/
20030714-1.c (find_base_value): Declare as
static so appropriate optimizations kick in.
(find_base_value_wrapper): New function.
* g++.dg/eh/simd-5.C: Fix target triplet.
* gcc.target/arm/long-calls-1.c: Skip for -mlong-calls.
Co-Authored-By: Mark Mitchell <mark@codesourcery.com>
From-SVN: r146876
Ira Rosen [Tue, 28 Apr 2009 08:08:25 +0000 (08:08 +0000)]
tree-vect-loop-manip.c (vect_create_cond_for_alias_checks): Use REPORT_VECTORIZED_LOCATIONS instead REPORT_VECTORIZED_LOOPS.
* tree-vect-loop-manip.c (vect_create_cond_for_alias_checks):
Use REPORT_VECTORIZED_LOCATIONS instead
REPORT_VECTORIZED_LOOPS.
* tree-vectorizer.c (vect_verbosity_level): Make static.
(vect_loop_location): Rename to vect_location.
(vect_set_verbosity_level): Update comment.
(vect_set_dump_settings): Use REPORT_VECTORIZED_LOCATIONS
and vect_location.
(vectorize_loops): Fix comment. Use REPORT_VECTORIZED_LOCATIONS
and vect_location. Use REPORT_UNVECTORIZED_LOCATIONS
instead REPORT_UNVECTORIZED_LOOPS.
* tree-vectorizer.h (enum vect_def_type): Rename vect_invariant_def and
vect_loop_def to vect_external_def and vect_internal_def.
(enum verbosity_levels): Rename REPORT_VECTORIZED_LOOPS
and REPORT_UNVECTORIZED_LOOPS to
REPORT_VECTORIZED_LOCATIONS and
REPORT_UNVECTORIZED_LOCATIONS.
(enum vect_relevant): Update comment. Rename vect_unused_in_loop
and vect_used_in_loop and to vect_unused_in_scope and
vect_used_in_scope.
(STMT_VINFO_RELEVANT_P): Use vect_unused_in_scope.
(vect_verbosity_level): Remove declaration.
(vect_analyze_operations): Likewise.
(vect_analyze_stmt): Declare.
* tree-vect-loop.c (vect_determine_vectorization_factor): Use
REPORT_UNVECTORIZED_LOCATIONS.
(vect_get_loop_niters): Fix indentation.
(vect_analyze_loop_form): Use REPORT_UNVECTORIZED_LOCATIONS.
(vect_analyze_loop_operations): New function.
(vect_analyze_loop): Call vect_analyze_loop_operations instead of
vect_analyze_operations.
(vect_is_simple_reduction): Use new names.
(vectorizable_live_operation, vect_transform_loop): Likewise.
* tree-vect-data-refs.c (vect_check_interleaving): Add a return value to
specify whether the data references can be a part of interleaving chain.
(vect_analyze_data_ref_dependence): Use new names.
(vect_analyze_data_refs_alignment, vect_analyze_data_refs): Likewise.
(vect_create_addr_base_for_vector_ref): Remove redundant code.
* tree-vect-patterns.c (widened_name_p): Use new names.
(vect_recog_dot_prod_pattern): Likewise.
* tree-vect-stmts.c (vect_stmt_relevant_p): Use new names.
(process_use, vect_mark_stmts_to_be_vectorized,
vect_model_simple_cost, vect_model_store_cost,
vect_get_vec_def_for_operand, vect_get_vec_def_for_stmt_copy,
vectorizable_call, vectorizable_conversion, vectorizable_assignment,
vectorizable_operation, vectorizable_type_demotion,
vectorizable_type_promotion, vectorizable_store, vectorizable_load,
vectorizable_condition): Likewise.
(vect_analyze_operations): Split into vect_analyze_loop_operations
and ...
(vect_analyze_stmt): ... new function.
(new_stmt_vec_info): Use new names.
(vect_is_simple_use): Use new names and fix comment.
* tree-vect-slp.c (vect_get_and_check_slp_defs): Use new names.
(vect_build_slp_tree, vect_analyze_slp, vect_schedule_slp): Likewise.
From-SVN: r146875
Uros Bizjak [Tue, 28 Apr 2009 06:54:02 +0000 (08:54 +0200)]
re PR target/39911 (The 'z' suffix doesn't work with 16bit integer insn)
PR target/39911
* config/i386/i386.c (print_operand) ['Z']: Handle floating point
and integer modes for x87 operands. Do not ICE for unsupported size,
generate error instead. Generate error for unsupported operand types.
['z']: Do not handle HImode memory operands specially. Warning
for floating-point operands. Fallthru to 'Z' for unsupported operand
types. Do not ICE for unsupported size, generate error instead.
(output_387_binary_op): Use %Z to output operands.
(output_fp_compare): Ditto.
(output_387_reg_move): Ditto.
testsuite/ChangeLog:
PR target/39911
* gcc.target/i386/pr39911.c: New test.
From-SVN: r146874
Paul Thomas [Tue, 28 Apr 2009 05:29:44 +0000 (05:29 +0000)]
re PR fortran/39879 (double free or corruption abort with gfortran)
2009-04-28 Paul Thomas <pault@gcc.gnu.org>
PR fortran/39879
* trans_expr.c (gfc_conv_procedure_call): Deep copy a derived
type parentheses argument if it is a variable with allocatable
components.
2009-04-28 Paul Thomas <pault@gcc.gnu.org>
PR fortran/39879
* gfortran.dg/alloc_comp_assign_10.f90: New test.
From-SVN: r146872
Paul Thomas [Tue, 28 Apr 2009 05:16:19 +0000 (05:16 +0000)]
re PR fortran/39879 (double free or corruption abort with gfortran)
2009-04-28 Paul Thomas <pault@gcc.gnu.org>
PR fortran/39879
* trans_expr.c (gfc_conv_procedure_call): Deep copy a derived
type parentheses argument if it is a variable with allocatable
components.
2009-04-28 Paul Thomas <pault@gcc.gnu.org>
PR fortran/39879
* gfortran.dg/alloc_comp_assign_10.f90: New test.
From-SVN: r146871
Ben Elliston [Tue, 28 Apr 2009 04:56:47 +0000 (04:56 +0000)]
revert: re PR c++/35652 (offset warning should be given in the front-end)
Revert:
PR c++/35652
2009-03-27 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
gcc/
* builtins.c (c_strlen): Do not warn here.
* c-typeck.c (build_binary_op): Adjust calls to pointer_int_sum.
* c-common.c (pointer_int_sum): Take an explicit location.
Warn about offsets out of bounds.
* c-common.h (pointer_int_sum): Adjust declaration.
cp/
* typeck.c (cp_pointer_sum): Adjust call to pointer_int_sum.
testsuite/
* gcc.dg/pr35652.C: New.
* g++.dg/warn/pr35652.C: New.
* gcc.dg/format/plus-1.c: Adjust message.
From-SVN: r146870
Dave Korn [Tue, 28 Apr 2009 04:02:30 +0000 (04:02 +0000)]
interpret.cc (DEBUG): Rename this ...
* interpret.cc (DEBUG): Rename this ...
(__GCJ_DEBUG): ... to this throughout.
* configure.ac: Likewise.
* interpret-run.cc: Likewise.
* prims.cc: Likewise.
* gnu/classpath/natConfiguration.cc: Likewise.
* include/java-assert.h: Likewise.
* java/io/natVMObjectInputStream.cc: Likewise.
* configure: Regenerate.
* include/config.h.in: Regenerate.
From-SVN: r146869
Dave Korn [Tue, 28 Apr 2009 03:49:13 +0000 (03:49 +0000)]
* java/lang/natVMClassLoader.cc
(java::lang::VMClassLoader::defineClass): Fix assert.
From-SVN: r146868
GCC Administrator [Tue, 28 Apr 2009 00:16:52 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r146867
DJ Delorie [Mon, 27 Apr 2009 23:30:03 +0000 (19:30 -0400)]
Fix date
From-SVN: r146864
DJ Delorie [Mon, 27 Apr 2009 23:27:21 +0000 (19:27 -0400)]
target-supports.exp (check_effective_target_double64): New.
* lib/target-supports.exp (check_effective_target_double64): New.
(check_effective_target_double64plus): New.
(check_effective_target_large_double): New.
* gcc.dg/Wconversion-real-integer.c: Require double64plus.
* gcc.dg/div-double-1.c: Likewise.
* gcc.dg/Wconversion-real.c: Require large_double.
* gcc.dg/cdce1.c: Require large_double instead of checking targets.
* gcc.c-torture/execute/ieee/unsafe-fp-assoc-1.c: Skip if doubles are too small.
* gcc.c-torture/execute/ieee/
20010226-1.c: Mark all floating point
constants as long.
From-SVN: r146863
Eric Botcazou [Mon, 27 Apr 2009 21:09:03 +0000 (21:09 +0000)]
Fix formatting
From-SVN: r146856
Ian Lance Taylor [Mon, 27 Apr 2009 20:25:48 +0000 (20:25 +0000)]
collect2.c (is_ctor_dtor): Change type of ret field in struct names to symkind.
./: * collect2.c (is_ctor_dtor): Change type of ret field in struct
names to symkind.
* dce.c (run_fast_df_dce): Change type of old_flags to int.
* df-core.c (df_set_flags): Change return type to int. Change
type of old_flags to int.
(df_clear_flags): Likewise.
* df-scan.c (df_def_record_1): Change 0 to VOIDmode.
(df_get_conditional_uses): Likewise.
* df.h (df_set_flags, df_clear_flags): Update declarations.
* dwarf2out.c (struct indirect_string_node): Change type of form
field to enum dwarf_form.
(AT_string_form): Change return type to enum dwarf_form.
* fixed-value.c (fixed_compare): Add cast to enum type.
* fwprop.c (update_df): Change 0 to VOIDmode.
* gensupport.c: Change 0 to UNKNOWN.
* gimple.h (gimple_cond_code): Add cast to enum type.
* haifa-sched.c (reemit_notes): Add cast to enum type.
* hooks.c (hook_int_void_no_regs): Remove function.
* hooks.h (hook_int_void_no_regs): Remove declaration.
* optabs.c (expand_widen_pattern_expr): Change 0 to VOIDmode.
* predict.c (combine_predictions_for_insn): Add casts to enum
type.
* real.c (real_arithmetic): Add cast to enum type.
(real_compare): Likewise.
* target.h (struct gcc_target): Change return type of
branch_target_register_class to enum reg_class.
* target-def.h (TARGET_BRANCH_TARGET_REGISTER_CLASS): Define as
default_branch_target_register_class.
* targhooks.c (default_branch_target_register_class): New
function.
* targhooks.h (default_branch_target_register_class): Declare.
* tree-data-ref.c (print_direction_vector): Add cast to enum
type.
* tree-vect-data-refs.c (vect_supportable_dr_alignment): Remove
cast to int.
* tree-vect-loop.c (vect_create_epilog_for_reduction): Change 0 to
ERROR_MARK.
* tree-vect-slp.c (vect_build_slp_tree): Change 0 to
vect_uninitialized_def. Change 0 to ERROR_MARK.
* tree-vect-stmts.c (supportable_widening_operation): Don't
initialize icode1 and icode2.
* tree-vectorizer.h (enum vect_def_type): Add
vect_uninitialized_def.
* config/sol2-c.c (cmn_err_length_specs): Change 0 to FMT_LEN_none
and to STD_C89.
(cmn_err_flag_specs): Change 0 to STD_C89.
(cmn_err_char_table): Likewise.
* config/arm/arm.c (get_arm_condition_code): Change type of code
to enum arm_cond_code.
(IWMMXT_BUILTIN): Change 0 to UNKNOWN.
(IWMMXT_BUILTIN2): Likewise.
(neon_builtin_type_bits): Don't define typedef.
(neon_builtin_datum): Change type of bits field to int.
(arm_expand_neon_args): Add cast to enum type.
* config/ia64/ia64.c (tls_symbolic_operand_type): Change 0 to
TLS_MODEL_NONE.
* config/i386/i386.c (bdesc_multi_arg): Change 0 to UNKNOWN. Add
casts to enum type.
* config/mips/mips.c (LOONGSON_BUILTIN_ALIAS): Change 0 to
MIPS_FP_COND_f.
* config/mips/mips.md (jal_macro): Return enum constant.
(single_insn): Likewise.
* config/rs6000/rs6000.c (bdesc_altivec_preds): Change 0 to
CODE_FOR_nothing.
* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
casts to enum type.
* config/s390/s390.c (s390_tune_flags): Change type to int.
(s390_arch_flags): Likewise.
(s390_handle_arch_option): Change flags field of struct pta to
int.
* config/s390/s390.h (s390_tune_flags): Update declaration.
(s390_arch_flags): Likewise.
* config/sh/sh.c (prepare_move_operands): Compare
tls_symbolic_operand result with enum constant.
(sh_reorg): Change PUT_MODE to PUT_REG_NOTE_KIND.
(sh_expand_prologue): Add cast to enum type.
(sh_expand_epilogue): Likewise.
(tls_symbolic_operand): Change return type to enum tls_model.
(fpscr_set_from_mem): Add cast to enum type.
(legitimize_pic_address): Compare tls_symbolic_operand result with
enum constant.
(sh_target_reg_class): Change return type to enum reg_class.
* config/sh/sh.h (OVERRIDE_OPTIONS): Change CPU_xxx to
PROCESSOR_xxx.
* config/sh/sh-protos.h (tls_symbolic_operand): Update
declaration.
* config/sparc/sparc.c (sparc_override_options): Add cast to enum
type.
* config/sparc/sparc.md (empty_delay_slot): Return enum constant.
(pic, calls_alloca, calls_eh_return, leaf_function): Likewise.
(delayed_branch, tls_call_delay): Likewise.
(eligible_for_sibcall_delay): Likewise.
(eligible_for_return_delay): Likewise.
* config/spu/spu.c (expand_builtin_args): Add cast to enum type.
(spu_expand_builtin_1): Likewise.
* c-typeck.c (convert_for_assignment): Issue -Wc++-compat warnings
for all types of conversions.
(output_init_element): Issue -Wc++-compat warning if needed when
initializing a bitfield with enum type.
* c-parser.c (c_parser_expression): Set original_type to
original_type of right hand operand of comman operator.
cp/:
* semantics.c (finish_omp_clauses): Change type of c_kind to enum
omp_clause_code.
fortran/:
* trans-intrinsic.c (DEFINE_MATH_BUILTIN): Add casts to enum
type.
* trans-io.c (st_parameter_field): Add casts to enum type.
java/:
* builtins.c (java_builtins): Add casts to enum type.
* verify-impl.c (check_class_constant): Add cast to enum type.
(check_constant, check_wide_constant): Likewise.
objc/:
* objc-act.c (objc_gimplify_expr): Add casts to enum type.
testsuite/:
* gcc.dg/Wcxx-compat-5.c: New testcase.
* gcc.dg/Wcxx-compat-6.c: New testcase.
From-SVN: r146855
Ralf Wildenhues [Mon, 27 Apr 2009 20:23:51 +0000 (20:23 +0000)]
c-tree.texi (Types, [...]): Fix grammar nits.
gcc/
* doc/c-tree.texi (Types, Functions, Expression trees): Fix
grammar nits.
* doc/cfg.texi (Maintaining the CFG, Liveness information):
Likewise.
* doc/cpp.texi (Standard Predefined Macros)
(Implementation-defined behavior): Likewise.
* doc/extend.texi (Function Attributes, Type Attributes):
Likewise.
* doc/gimple.texi (GIMPLE Exception Handling)
(@code{GIMPLE_ASSIGN}): Likewise.
* doc/install.texi (Prerequisites, Configuration, Specific):
Likewise.
* doc/invoke.texi (Warning Options, Optimize Options)
(AVR Options, Darwin Options): Likewise.
(Optimize Options): Reformulate -fwhole-program description.
* doc/loop.texi (Lambda): Likewise.
* doc/md.texi (Output Template, Define Constraints)
(Standard Names, Insn Splitting): Likewise.
* doc/options.texi (Option properties): Likewise.
* doc/passes.texi (Tree-SSA passes): Likewise.
* doc/rtl.texi (Side Effects, Assembler, Insns): Likewise.
* doc/tm.texi (Register Classes, Old Constraints, Scalar Return)
(File Names and DBX): Likewise.
* doc/trouble.texi (Incompatibilities): Likewise.
From-SVN: r146854
James E. Wilson [Mon, 27 Apr 2009 19:51:20 +0000 (19:51 +0000)]
* MAINTAINERS: Update my e-mail address.
From-SVN: r146853
Trevor Smigiel [Mon, 27 Apr 2009 19:33:20 +0000 (19:33 +0000)]
spu.c (spu_machine_dependent_reorg): Make sure branch label on hint instruction is correct.
* spu.c (spu_machine_dependent_reorg): Make sure branch label on hint
instruction is correct.
From-SVN: r146852
Jakub Jelinek [Mon, 27 Apr 2009 19:11:23 +0000 (21:11 +0200)]
re PR testsuite/39807 (Reporting of testsuite failures are messed up when using -j)
PR testsuite/39807
* dg-extract-results.sh: Close open files and use >> instead of >
to decrease number of concurrently open files from awk. Avoid
= at the beginning of a regexp and redirect to a file determined
by curfile variable rather than concatenated strings to workaround
Solaris nawk bug.
From-SVN: r146850
Trevor Smigiel [Mon, 27 Apr 2009 18:48:59 +0000 (18:48 +0000)]
Allow non-constant arguments to conversion intrinsics.
* spu-protos.h (exp2_immediate_p, spu_gen_exp2): Declare.
* predicates.md (spu_inv_exp2_operand, spu_exp2_operand): New.
* spu.c (print_operand): Handle 'v' and 'w'.
(exp2_immediate_p, spu_gen_exp2): Define.
* spu-builtins.def (spu_convts, spu_convtu, spu_convtf_0,
spu_convtf_1): Update parameter descriptions.
* spu-builtins.md (spu_csflt, spu_cuflt, spu_cflts, spu_cfltu):
Update.
* constraints.md ('v', 'w'): New.
* spu.md (UNSPEC_CSFLT, UNSPEC_CFLTS, UNSPEC_CUFLT, UNSPEC_CFLTU):
Remove.
(i2f, I2F): New define_mode_attr.
(floatsisf2, floatv4siv4sf2, fix_truncsfsi2, fix_truncv4sfv4si2,
floatunssisf2, floatunsv4siv4sf2, fixuns_truncsfsi2,
fixuns_truncv4sfv4si2): Update to use mode attribute.
(float<mode><i2f>2_mul, float<mode><i2f>2_div,
fix_trunc<mode><f2i>2_mul, floatuns<mode><i2f>2_mul,
floatuns<mode><i2f>2_div, fixuns_trunc<mode><f2i>2_mul): New
patterns for combine.
* gcc.target/spu/intrinsics-3.c: Update tests.
From-SVN: r146849
Steven Bosscher [Mon, 27 Apr 2009 17:21:27 +0000 (17:21 +0000)]
dbgcnt.def (cprop1, [...]): Remove
* dbgcnt.def (cprop1, cprop2, gcse, jump_bypass): Remove
(cprop, hoist, pre, store_motion): New debug counters.
* tree-pass.h (pass_tracer): Move to list of gimple passes, it
is not an RTL pass anymore.
(pass_profiling): Remove extern decl for pass removed in 2005.
(pass_gcse, pass_jump_bypass): Remove.
* final.c (rest_of_clean_state): Set flag_rerun_cse_after_global_opts
to 0 for clean state.
* toplev.h (flag_rerun_cse_after_global_opts): Add extern declaration.
* cse.c (gate_handle_cse_after_global_opts,
rest_of_handle_cse_after_global_opts): New functions.
(pass_cse_after_global_opts): New pass, does local CSE.
* timevar.def (TV_GCSE, TV_CPROP1, TV_CPROP2, TV_BYPASS): Remove.
(TV_CPROP): New timevar.
* gcse.c (flag_rerun_cse_after_global_opts): New global variable.
(run_jump_opt_after_gcse, max_gcse_regno): Remove global vars.
(gcse_main, recompute_all_luids): Remove.
(compute_hash_table_work): Call max_reg_num instead of reading
max_gcse_regno.
(cprop_jump): Don't set run_jump_opt_after_gcse.
(constprop_register): Always allow to alter jumps.
(cprop_insn): Likewise.
(do_local_cprop): Likewise.
(local_cprop_pass): Likewise. Return non-zero if something changed.
(cprop): Remove function, fold interesting bits into one_cprop_pass.
(find_implicit_sets): Add note about missed optimization opportunity.
(one_cprop_pass): Rewrite to be "the" CPROP pass, called from the
pass_rtl_cprop execute function.
Don't bother tracking the pass number, each pass gets its own dumpfile
now anyway.
Always allow to alter jumpsand bypass jumps.
(bypass_block): Don't ignore regno >= max_gcse_regno, find_bypass_set
will just find no suitable set.
(pre_edge_insert): Fix dumping, this function is for PRE only.
(one_pre_gcse_pass): Rewrite to be "the" PRE pass, called from the
pass_rtl_pre execute function.
(hoist_code): Return non-zero if something changed. Keep track of
substitutions and insertions for statistics gathering similar to PRE.
(one_code_hoisting_pass): Rewrite to be "the" code hoisting pass,
called from the pass_rtl_hoist execute function. Show pass statistics.
(compute_store_table): Use max_reg_num directly instead of using the
formerly global max_gcse_regno.
(build_store_vectors): Likewise.
(replace_store_insn): Fix dumping.
(store_motion): Rename to ...
(one_store_motion_pass): ... this. Rewrite to be "the" STORE_MOTION
pass, called from the pass_rtl_store_motion execute function. Keep
track of substitutions and insertions for statistics gathering similar
to PRE.
(bypass_jumps): Remove, fold interesting bits into ...
(one_cprop_pass): ... this. Rewrite to be "the" CPROP pass, called
from the pass_rtl_cprop execute function.
(gate_handle_jump_bypass, rest_of_handle_jump_bypass,
pass_jump_bypass): Remove.
(gate_handle_gcse, rest_of_handle_gcse): Remove.
(gate_rtl_cprop, execute_rtl_cprop, pass_rtl_cprop): New.
(gate_rtl_pre, execute_rtl_pre, pass_rtl_pre): New.
(gate_rtl_hoist, execute_rtl_hoist, pass_rtl_hoist): New.
(gate_rtl_store_motion, execute_rtl_store_motion,
pass_rtl_store_motion): New.
* common.opt: Remove flag_cse_skip_blocks, adjust documentation to
make it clear that -fcse-skip-blocks is a no-op for backward compat.
* passes.c (init_optimization_passes): Remove pass_gcse and
pass_jump_bypass. Schedule cprop, pre, hoist, cprop, store_motion,
and cse_after_global_opts in place of pass_gcse. Schedule cprop
instead of pass_jump_bypass.
From-SVN: r146848
Richard Guenther [Mon, 27 Apr 2009 15:50:05 +0000 (15:50 +0000)]
re PR c/39928 (gimplify_expr failure)
2009-04-27 Richard Guenther <rguenther@suse.de>
PR middle-end/39928
* gimplify.c (gimplify_expr): If we are required to create
a temporary make sure it ends up as register.
* gcc.c-torture/compile/pr39928-1.c: New testcase.
* gcc.c-torture/compile/pr39928-2.c: Likewise.
From-SVN: r146846
Nick Clifton [Mon, 27 Apr 2009 14:35:42 +0000 (14:35 +0000)]
* MAINTAINERS: Replace Aldy Hernandez as a maintainer for the FRV.
From-SVN: r146843
H.J. Lu [Mon, 27 Apr 2009 14:02:09 +0000 (14:02 +0000)]
re PR c/39903 (ICE on flexible member)
gcc/
2009-04-27 H.J. Lu <hongjiu.lu@intel.com>
PR target/39903
* config/i386/i386.c (construct_container): Don't call
gen_reg_or_parallel with BLKmode on X86_64_SSE_CLASS,
X86_64_SSESF_CLASS and X86_64_SSEDF_CLASS.
gcc/testsuite/
2009-04-27 H.J. Lu <hongjiu.lu@intel.com>
PR target/39903
* gcc.dg/torture/pr39903-1.c: New.
* gcc.dg/torture/pr39903-2.c: Likewise.
From-SVN: r146842
Revital Eres [Mon, 27 Apr 2009 12:17:09 +0000 (12:17 +0000)]
Add dump file checks for sms tests
From-SVN: r146838
Michael Matz [Mon, 27 Apr 2009 12:16:00 +0000 (12:16 +0000)]
ssaexpand.h (struct ssaexpand): Member 'values' is a bitmap.
* ssaexpand.h (struct ssaexpand): Member 'values' is a bitmap.
(get_gimple_for_ssa_name): Adjust, lookup using SSA_NAME_DEF_STMT.
* tree-ssa-live.h: (find_replaceable_exprs): Return a bitmap.
(dump_replaceable_exprs): Take a bitmap.
* cfgexpand.c (gimple_cond_pred_to_tree): Handle bitmap instead of
array.
(expand_gimple_basic_block): Likewise.
* tree-ssa-ter.c (struct temp_expr_table_d): Make
replaceable_expressions member a bitmap.
(free_temp_expr_table): Pass back and deal with bitmap, not gimple*.
(mark_replaceable): Likewise.
(find_replaceable_in_bb, dump_replaceable_exprs): Likewise.
* tree-outof-ssa.c (remove_ssa_form): 'values' is a bitmap.
From-SVN: r146837
Richard Guenther [Mon, 27 Apr 2009 11:18:38 +0000 (11:18 +0000)]
re PR java/38374 (constant pool references have wrong types in ADDR_EXPR)
2009-04-27 Richard Guenther <rguenther@suse.de>
* tree-cfg.c (remove_useless_stmts): Verify stmts afterwards.
(verify_stmts): Dispatch to gimple/type verification code.
* tree-inline.c (remap_gimple_op_r): Work around C++ FE
issue with call argument types.
java/
PR java/38374
* constants.c (build_constants_constructor): Retain the old
pointer type as valid TYPE_POINTER_TO after patching the
type of the constant pool decl.
From-SVN: r146831
Michael Matz [Mon, 27 Apr 2009 11:15:53 +0000 (11:15 +0000)]
tree-into-ssa.c (regs_to_rename, [...]): Remove.
* tree-into-ssa.c (regs_to_rename, mem_syms_to_rename): Remove.
(init_update_ssa, delete_update_ssa, update_ssa): Remove references
to above.
From-SVN: r146830
Eric Botcazou [Mon, 27 Apr 2009 10:42:09 +0000 (10:42 +0000)]
resource.c (find_basic_block): Use BLOCK_FOR_INSN to look up a label's basic block.
* resource.c (find_basic_block): Use BLOCK_FOR_INSN to look up
a label's basic block.
(mark_target_live_regs): Tidy and rework obsolete comments.
Change back DF problem to LIVE. If a label starts a basic block,
assume that all registers that used to be live then still are.
(init_resource_info): If a label starts a basic block, set its
BLOCK_FOR_INSN accordingly.
(fini_resource_info): Undo the setting of BLOCK_FOR_INSN.
From-SVN: r146829
Richard Guenther [Mon, 27 Apr 2009 08:26:40 +0000 (08:26 +0000)]
tree-flow-inline.h (function_ann): Remove.
2009-04-27 Richard Guenther <rguenther@suse.de>
* tree-flow-inline.h (function_ann): Remove.
(get_function_ann): Likewise.
* tree-dfa.c (create_function_ann): Remove.
* tree-flow.h (struct static_var_ann_d): Remove.
(struct function_ann_d): Likewise.
(union tree_ann_d): Remove fdecl member.
(function_ann_t): Remove.
(function_ann, get_function_ann, create_function_ann): Remove
declarations.
From-SVN: r146828
Uros Bizjak [Mon, 27 Apr 2009 07:20:29 +0000 (09:20 +0200)]
alpha.c (code_for_builtin): Declare as enum insn_code.
* config/alpha/alpha.c (code_for_builtin): Declare as enum insn_code.
From-SVN: r146826
Jakub Jelinek [Mon, 27 Apr 2009 05:54:32 +0000 (07:54 +0200)]
re PR c++/39875 (Wrong "value computed is not used" warning)
PR c++/39875
* cvt.c (convert_to_void) <case INDIRECT_REF>: Only warn about
-Wunused-value if implicit.
* g++.dg/warn/Wunused-15.C: New test.
From-SVN: r146825
GCC Administrator [Mon, 27 Apr 2009 00:17:04 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r146824
Jan Hubicka [Sun, 26 Apr 2009 23:35:27 +0000 (01:35 +0200)]
ipa-pure-const.c (struct funct_state_d): New fields state_previously_known, looping_previously_known...
* ipa-pure-const.c (struct funct_state_d): New fields
state_previously_known, looping_previously_known; remove
state_set_in_source.
(analyze_function): Use new fields.
(propagate): Avoid assumption that state_set_in_source imply
nonlooping.
* tree-ssa-loop-niter.c (finite_loop_p): New function.
* tree-ssa-loop-ivcanon.c (empty_loop_p): Use it.
* cfgloop.h (finite_loop_p): Declare.
From-SVN: r146821
Michael Matz [Sun, 26 Apr 2009 22:13:39 +0000 (22:13 +0000)]
* tree-flow.h (tree_ann_common_d): Remove aux and value_handle members.
From-SVN: r146820
Michael Matz [Sun, 26 Apr 2009 22:09:50 +0000 (22:09 +0000)]
tree-pass.h (pass_del_ssa, [...]): Remove decls.
* tree-pass.h (pass_del_ssa, pass_mark_used_blocks,
pass_free_cfg_annotations, pass_free_datastructures): Remove decls.
* gimple-low.c (mark_blocks_with_used_vars, mark_used_blocks,
pass_mark_used_blocks): Remove.
* tree-optimize.c (pass_free_datastructures,
execute_free_cfg_annotations, pass_free_cfg_annotations): Remove.
* passes.c (init_optimization_passes): Don't call
pass_mark_used_blocks, remove dead code.
From-SVN: r146819
H.J. Lu [Sun, 26 Apr 2009 21:40:47 +0000 (21:40 +0000)]
tree-outof-ssa.c (rewrite_trees): Add ATTRIBUTE_UNUSED.
2009-04-26 H.J. Lu <hongjiu.lu@intel.com>
* tree-outof-ssa.c (rewrite_trees): Add ATTRIBUTE_UNUSED.
* tree-ssa-live.h (register_ssa_partition): Likewise.
From-SVN: r146818
Michael Matz [Sun, 26 Apr 2009 19:35:04 +0000 (19:35 +0000)]
Expand from SSA.
gcc/
Expand from SSA.
* builtins.c (fold_builtin_next_arg): Handle SSA names.
* tree-ssa-copyrename.c (rename_ssa_copies): Use ssa_name() directly.
* tree-ssa-coalesce.c (create_outofssa_var_map): Mark only useful
SSA names.
(compare_pairs): Swap cost comparison.
(coalesce_ssa_name): Don't use change_partition_var.
* tree-nrv.c (struct nrv_data): Add modified member.
(finalize_nrv_r): Set it.
(tree_nrv): Use it to update statements.
(pass_nrv): Require PROP_ssa.
* tree-mudflap.c (mf_decl_cache_locals,
mf_build_check_statement_for): Use make_rename_temp.
(pass_mudflap_2): Require PROP_ssa, run ssa update at finish.
* alias.c (find_base_decl): Handle SSA names.
* emit-rtl (set_reg_attrs_for_parm): Make non-static.
(component_ref_for_mem_expr): Don't leak SSA names into RTL.
* rtl.h (set_reg_attrs_for_parm): Declare.
* tree-optimize.c (pass_cleanup_cfg_post_optimizing): Rename
to "optimized", remove unused locals at finish.
(execute_free_datastructures): Make global, call
delete_tree_cfg_annotations.
(execute_free_cfg_annotations): Don't call
delete_tree_cfg_annotations.
* ssaexpand.h: New file.
* expr.c (toplevel): Include ssaexpand.h.
(expand_assignment): Handle SSA names the same as register
variables.
(expand_expr_real_1): Expand SSA names.
* cfgexpand.c (toplevel): Include ssaexpand.h.
(SA): New global variable.
(gimple_cond_pred_to_tree): Fold TERed comparisons into predicates.
(SSAVAR): New macro.
(set_rtl): New helper function.
(add_stack_var): Deal with SSA names, use set_rtl.
(expand_one_stack_var_at): Likewise.
(expand_one_stack_var): Deal with SSA names.
(stack_var_size_cmp): Use code (SSA_NAME / DECL) as tie breaker
before unique numbers.
(expand_stack_vars): Use set_rtl.
(expand_one_var): Accept SSA names, add asserts for them, feed them
to above subroutines.
(expand_used_vars): Expand all partitions (without default defs),
then only the local decls (ignoring those expanded already).
(expand_gimple_cond): Remove edges when jumpif() expands an
unconditional jump.
(expand_gimple_basic_block): Don't clear EDGE_EXECUTABLE here,
or remove abnormal edges. Ignore insns setting the LHS of a TERed
SSA name.
(gimple_expand_cfg): Call into rewrite_out_of_ssa, initialize
members of SA; deal with PARM_DECL partitions here; expand
all PHI nodes, free tree datastructures and SA. Commit instructions
on edges, clear EDGE_EXECUTABLE and remove abnormal edges here.
(pass_expand): Require and destroy PROP_ssa, verify SSA form, flow
info and statements at start, collect garbage at finish.
* tree-ssa-live.h (struct _var_map): Remove partition_to_var member.
(VAR_ANN_PARTITION) Remove.
(change_partition_var): Don't declare.
(partition_to_var): Always return SSA names.
(var_to_partition): Only accept SSA names.
(register_ssa_partition): Only check argument.
* tree-ssa-live.c (init_var_map): Don't allocate partition_to_var
member.
(delete_var_map): Don't free it.
(var_union): Only accept SSA names, simplify.
(partition_view_init): Mark only useful SSA names as used.
(partition_view_fini): Only deal with SSA names.
(change_partition_var): Remove.
(dump_var_map): Use ssa_name instead of partition_to_var member.
* tree-ssa.c (delete_tree_ssa): Don't remove PHI nodes on RTL
basic blocks.
* tree-outof-ssa.c (toplevel): Include ssaexpand.h and expr.h.
(struct _elim_graph): New member const_dests; nodes member vector of
ints.
(set_location_for_edge): New static helper.
(create_temp): Remove.
(insert_partition_copy_on_edge, insert_part_to_rtx_on_edge,
insert_value_copy_on_edge, insert_rtx_to_part_on_edge): New
functions.
(new_elim_graph): Allocate const_dests member.
(clean_elim_graph): Truncate const_dests member.
(delete_elim_graph): Free const_dests member.
(elim_graph_size): Adapt to new type of nodes member.
(elim_graph_add_node): Likewise.
(eliminate_name): Likewise.
(eliminate_build): Don't take basic block argument, deal only with
partition numbers, not variables.
(get_temp_reg): New static helper.
(elim_create): Use it, deal with RTL temporaries instead of trees.
(eliminate_phi): Adjust all calls to new signature.
(assign_vars, replace_use_variable, replace_def_variable): Remove.
(rewrite_trees): Only do checking.
(edge_leader, stmt_list, leader_has_match, leader_match): Remove.
(same_stmt_list_p, identical_copies_p, identical_stmt_lists_p,
init_analyze_edges_for_bb, fini_analyze_edges_for_bb,
contains_tree_r, MAX_STMTS_IN_LATCH,
process_single_block_loop_latch, analyze_edges_for_bb,
perform_edge_inserts): Remove.
(expand_phi_nodes): New global function.
(remove_ssa_form): Take ssaexpand parameter. Don't call removed
functions, initialize new parameter, remember partitions having a
default def.
(finish_out_of_ssa): New global function.
(rewrite_out_of_ssa): Make global. Adjust call to remove_ssa_form,
don't reset in_ssa_p here, don't disable TER when mudflap.
(pass_del_ssa): Remove.
* tree-flow.h (struct var_ann_d): Remove out_of_ssa_tag and
partition members.
(execute_free_datastructures): Declare.
* Makefile.in (SSAEXPAND_H): New variable.
(tree-outof-ssa.o, expr.o, cfgexpand.o): Depend on SSAEXPAND_H.
* basic-block.h (commit_one_edge_insertion): Declare.
* passes.c (init_optimization_passes): Move pass_nrv and
pass_mudflap2 before pass_cleanup_cfg_post_optimizing, remove
pass_del_ssa, pass_free_datastructures, pass_free_cfg_annotations.
* cfgrtl.c (commit_one_edge_insertion): Make global, don't declare.
(redirect_branch_edge): Deal with super block when expanding, split
out jump patching itself into ...
(patch_jump_insn): ... here, new static helper.
testsuite/
Expand from SSA.
* gcc.dg/tree-ssa/
20030728-1.c: Use -rtl-expand-details dump and
change regexps.
* gcc.target/i386/pr37248-1.c: Modified.
* gcc.target/i386/pr37248-3.c: Modified.
* gcc.target/i386/pr37248-2.c: Modified.
* gnat.dg/aliasing1.adb: Modified.
* gnat.dg/pack9.adb: Modified.
* gnat.dg/aliasing2.adb: Modified.
* gcc.dg/strict-overflow-2.c: Modified.
* gcc.dg/autopar/reduc-1char.c: Modified.
* gcc.dg/autopar/reduc-2char.c: Modified.
* gcc.dg/autopar/reduc-1.c: Modified.
* gcc.dg/autopar/reduc-2.c: Modified.
* gcc.dg/autopar/reduc-3.c: Modified.
* gcc.dg/autopar/reduc-6.c: Modified.
* gcc.dg/autopar/reduc-7.c: Modified.
* gcc.dg/autopar/reduc-8.c: Modified.
* gcc.dg/autopar/reduc-9.c: Modified.
* gcc.dg/autopar/reduc-1short.c: Modified.
* gcc.dg/autopar/reduc-2short.c: Modified.
* gcc.dg/autopar/parallelization-1.c: Modified.
* gcc.dg/strict-overflow-4.c: Modified.
* gcc.dg/strict-overflow-6.c: Modified.
* gcc.dg/gomp/combined-1.c: Modified.
* gcc.dg/no-strict-overflow-1.c: Modified.
* gcc.dg/no-strict-overflow-3.c: Modified.
* gcc.dg/no-strict-overflow-5.c: Modified.
* gcc.dg/tree-ssa/reassoc-13.c: Modified.
* gcc.dg/tree-ssa/pr18134.c: Modified.
* gcc.dg/tree-ssa/
20030824-1.c: Modified.
* gcc.dg/tree-ssa/vector-2.c: Modified.
* gcc.dg/tree-ssa/forwprop-9.c: Modified.
* gcc.dg/tree-ssa/loop-21.c: Modified.
* gcc.dg/tree-ssa/
20030824-2.c: Modified.
* gcc.dg/tree-ssa/vector-3.c: Modified.
* gcc.dg/tree-ssa/asm-3.c: Modified.
* gcc.dg/tree-ssa/pr23294.c: Modified.
* gcc.dg/tree-ssa/loop-22.c: Modified.
* gcc.dg/tree-ssa/loop-15.c: Modified.
* gcc.dg/tree-ssa/prefetch-4.c: Modified.
* gcc.dg/tree-ssa/pr22051-1.c: Modified.
* gcc.dg/tree-ssa/pr20139.c: Modified.
* gcc.dg/tree-ssa/scev-cast.c: Modified.
* gcc.dg/tree-ssa/pr22051-2.c: Modified.
* gcc.dg/tree-ssa/reassoc-1.c: Modified.
* gcc.dg/tree-ssa/loop-5.c: Modified.
* gcc.dg/tree-ssa/pr19431.c: Modified.
* gcc.dg/tree-ssa/pr32044.c: Modified.
* gcc.dg/tree-ssa/prefetch-7.c: Modified.
* gcc.dg/tree-ssa/loop-19.c: Modified.
* gcc.dg/tree-ssa/loop-28.c: Modified.
* gcc.dg/tree-ssa/ssa-pre-15.c: Modified.
* gcc.dg/tree-ssa/divide-1.c: Modified.
* gcc.dg/tree-ssa/inline-1.c: Modified.
* gcc.dg/tree-ssa/divide-3.c: Modified.
* gcc.dg/tree-ssa/pr30978.c: Modified.
* gcc.dg/tree-ssa/alias-6.c: Modified.
* gcc.dg/tree-ssa/divide-4.c: Modified.
* gcc.dg/tree-ssa/alias-11.c: Modified.
* gcc.dg/no-strict-overflow-7.c: Modified.
* gcc.dg/strict-overflow-1.c: Modified.
* gcc.dg/pr15784-4.c: Modified.
* gcc.dg/pr34263.c: Modified.
* gcc.dg/strict-overflow-3.c: Modified.
* gcc.dg/tree-prof/stringop-1.c: Modified.
* gcc.dg/tree-prof/val-prof-1.c: Modified.
* gcc.dg/tree-prof/val-prof-2.c: Modified.
* gcc.dg/tree-prof/val-prof-3.c: Modified.
* gcc.dg/tree-prof/val-prof-4.c: Modified.
* gcc.dg/no-strict-overflow-2.c: Modified.
* gcc.dg/no-strict-overflow-4.c: Modified.
* gcc.dg/no-strict-overflow-6.c: Modified.
* g++.dg/tree-ssa/pr27090.C: Modified.
* g++.dg/tree-ssa/tmmti-2.C: Modified.
* g++.dg/tree-ssa/ptrmemfield.C: Modified.
* g++.dg/tree-ssa/pr19807.C: Modified.
* g++.dg/opt/pr30965.C: Modified.
* g++.dg/init/new17.C: Modified.
* gfortran.dg/whole_file_6.f90: Modified.
* gfortran.dg/whole_file_5.f90: Modified.
* gfortran.dg/reassoc_1.f90: Modified.
* gfortran.dg/reassoc_3.f90: Modified.
From-SVN: r146817
Steven G. Kargl [Sun, 26 Apr 2009 19:27:50 +0000 (19:27 +0000)]
re PR fortran/39893 ([4.4] gfortran ICE on invalid program)
2009-04-26 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/39893
* gfortran.dg/assumed_charlen_dummy.f90: New Test.
2009-04-26 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/39893
fortran/data.c (gfc_assign_data_value): If the lvalue is an
assumed character length entity in a data statement, then
return FAILURE to prevent segmentation fault.
From-SVN: r146816
Michael Matz [Sun, 26 Apr 2009 19:24:16 +0000 (19:24 +0000)]
tree-ssa-copyrename.c (rename_ssa_copies): Don't iterate beyond num_ssa_names.
* tree-ssa-copyrename.c (rename_ssa_copies): Don't iterate
beyond num_ssa_names.
* tree-ssa-ter.c (free_temp_expr_table): Likewise.
* tree-ssa-coalesce.c (create_outofssa_var_map): Likewise.
From-SVN: r146815
Jakub Jelinek [Sun, 26 Apr 2009 18:56:14 +0000 (20:56 +0200)]
re PR inline-asm/39543 (Reload failure on mplayer from SVN)
PR inline-asm/39543
* fwprop.c (forward_propagate_asm): New function.
(forward_propagate_and_simplify): Propagate also into __asm, if it
doesn't increase the number of referenced registers.
* gcc.target/i386/pr39543-1.c: New test.
* gcc.target/i386/pr39543-2.c: New test.
* gcc.target/i386/pr39543-3.c: New test.
From-SVN: r146813
Jakub Jelinek [Sun, 26 Apr 2009 18:51:07 +0000 (20:51 +0200)]
re PR c/39889 (Bogus -Wunused-value warning)
PR c/39889
* stmt.c (warn_if_unused_value): Look through NON_LVALUE_EXPR.
* gcc.dg/Wunused-value-3.c: New test.
From-SVN: r146811
Jakub Jelinek [Sun, 26 Apr 2009 18:47:54 +0000 (20:47 +0200)]
tree-nested.c (get_nonlocal_vla_type): If not optimizing, call note_nonlocal_vla_type for nonlocal VLAs.
* tree-nested.c (get_nonlocal_vla_type): If not optimizing, call
note_nonlocal_vla_type for nonlocal VLAs.
(note_nonlocal_vla_type, note_nonlocal_block_vlas,
contains_remapped_vars, remap_vla_decls): New functions.
(convert_nonlocal_reference_stmt): If not optimizing, call
note_nonlocal_block_vlas on GIMPLE_BIND block vars.
(nesting_copy_decl): Return {VAR,PARM,RESULT}_DECL unmodified
if it wasn't found in var_map.
(finalize_nesting_tree_1): Call remap_vla_decls. If outermost
GIMPLE_BIND doesn't have gimple_bind_block, chain debug_var_chain
to BLOCK_VARS (DECL_INITIAL (root->context)) instead of calling
declare_vars.
* gimplify.c (nonlocal_vlas): New variable.
(gimplify_var_or_parm_decl): Add debug VAR_DECLs for non-local
referenced VLAs.
(gimplify_body): Create and destroy nonlocal_vlas.
* trans-decl.c: Include pointer-set.h.
(nonlocal_dummy_decl_pset, tree nonlocal_dummy_decls): New variables.
(gfc_nonlocal_dummy_array_decl): New function.
(gfc_get_symbol_decl): Call it for non-local dummy args with saved
descriptor.
(gfc_get_symbol_decl): Set DECL_BY_REFERENCE when needed.
(gfc_generate_function_code): Initialize nonlocal_dummy_decl{s,_pset},
chain it to outermost block's vars, destroy it afterwards.
* Make-lang.in (trans-decl.o): Depend on pointer-set.h.
From-SVN: r146810
Jakub Jelinek [Sun, 26 Apr 2009 18:45:41 +0000 (20:45 +0200)]
dwarf2out.c (loc_descr_plus_const): New function.
* dwarf2out.c (loc_descr_plus_const): New function.
(build_cfa_aligned_loc, tls_mem_loc_descriptor,
mem_loc_descriptor, loc_descriptor_from_tree_1,
descr_info_loc, gen_variable_die): Use it.
From-SVN: r146809
Jakub Jelinek [Sun, 26 Apr 2009 18:44:59 +0000 (20:44 +0200)]
tree.h (DECL_BY_REFERENCE): Note that it is also valid for !TREE_STATIC VAR_DECLs.
* tree.h (DECL_BY_REFERENCE): Note that it is also valid for
!TREE_STATIC VAR_DECLs.
* dwarf2out.c (loc_by_reference, gen_decl_die): Handle
DECL_BY_REFERENCE on !TREE_STATIC VAR_DECLs.
(gen_variable_die): Likewise. Don't look at TREE_PRIVATE if
DECL_BY_REFERENCE is valid.
* dbxout.c (DECL_ACCESSIBILITY_CHAR): Don't look at TREE_PRIVATE
for PARM_DECLs, RESULT_DECLs or !TREE_STATIC VAR_DECLs.
* tree-nested.c (get_nonlocal_debug_decl, get_local_debug_decl):
Copy DECL_BY_REFERENCE.
(struct nesting_copy_body_data): New type.
(nesting_copy_decl): New function.
(finalize_nesting_tree_1): Remap types of debug_var_chain variables,
if they have variable length.
From-SVN: r146808
Michael Matz [Sun, 26 Apr 2009 17:11:22 +0000 (17:11 +0000)]
tree-sra.c (sra_build_assignment): Don't use into_ssa mode, mark new temporaries for renaming
* tree-sra.c (sra_build_assignment): Don't use into_ssa mode,
mark new temporaries for renaming
From-SVN: r146807
Joseph Myers [Sun, 26 Apr 2009 17:00:04 +0000 (18:00 +0100)]
re PR c/39581 (VLA types at file scope wrongly rejected)
PR c/39581
* c-decl.c (global_bindings_p): Return negative value.
(c_variable_size): New. Based on variable_size from
stor-layout.c.
(grokdeclarator): Call c_variable_size not variable_size.
testsuite:
* gcc.dg/c99-const-expr-14.c, gcc.dg/gnu99-const-expr-4.c,
gcc.dg/vla-21.c: New tests.
From-SVN: r146806
Uros Bizjak [Sun, 26 Apr 2009 16:50:24 +0000 (18:50 +0200)]
i386.c (print_operand): Fix typo.
* config/i386/i386.c (print_operand) ['z']: Fix typo.
From-SVN: r146804
Matthias Klose [Sun, 26 Apr 2009 14:11:58 +0000 (14:11 +0000)]
aot-compile.in: Print diagnostics for malformed or invalid class files.
2009-04-26 Matthias Klose <doko@ubuntu.com>
* contrib/aot-compile.in: Print diagnostics for malformed or invalid
class files.
* contrib/generate-cacerts.pl.in: New.
* configure.ac (AC_CONFIG_FILES): Add generate-cacerts.pl.
From-SVN: r146802
Kai Tietz [Sun, 26 Apr 2009 13:50:12 +0000 (13:50 +0000)]
mingw-w64.h (STANDARD_INCLUDE_DIR): Redefine it to just use mingw/include.
2009-04-26 Kai Tietz <kai.tietz@onevision.com>
* config/i386/mingw-w64.h (STANDARD_INCLUDE_DIR):
Redefine it to just use mingw/include.
(ASM_SPEC): Rules for -m32 and -m64.
(LINK_SPEC): Use Likewise.
(SPEC_32): New define.
(SPEC_64): Likewise.
(SUB_LINK_SPEC): Likewise.
(MULTILIB_DEFAULTS): New define.
* config/i386/t-mingw-w64 (MULTILIB_OPTIONS):
Add multilib options.
(MULTILIB_DIRNAMES): Likewise.
(MULTILIB_OSDIRNAMES): Likewise.
(LIBGCC): Likewise.
(INSTALL_LIBGCC): Likewise.
From-SVN: r146801
Joseph Myers [Sun, 26 Apr 2009 13:40:19 +0000 (14:40 +0100)]
re PR c/39556 (statics in C99 inline functions later declared extern)
PR c/39556
* c-tree.h (enum c_inline_static_type): New.
(record_inline_static): Declare.
* c-decl.c (struct c_inline_static, c_inline_statics,
record_inline_static, check_inline_statics): New.
(pop_file_scope): Call check_inline_statics.
(start_decl): Call record_inline_static instead of pedwarning
directly for static in inline function.
* c-typeck.c (build_external_ref): Call record_inline_static
instead of pedwarning directly for static referenced in inline
function.
testsuite:
* gcc.dg/inline-34.c: New test.
From-SVN: r146800
Steven Bosscher [Sun, 26 Apr 2009 12:28:53 +0000 (12:28 +0000)]
df-scan.c (df_insn_rescan): Salvage insn's LUID if the insn is not new but only being rescanned.
* df-scan.c (df_insn_rescan): Salvage insn's LUID if the insn is
not new but only being rescanned.
* gcse.c (uid_cuid, max_uid, INSN_CUID, max_cuid, struct reg_set,
reg_set_table, REG_SET_TABLE_SLOP, reg_set_in_block,
alloc_reg_set_mem, free_reg_set_mem, record_one_set,
record_set_info, compute_set, grealloc): Remove.
(recompute_all_luids): New function.
(gcse_main): Don't compute sets, and don't do related memory
allocations/free-ing. If something changed before the end of the
pass, update LUIDs using recompute_all_luids.
(alloc_gcse_mem): Don't compute LUIDs. Don't allocate reg_set memory.
(free_gcse_mem): Don't free it either.
(oprs_unchanged_p, load_killed_in_block, record_last_reg_set_info):
Use the df insn LUIDs.
(load_killed_in_block): Likewise.
(compute_hash_table_work): Don't compute reg_set_in_block.
(compute_transp): Use DF_REG_DEF_CHAINs.
(local_cprop_pass): Don't use compute_sets and related functions.
(one_cprop_pass, pre_gcse, one_pre_gcse_pass, one_code_hoisting_pass):
Use get_max_uid() instead of max_cuid.
(insert_insn_end_basic_block, pre_insert_copy_insn,
update_ld_motion_stores): Don't try to
keep reg_set tables up to date.
(pre_insert_copies): Use df insn LUIDs.
(sbitmap pre_redundant_insns): Replace with uses of INSN_DELETED_P.
(reg_set_info): Don't use extra bitmap argument.
(compute_store_table): Don't compute reg_set_in_block. Use DF scan
information to compute regs_set_in_block.
(free_store_memory, store_motion): Don't nullify reg_set_in_block.
(bypass_jumps): Don't use compute_sets and friends.
From-SVN: r146799
Paolo Carlini [Sun, 26 Apr 2009 10:12:08 +0000 (10:12 +0000)]
2009-04-26 Paolo Carlini <paolo.carlini@oracle.com>
Revert the last commit.
From-SVN: r146796
Ralf Wildenhues [Sun, 26 Apr 2009 08:18:48 +0000 (08:18 +0000)]
re PR testsuite/39710 (gcc.misc-tests/help.exp doesn't work when configured with --enable-checking=assert)
gcc/
PR testsuite/39710
* opts.c (undocumented_msg): Do not leave blank even with
ENABLE_CHECKING.
From-SVN: r146795
Ian Lance Taylor [Sun, 26 Apr 2009 03:51:54 +0000 (03:51 +0000)]
Update copyright year. Committed without a ChangeLog entry.
From-SVN: r146794
Eli Zaretskii [Sun, 26 Apr 2009 02:23:29 +0000 (02:23 +0000)]
Makefile.in (needed-list): Target removed (not used in GCC 3.0 and later).
* Makefile.in (needed-list): Target removed (not used in GCC
3.0 and later). All references deleted.
(mostlyclean): Remove references to needed.awk and needed2.awk.
From-SVN: r146793
GCC Administrator [Sun, 26 Apr 2009 00:17:14 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r146792
Joseph Myers [Sat, 25 Apr 2009 23:30:10 +0000 (00:30 +0100)]
c-decl.c (build_enumerator): Allow values folding to integer constants but not integer constant expressions...
* c-decl.c (build_enumerator): Allow values folding to integer
constants but not integer constant expressions with a pedwarn if
pedantic.
testsuite:
* gcc.dg/enum-const-1.c, gcc.dg/enum-const-2.c,
gcc.dg/enum-const-3.c: New tests.
* gcc.dg/gnu89-const-expr-1.c, gcc.dg/gnu99-const-expr-1.c: Use
-pedantic-errors. Update expected diagnostics.
From-SVN: r146789
Joseph Myers [Sat, 25 Apr 2009 21:19:09 +0000 (22:19 +0100)]
re PR c/39582 (bad errors for some uses of [*] arrays)
PR c/39582
* c-typeck.c (c_expr_sizeof_type): Create a C_MAYBE_CONST_EXPR
with non-null C_MAYBE_CONST_EXPR_PRE if size of a variable-length
type is an integer constant.
testsuite:
* gcc.dg/vla-20.c: New test.
From-SVN: r146787
Jonathan Wakely [Sat, 25 Apr 2009 20:14:27 +0000 (20:14 +0000)]
mutex (__get_once_functor_lock, [...]): Replace global lock object with local locks on global mutex.
2009-04-25 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/mutex (__get_once_functor_lock, __get_once_mutex):
Replace global lock object with local locks on global mutex.
* src/mutex.cc: Likewise.
* config/abi/pre/gnu.ver: Adjust.
* testsuite/30_threads/call_once/call_once2.cc: New.
From-SVN: r146785
Uros Bizjak [Sat, 25 Apr 2009 20:11:01 +0000 (22:11 +0200)]
re PR target/39897 (Revision 146761 caused libgomp.fortran/omp_atomic1.f90)
PR target/39897
* config/i386/i386.c (print_operand) ['z']: Revert handling of
HImode operands.
From-SVN: r146784
Gerald Pfeifer [Sat, 25 Apr 2009 20:03:12 +0000 (20:03 +0000)]
test_summary: Only include LAST_UPDATED if it exists.
* test_summary: Only include LAST_UPDATED if it exists.
Complete copyright years.
From-SVN: r146783
Paolo Carlini [Sat, 25 Apr 2009 19:02:17 +0000 (19:02 +0000)]
re PR libstdc++/39880 (Specialisation is_error_code_enum<errc> should not exist)
2009-04-25 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/39880
PR libstdc++/39881
PR libstdc++/39882
* include/std/system_error (is_error_code_enum<errc>): Remove.
(error_condition<>::error_condition(_ErrorCodeEnum,)
error_condition<>::operator=(_ErrorCodeEnum)): Use make_error_condition.
(error_code<>::error_code(_ErrorCodeEnum,),
error_code<>::operator=(_ErrorCodeEnum)): Use make_error_code.
* testsuite/19_diagnostics/system_error/39880.cc: New.
* testsuite/19_diagnostics/error_condition/modifiers/39881.cc:
Likewise.
* testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise.
* testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise.
* testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_other/char/error_code.cc:
Adjust.
* testsuite/27_io/basic_ostream/inserters_other/wchar_t/error_code.cc:
Likewise.
* testsuite/19_diagnostics/error_code/cons/1.cc: Likewise.
* testsuite/19_diagnostics/error_code/operators/bool.cc: Likewise.
* testsuite/19_diagnostics/error_code/operators/equal.cc: Likewise.
* testsuite/19_diagnostics/error_code/operators/not_equal.cc:
Likewise.
* testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Likewise.
* testsuite/19_diagnostics/system_error/cons-1.cc: Likewise.
* testsuite/19_diagnostics/system_error/what-4.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
From-SVN: r146781
Paolo Carlini [Sat, 25 Apr 2009 19:00:52 +0000 (19:00 +0000)]
re PR libstdc++/39880 (Specialisation is_error_code_enum<errc> should not exist)
2009-04-25 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/39880
PR libstdc++/39881
PR libstdc++/39882
* include/std/system_error (is_error_code_enum<errc>): Remove.
(error_condition<>::error_condition(_ErrorCodeEnum,)
error_condition<>::operator=(_ErrorCodeEnum)): Use make_error_condition.
(error_code<>::error_code(_ErrorCodeEnum,),
error_code<>::operator=(_ErrorCodeEnum)): Use make_error_code.
* testsuite/19_diagnostics/system_error/39880.cc: New.
* testsuite/19_diagnostics/error_condition/modifiers/39881.cc:
Likewise.
* testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise.
* testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise.
* testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_other/char/error_code.cc:
Adjust.
* testsuite/27_io/basic_ostream/inserters_other/wchar_t/error_code.cc:
Likewise.
* testsuite/19_diagnostics/error_code/cons/1.cc: Likewise.
* testsuite/19_diagnostics/error_code/operators/bool.cc: Likewise.
* testsuite/19_diagnostics/error_code/operators/equal.cc: Likewise.
* testsuite/19_diagnostics/error_code/operators/not_equal.cc:
Likewise.
* testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Likewise.
* testsuite/19_diagnostics/system_error/cons-1.cc: Likewise.
* testsuite/19_diagnostics/system_error/what-4.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
From-SVN: r146780
Joseph Myers [Sat, 25 Apr 2009 18:59:20 +0000 (19:59 +0100)]
Fix typo in comment in previous commit.
From-SVN: r146779
Joseph Myers [Sat, 25 Apr 2009 18:55:50 +0000 (19:55 +0100)]
re PR c/39564 (variably modified function return types not always diagnosed)
PR c/39564
* c-decl.c (grokdeclarator): Diagnose declarations of functions
with variably modified return type and no storage class
specifiers, except for the case of nested functions. Distinguish
extern declarations of functions with variably modified return
types from those of objects with variably modified types.
testsuite:
* gcc.dg/vla-19.c: New test.
From-SVN: r146778
Joseph Myers [Sat, 25 Apr 2009 18:46:03 +0000 (19:46 +0100)]
re PR preprocessor/39559 (constants too large for intmax_t need pedwarns)
libcpp:
PR preprocessor/39559
* expr.c (cpp_interpret_integer): Use a pedwarn for decimal
constants larger than intmax_t in C99 mode.
gcc/testsuite:
* gcc.dg/c99-intconst-2.c: New test.
From-SVN: r146777
Jan Hubicka [Sat, 25 Apr 2009 18:27:19 +0000 (20:27 +0200)]
tree.c (list_equal_p): New function.
* tree.c (list_equal_p): New function.
* tree.h (list_equal_p): Declare.
* coretypes.h (edge_def, edge, const_edge, basic_block_def
basic_block_def, basic_block, const_basic_block): New.
* tree-eh.c (make_eh_edge): EH edges are not abnormal.
(redirect_eh_edge): New function.
(make_eh_edge_update_phi): EH edges are not abnormal.
* except.c: Include tree-flow.h.
(list_match): New function.
(eh_region_replaceable_by_p): New function.
(replace_region): New function.
(hash_type_list): New function.
(hash_eh_region): New function.
(eh_regions_equal_p): New function.
(merge_peers): New function.
(remove_unreachable_regions): Verify EH tree when checking;
merge peers.
(copy_eh_region_1): New function.
(copy_eh_region): New function.
(push_reachable_handler): New function.
(build_post_landing_pads, dw2_build_landing_pads): Be ready for
regions without label but with live RESX.
* except.h (redirect_eh_edge_to_label): New.
* tree-flow.h (redirect_eh_edge): New.
* coretypes.h (edge_def, edge, const_edge, basic_block_def
basic_block_def, basic_block, const_basic_block): Remove.
* Makefile.in (except.o): Add dependency on tree-flow.h
* tree-cfg.c (gimple_redirect_edge_and_branch): Handle EH edges.
* basic-block.h (edge, const_edge, basic_block, const_basic_block):
Remove.
From-SVN: r146776
Eric Botcazou [Sat, 25 Apr 2009 13:32:43 +0000 (13:32 +0000)]
re PR bootstrap/39645 (uninitialized variable in genattrtab.c)
PR bootstrap/39645
* config/sparc/sparc.c (sparc_gimplify_va_arg): Set TREE_ADDRESSABLE
on the destination of memcpy.
From-SVN: r146772
Eric Botcazou [Sat, 25 Apr 2009 12:24:08 +0000 (12:24 +0000)]
Makefile.tpl (POSTSTAGE1_HOST_EXPORTS): Add GNATBIND.
* Makefile.tpl (POSTSTAGE1_HOST_EXPORTS): Add GNATBIND.
(POSTSTAGE1_FLAGS_TO_PASS): Pick up exported value for GNATBIND.
* Makefile.in: Regenerate.
From-SVN: r146769
Eric Botcazou [Sat, 25 Apr 2009 10:38:24 +0000 (10:38 +0000)]
decl.c (gnat_to_gnu_entity): Put back kludge.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Put
back kludge.
From-SVN: r146766
Paolo Bonzini [Sat, 25 Apr 2009 10:20:58 +0000 (10:20 +0000)]
tm.texi (REGNO_OK_FOR_BASE_P, [...]): Mention strict/nonstrict difference.
2009-04-25 Paolo Bonzini <bonzini@gnu.org>
* doc/tm.texi (REGNO_OK_FOR_BASE_P, REGNO_MODE_OK_FOR_BASE_P,
REGNO_MODE_OK_FOR_REG_BASE_P, REGNO_MODE_CODE_OK_FOR_BASE_P,
REGNO_OK_FOR_INDEX_P): Mention strict/nonstrict difference.
From-SVN: r146765
Jan Hubicka [Sat, 25 Apr 2009 09:02:05 +0000 (11:02 +0200)]
tree-eh.c (tree_remove_unreachable_handlers): Handle shared labels.
* tree-eh.c (tree_remove_unreachable_handlers): Handle shared labels.
(tree_empty_eh_handler_p): Allow non-EH predecestors; allow region
to be reached by different label than left.
(update_eh_edges): Update comment; remove edge_to_remove if possible
and return true if suceeded.
(cleanup_empty_eh): Accept sharing map; handle shared regions.
(cleanup_eh): Compute sharing map.
* except.c (remove_eh_handler_and_replace): Add argument if we should
update regions.
(remove_unreachable_regions): Update for label sharing.
(label_to_region_map): Likewise.
(get_next_region_sharing_label): New function.
(remove_eh_handler_and_replace): Add update_catch_try parameter; update
prev_try pointers.
(remove_eh_handler): Update.
(remove_eh_region_and_replace_by_outer_of): New function.
* except.h (struct eh_region): Add next_region_sharing_label.
(remove_eh_region_and_replace_by_outer_of,
get_next_region_sharing_label): Declare.
* tree-cfgcleanup.c (tree_forwarder_block_p): Simplify.
* tree-cfg.c (split_critical_edges): Split also edges where we can't
insert code even if they are not critical.
* tree-cfg.c (gimple_can_merge_blocks_p): EH edges are unmergable.
(gimple_can_remove_branch_p): EH edges won't remove branch by
redirection.
* tree-inline.c (update_ssa_across_abnormal_edges): Do handle
updating of non-abnormal EH edges.
* tree-cfg.c (gimple_can_merge_blocks_p): EH edges are unmergable.
(gimple_can_remove_branch_p): EH edges are unremovable by redirection.
(split_critical_edges): Split also edges where emitting code on them
will lead to splitting later.
From-SVN: r146763
Janus Weil [Sat, 25 Apr 2009 08:11:48 +0000 (10:11 +0200)]
re PR fortran/39688 (IMPORT of derived type fails)
2009-04-25 Janus Weil <janus@gcc.gnu.org>
PR fortran/39688
* decl.c (gfc_match_import): Use 'sym->name' instead of 'name'.
They differ if the symbol has been use-renamed.
2009-04-25 Janus Weil <janus@gcc.gnu.org>
PR fortran/39688
* gfortran.dg/import7.f90: New.
From-SVN: r146762
Uros Bizjak [Sat, 25 Apr 2009 08:10:51 +0000 (10:10 +0200)]
re PR inline-asm/39590 (inline asm %z on amd64 says "ll" instead of "q")
PR target/39590
* configure.ac (HAVE_AS_IX86_FILDQ): On x86 targets check whether
the configured assembler supports fildq and fistpq mnemonics.
(HAVE_AS_IX86_FILDS): Rename from HAVE_GAS_FILDS_FISTS.
* configure: Regenerated.
* config.in: Ditto.
* config/i386/i386.c (print_operand): Handle 'Z'.
['z']: Remove handling of special fild/fist suffixes.
(output_fix_trunc): Use '%Z' to output suffix of fist{,p,tp} insn.
* config/i386/i386.md (*floathi<mode>2_i387): Use '%Z' to output
suffix of fild insn.
(*floatsi<mode>2_vector_mixed): Ditto.
(*float<SSEMODEI24:mode><MODEF:mode>2_mixed_interunit): Ditto.
(*float<SSEMODEI24:mode><MODEF:mode>2_mixed_nointerunit): Ditto.
(*float<SSEMODEI24:mode><X87MODEF:mode>2_i387_with_temp): Ditto.
(*float<SSEMODEI24:mode><X87MODEF:mode>2_i387): Ditto.
* config/i386/gas.h (GAS_MNEMONICS): Remove.
From-SVN: r146761
Matthias Klose [Sat, 25 Apr 2009 08:04:38 +0000 (08:04 +0000)]
configure.ac: Create missing directory gnu/java/security/jce/prng.
2009-04-24 Matthias Klose <doko@ubuntu.com>
* configure.ac: Create missing directory gnu/java/security/jce/prng.
* configure: Regenerate.
From-SVN: r146759
Ben Elliston [Sat, 25 Apr 2009 04:51:34 +0000 (04:51 +0000)]
genrecog.c (validate_pattern): Do not warn for VOIDmode CALLs as the source of a set operation.
* genrecog.c (validate_pattern): Do not warn for VOIDmode CALLs as
the source of a set operation.
From-SVN: r146757
Anatoly Sokolov [Sat, 25 Apr 2009 04:34:27 +0000 (08:34 +0400)]
target.h (struct gcc_target): Add case_values_threshold field.
* target.h (struct gcc_target): Add case_values_threshold field.
* target-def.h (TARGET_CASE_VALUES_THRESHOLD): New.
(TARGET_INITIALIZER): Use TARGET_CASE_VALUES_THRESHOLD.
* targhooks.c (default_case_values_threshold): New function.
* targhooks.h (default_case_values_threshold): Declare function.
* stmt.c (expand_case): Use case_values_threshold target hook.
* expr.h (case_values_threshold): Remove declartation.
* expr.c (case_values_threshold): Remove function.
* doc/tm.texi (CASE_VALUES_THRESHOLD): Revise documentation.
* config/avr/avr.h (CASE_VALUES_THRESHOLD): Remove macro.
* config/avr/avr.c (TARGET_CASE_VALUES_THRESHOLD): Define macro.
(avr_case_values_threshold): Declare as static.
* config/avr/avr-protos.h (avr_case_values_threshold): Remove.
* config/avr/mn10300.h (CASE_VALUES_THRESHOLD): Remove macro.
* config/avr/mn10300.c (TARGET_CASE_VALUES_THRESHOLD): Define macro.
(mn10300_case_values_threshold): New function.
From-SVN: r146756
Kaveh R. Ghazi [Sat, 25 Apr 2009 03:24:17 +0000 (03:24 +0000)]
re PR bootstrap/39739 (Bootstrapping with in-tree mpfr-2.4.1 and --with-gmp=... errors)
PR bootstrap/39739
* configure.ac (extra_mpfr_configure_flags): Set and AC_SUBST.
* Makefile.def (module=mpfr): Use extra_mpfr_configure_flags.
* configure, Makefile.in: Regenerate.
From-SVN: r146754
H.J. Lu [Sat, 25 Apr 2009 00:55:51 +0000 (00:55 +0000)]
ira.c (setup_cover_and_important_classes): Add enum cast.
2009-04-24 H.J. Lu <hongjiu.lu@intel.com>
* ira.c (setup_cover_and_important_classes): Add enum cast.
From-SVN: r146753
GCC Administrator [Sat, 25 Apr 2009 00:16:53 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r146752