platform/upstream/gcc.git
14 years ago* fi.po: New.
Joseph Myers [Sat, 15 May 2010 01:06:29 +0000 (02:06 +0100)]
* fi.po: New.

From-SVN: r159426

14 years agoDaily bump.
GCC Administrator [Sat, 15 May 2010 00:17:02 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r159425

14 years agocgraph.h (ipa_discover_readonly_nonaddressable_vars): Declare.
Jan Hubicka [Fri, 14 May 2010 23:39:39 +0000 (01:39 +0200)]
cgraph.h (ipa_discover_readonly_nonaddressable_vars): Declare.

* cgraph.h (ipa_discover_readonly_nonaddressable_vars): Declare.
(varpool_all_refs_explicit_p): New inline function.
* ipa-reference.c: Update comment.
(module_statics_written): Remove.
(get_static_decl): Remove.
(ipa_init): Do not initialize module_statics_written.
(analyze_function): Likewise.
(generate_summary): Likewise; do not compute module_statics_readonly
and do not update variable flags.
(propagate): Call ipa_discover_readonly_nonaddressable_vars.
* ipa.c: Inlucde flags.h
(cgraph_local_node_p): New.
(cgraph_remove_unreachable_nodes): Return early when not optimizing;
promote functions to local.
(ipa_discover_readonly_nonaddressable_vars): New function.
(function_and_variable_visibility): Use cgraph_local_node_p.
* varpool.c (varpool_finalize_decl): Set force_output for
DECL_PRESERVE_P vars.

From-SVN: r159421

14 years agore PR fortran/44135 (Negative array bounds lead to spurious warning)
Steven G. Kargl [Fri, 14 May 2010 21:02:26 +0000 (21:02 +0000)]
re PR fortran/44135 (Negative array bounds lead to spurious warning)

2010-05-14  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/44135
* gfortran.dg/actual_array_interface_2.f90: New test.

2010-05-14  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/44135
* fortran/interface.c (get_sym_storage_size): Use signed instead of
unsigned mpz_get_?i routines.

From-SVN: r159415

14 years agore PR middle-end/44103 (New Java test failures)
Nathan Froyd [Fri, 14 May 2010 20:47:39 +0000 (20:47 +0000)]
re PR middle-end/44103 (New Java test failures)

PR 44103
* java-tree.h (START_RECORD_CONSTRUCTOR): Change first argument to a
vector.  Move call to build_constructor...
(FINISH_RECORD_CONSTRUCTOR): ...here.  Add necessary arguments.  Clear
TREE_CONSTANT on the constructor.
(PUSH_SUPER_VALUE): Change first argument to a vector.
(PUSH_FIELD_VALUE): Likewise.
* resource.c (compile_resource_data): Update calls to above macros.
* constants.c (build_constants_constructor): Likewise.
* class.c (build_utf8_ref): Likewise.
(make_field_value): Likewise.
(make_method_value): Likewise.
(add_table_and_syms): New function.
(make_class_data): Call it.  Update calls to above macros.
(build_symbol_table_entry): New function.
(build_symbol_entry): Call it.  Update calls to above macros.
(emit_symbol_table): Likewise.
(make_catch_class_record): Update calls to above macros.
(build_assertion_table_entry): New function.
(add_assertion_table_entry): Call it.
(emit_assertion_table): Likewise.

From-SVN: r159414

14 years ago* ipa.c (cgraph_remove_unreachable_nodes): Revert accidental commit.
Jan Hubicka [Fri, 14 May 2010 20:38:43 +0000 (22:38 +0200)]
* ipa.c (cgraph_remove_unreachable_nodes): Revert accidental commit.

From-SVN: r159413

14 years agore PR tree-optimization/44119 (error: SSA name in freelist but still referenced)
Richard Guenther [Fri, 14 May 2010 20:18:34 +0000 (20:18 +0000)]
re PR tree-optimization/44119 (error: SSA name in freelist but still referenced)

2010-05-14  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/44119
* tree-ssa-pre.c (eliminate): Properly mark replacement of
a PHI node necessary.

* gcc.c-torture/compile/pr44119.c: New testcase.

From-SVN: r159412

14 years ago* tree.h (TREE_ADDRESSABLE): Remove bogus usage for FIELD_DECL.
Eric Botcazou [Fri, 14 May 2010 19:27:14 +0000 (19:27 +0000)]
* tree.h (TREE_ADDRESSABLE): Remove bogus usage for FIELD_DECL.

From-SVN: r159409

14 years agore PR c++/44127 (G++ emits unnecessary EH code)
Jason Merrill [Fri, 14 May 2010 18:55:22 +0000 (14:55 -0400)]
re PR c++/44127 (G++ emits unnecessary EH code)

PR c++/44127
gcc:
* gimple.h (enum gf_mask): Add GF_CALL_NOTHROW.
(gimple_call_set_nothrow): New.
* gimple.c (gimple_build_call_from_tree): Call it.
(gimple_call_flags): Set ECF_NOTHROW from GF_CALL_NOTHROW.
gcc/cp:
* except.c (dtor_nothrow): Return nonzero for type with
trivial destructor.

From-SVN: r159408

14 years agore PR c++/44127 (G++ emits unnecessary EH code)
Jason Merrill [Fri, 14 May 2010 18:55:10 +0000 (14:55 -0400)]
re PR c++/44127 (G++ emits unnecessary EH code)

PR c++/44127
gcc:
* gimplify.c (gimplify_seq_add_stmt): No longer static.
* gimple.h: Declare it.
* gimple.c (gimple_build_eh_filter): No ops.
gcc/cp:
* cp-gimplify.c (gimplify_must_not_throw_expr): Use
gimple_build_eh_must_not_throw.

From-SVN: r159407

14 years agoipa.c (enqueue_cgraph_node): Update comment; do not re-enqueue nodes already in queue.
Jan Hubicka [Fri, 14 May 2010 18:34:30 +0000 (20:34 +0200)]
ipa.c (enqueue_cgraph_node): Update comment; do not re-enqueue nodes already in queue.

* ipa.c (enqueue_cgraph_node): Update comment; do not re-enqueue
nodes already in queue.
(cgraph_remove_unreachable_nodes): Cleanup; fix problem with re-enqueueing
node.

From-SVN: r159405

14 years agore PR debug/44136 (ICE in expand_debug_expr with -mno-sse)
Jakub Jelinek [Fri, 14 May 2010 18:09:14 +0000 (20:09 +0200)]
re PR debug/44136 (ICE in expand_debug_expr with -mno-sse)

PR debug/44136
* cfgexpand.c (expand_debug_expr): If non-memory op0
has BLKmode, return NULL.

* gcc.dg/pr44136.c: New test.

From-SVN: r159400

14 years agoconfig.gcc: Add support for --with-cpu option for bdver1.
Harsha Jagasia [Fri, 14 May 2010 17:35:11 +0000 (17:35 +0000)]
config.gcc: Add support for --with-cpu option for bdver1.

2010-05-14  Harsha Jagasia  <harsha.jagasia@amd.com>

* config.gcc: Add support for --with-cpu option for bdver1.
* config/i386/i386.h (TARGET_BDVER1): New macro.
(ix86_tune_indices): Change SSE_UNALIGNED_MOVE_OPTIMAL
to SSE_UNALIGNED_LOAD_OPTIMAL. Add SSE_UNALIGNED_STORE_OPTIMAL.
(ix86_tune_features) :Change SSE_UNALIGNED_MOVE_OPTIMAL
to SSE_UNALIGNED_LOAD_OPTIMAL. Add SSE_UNALIGNED_STORE_OPTIMAL.
Add SSE_PACKED_SINGLE_INSN_OPTIMAL.
(TARGET_CPU_DEFAULT_NAMES): Add bdver1.
(processor_type): Add PROCESSOR_BDVER1.
* config/i386/i386.md: Add bdver1 as a new cpu attribute to match
processor_type in config/i386/i386.h.
Add check for TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL to emit
movaps <reg, reg> instead of movapd <reg, reg> when replacing
movsd <reg, reg> or movss <reg, reg> for SSE and AVX.
Add check for  TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL
to emit packed xor instead of packed double/packed integer
xor for SSE and AVX when moving a zero value.
* config/i386/sse.md: Add check for TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL
 to emit movaps instead of movapd/movdqa for SSE and AVX.
Add check for TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL to emit packed single
logical operations i.e and, or and xor instead of packed double logical
operations for SSE and AVX.
* config/i386/i386-c.c:
(ix86_target_macros_internal): Add PROCESSOR_BDVER1.
* config/i386/driver-i386.c: Turn on -mtune=native for BDVER1.
(has_fma4, has_xop): New.
* config/i386/i386.c (bdver1_cost): New variable.
(m_BDVER1): New macro.
(m_AMD_MULTIPLE): Add m_BDVER1.
(x86_tune_use_leave, x86_tune_push_memory, x86_tune_unroll_strlen,
 x86_tune_deep_branch_prediction, x86_tune_use_sahf, x86_tune_movx,
 x86_tune_use_simode_fiop, x86_tune_promote_qimode,
 x86_tune_add_esp_8, x86_tune_tune_sub_esp_4, x86_tune_sub_esp_8,
 x86_tune_integer_dfmode_moves, x86_tune_partial_reg_dependency,
 x86_tune_sse_partial_reg_dependency, x86_tune_sse_unaligned_load_optimal,
 x86_tune_sse_unaligned_store_optimal, x86_tune_sse_typeless_stores,
 x86_tune_memory_mismatch_stall, x86_tune_use_ffreep,
 x86_tune_inter_unit_moves, x86_tune_inter_unit_conversions,
 x86_tune_use_bt, x86_tune_pad_returns, x86_tune_slow_imul_imm32_mem,
 x86_tune_slow_imul_imm8, x86_tune_fuse_cmp_and_branch):
Enable/disable for bdver1.
(processor_target_table): Add bdver1_cost.
(cpu_names): Add bdver1.
(override_options): Set up PROCESSOR_BDVER1 for bdver1 entry in
 processor_alias_table.
(ix86_expand_vector_move_misalign): Change
 TARGET_SSE_UNALIGNED_MOVE_OPTIMAL to TARGET_SSE_UNALIGNED_LOAD_OPTIMAL.
 Check for TARGET_SSE_UNALIGNED_STORE_OPTIMAL.
 Check for TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL to emit movups instead
 of movupd/movdqu for SSE and AVX.
(ix86_tune_issue_rate): Add PROCESSOR_BDVER1.
(ix86_tune_adjust_cost): Add code for bdver1.
(standard_sse_constant_opcode): Add check for
TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL to emit packed single xor instead
of packed double xor for SSE and AVX.

From-SVN: r159399

14 years agotree-ssa-loop.prefetch.c (prune_ref_by_group_reuse): Cast abs() result to unsigned.
Pat Haugen [Fri, 14 May 2010 15:48:51 +0000 (15:48 +0000)]
tree-ssa-loop.prefetch.c (prune_ref_by_group_reuse): Cast abs() result to unsigned.

* tree-ssa-loop.prefetch.c (prune_ref_by_group_reuse): Cast abs()
result to unsigned.

From-SVN: r159397

14 years agotoplev.c (default_debug_hooks): Remove this variable.
Tristan Gingold [Fri, 14 May 2010 15:42:30 +0000 (15:42 +0000)]
toplev.c (default_debug_hooks): Remove this variable.

2010-05-14  Tristan Gingold  <gingold@adacore.com>

* toplev.c (default_debug_hooks): Remove this variable.
(process_options): Remove assignments to default_debug_hooks.

From-SVN: r159396

14 years agocp-lang.c (LANG_HOOKS_FOLD_OBJ_TYPE_REF): Remove both its undef and define.
Martin Jambor [Fri, 14 May 2010 13:08:45 +0000 (15:08 +0200)]
cp-lang.c (LANG_HOOKS_FOLD_OBJ_TYPE_REF): Remove both its undef and define.

2010-05-14  Martin Jambor  <mjambor@suse.cz>

* cp/cp-lang.c (LANG_HOOKS_FOLD_OBJ_TYPE_REF): Remove both its undef
and define.

* langhooks-def.h (LANG_HOOKS_FOLD_OBJ_TYPE_REF): Remove.
(LANG_HOOKS_INITIALIZER): Remove LANG_HOOKS_FOLD_OBJ_TYPE_REF.
* langhooks.h (struct lang_hooks_for_decls): Removed field
fold_obj_type_ref.
* tree.c (free_lang_data): Remove assignment to
lang_hooks.fold_obj_type_ref.
* tree.def (OBJ_TYPE_REF): Update comment.

From-SVN: r159393

14 years agore PR tree-optimization/44124 (valgrind reports invalid read while compiling compile...
Richard Guenther [Fri, 14 May 2010 12:36:28 +0000 (12:36 +0000)]
re PR tree-optimization/44124 (valgrind reports invalid read while compiling compile/pr34091.c)

2010-05-14  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/44124
* tree-ssa-sccvn.c (vn_nary_may_trap): Fix invalid memory access.

From-SVN: r159390

14 years agotrans.c (trans_code): Set backend locus early.
Jakub Jelinek [Fri, 14 May 2010 07:40:06 +0000 (09:40 +0200)]
trans.c (trans_code): Set backend locus early.

* trans.c (trans_code): Set backend locus early.
* trans-decl.c (gfc_get_fake_result_decl): Use source location
of the function instead of current input_location.

* gfortran.dg/gomp/pr44036-1.f90: Adjust.

From-SVN: r159388

14 years agoFix long lines
Eric Botcazou [Fri, 14 May 2010 06:23:16 +0000 (06:23 +0000)]
Fix long lines

From-SVN: r159386

14 years agocall.c (build_new_method_call): Change warning text.
Jonathan Wakely [Fri, 14 May 2010 05:32:48 +0000 (05:32 +0000)]
call.c (build_new_method_call): Change warning text.

2010-05-14  Jonathan Wakely  <jwakely.gcc@gmail.com>

* call.c (build_new_method_call): Change warning text.
* typeck2.c (build_functional_cast): Change error text.

From-SVN: r159385

14 years agore PR c++/30566 (-Wshadow warns about clashes between nested function parameters...
Shujing Zhao [Fri, 14 May 2010 03:19:32 +0000 (03:19 +0000)]
re PR c++/30566 (-Wshadow warns about clashes between nested function parameters in C++)

gcc/cp/
2010-05-14  Shujing Zhao  <pearly.zhao@oracle.com>

        PR c++/30566
        * name-lookup.c (pushdecl_maybe_friend): Avoid the warnings about
        shadowing the outer parameter or variables by the declaration of
        nested function in nested structure or class. Warn the shadowing by
        the declaration of nested lambda expression.

gcc/testsuite/
2010-05-14  Shujing Zhao  <pearly.zhao@oracle.com>

        PR c++/30566
        * testsuite/g++.dg/warn/Wshadow-4.C: Adjust.
        * testsuite/g++.dg/warn/Wshadow-5.C: New test.
        * testsuite/g++.dg/warn/Wshadow-6.C: New test.

From-SVN: r159383

14 years agore PR target/44075 (__builtin_eh_return miscompiled)
Alan Modra [Fri, 14 May 2010 00:35:16 +0000 (10:05 +0930)]
re PR target/44075 (__builtin_eh_return miscompiled)

PR target/44075
* config/rs6000/rs6000.c (struct machine_function): Reorder
fields for better packing.  Add lr_save_state.
(rs6000_ra_ever_killed): Return lr_save_state if set.
(rs6000_emit_eh_reg_restore): Set lr_save_state.

From-SVN: r159382

14 years agoDaily bump.
GCC Administrator [Fri, 14 May 2010 00:17:10 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r159381

14 years agotypeck.c (cp_build_array_ref): Factor out from...
Jason Merrill [Thu, 13 May 2010 20:53:38 +0000 (16:53 -0400)]
typeck.c (cp_build_array_ref): Factor out from...

* typeck.c (cp_build_array_ref): Factor out from...
(build_array_ref): ...here.  Drop complain parm.
(build_new_op): Adjust.
* class.c (build_vtbl_ref_1): Adjust.
* decl2.c (grok_array_decl): Adjust.
* cp-tree.h: Adjust prototypes.

From-SVN: r159377

14 years ago* decl.c (cp_finish_decl): Do not worry about used attribute.
Jan Hubicka [Thu, 13 May 2010 17:49:49 +0000 (19:49 +0200)]
* decl.c (cp_finish_decl): Do not worry about used attribute.

From-SVN: r159372

14 years agovarpool.c (decide_is_variable_needed): Drop code checking TREE_SYMBOL_REFERENCED.
Jan Hubicka [Thu, 13 May 2010 17:47:48 +0000 (19:47 +0200)]
varpool.c (decide_is_variable_needed): Drop code checking TREE_SYMBOL_REFERENCED.

* varpool.c (decide_is_variable_needed): Drop code checking
TREE_SYMBOL_REFERENCED.

From-SVN: r159371

14 years agofinal.c (output_addr_const): Do not call mark_decl_referenced.
Jan Hubicka [Thu, 13 May 2010 17:46:21 +0000 (19:46 +0200)]
final.c (output_addr_const): Do not call mark_decl_referenced.

* final.c (output_addr_const): Do not call mark_decl_referenced.
* cgraphunit.c (process_function_and_variable_attributes): Use
mark_needed_node dirrectly.
(assemble_thunk): Do not call mark_decl_referenced.

From-SVN: r159370

14 years ago* targhooks.c (default_mode_dependent_address_p): Cast 'addr' to rtx.
Anatoly Sokolov [Thu, 13 May 2010 16:29:00 +0000 (20:29 +0400)]
* targhooks.c (default_mode_dependent_address_p): Cast 'addr' to rtx.

From-SVN: r159369

14 years agoira-conflicts.c (print_allocno_conflicts): New function broken out from...
Jeff Law [Thu, 13 May 2010 14:46:29 +0000 (08:46 -0600)]
ira-conflicts.c (print_allocno_conflicts): New function broken out from...

* ira-conflicts.c (print_allocno_conflicts): New function broken out
from...
(print_conflicts): Call print_allocno_conflicts.

From-SVN: r159368

14 years agore PR middle-end/44104 (New test failures)
Jakub Jelinek [Thu, 13 May 2010 14:24:36 +0000 (16:24 +0200)]
re PR middle-end/44104 (New test failures)

PR debug/44104
* dwarf2out.c (modified_type_die): Don't dereference mod_type_die
if it is NULL.

From-SVN: r159367

14 years agore PR fortran/35779 (error pointer wrong in PARAMETER)
Daniel Franke [Thu, 13 May 2010 14:08:05 +0000 (10:08 -0400)]
re PR fortran/35779 (error pointer wrong in PARAMETER)

gcc/fortran/:
2010-05-13  Daniel Franke  <franke.daniel@gmail.com>

        PR fortran/35779
        * intrinsic.c (gfc_init_expr): Renamed to gfc_init_expr_flag.
        Updated all usages.
        * expr.c (init_flag): Removed; use gfc_init_expr_flag everywhere.
        * array.c (match_array_list): Pass on gfc_init_expr_flag when matching
        iterators.

gcc/testsuite/:
2010-05-13  Daniel Franke  <franke.daniel@gmail.com>

        PR fortran/35779
        * gfortran.dg/initialization_25.f90: New.

From-SVN: r159366

14 years agoconfig.gcc (i[34567]86-*-mingw* | x86_64-*-mingw*): Choose t-mingw-w64 or t-mingw...
Kai Tietz [Thu, 13 May 2010 12:36:59 +0000 (12:36 +0000)]
config.gcc (i[34567]86-*-mingw* | x86_64-*-mingw*): Choose t-mingw-w64 or t-mingw-w32 for multilib configuration.

2010-05-13  Kai Tietz  <kai.tietz@onevision.com>

        * config.gcc (i[34567]86-*-mingw* | x86_64-*-mingw*): Choose
        t-mingw-w64 or t-mingw-w32 for multilib configuration.
        * config/i386/t-mingw-w32: New.
        * config/i386/t-mingw-w64 (MULTILIB_OSDIRNAMES): Change lib64 to lib.

From-SVN: r159364

14 years agogimple.c (gimple_fold_obj_type_ref): Removed (a replacement moved to gimple-fold.c).
Martin Jambor [Thu, 13 May 2010 12:19:02 +0000 (14:19 +0200)]
gimple.c (gimple_fold_obj_type_ref): Removed (a replacement moved to gimple-fold.c).

2010-05-13  Martin Jambor  <mjambor@suse.cz>

* gimple.c (gimple_fold_obj_type_ref): Removed (a replacement moved to
gimple-fold.c).
* gimple-fold.c (get_base_binfo_for_type): New function.
(gimple_get_relevant_ref_binfo): Likewise.
(gimple_fold_obj_type_ref_known_binfo): Likewise.
(gimple_fold_obj_type_ref): Likewise.
(fold_gimple_call): Simplify condition for folding virtual calls
and call gimple_fold_obj_type_ref.
* gimple.h (gimple_get_relevant_ref_binfo): Declare.
(gimple_fold_obj_type_ref_known_binfo): Likewise.

* testsuite/g++.dg/otr-fold-1.C: New test.
* testsuite/g++.dg/otr-fold-2.C: New test.

From-SVN: r159362

14 years agore PR fortran/44036 (I can't declare an external function in an OMP shared statement.)
Jakub Jelinek [Thu, 13 May 2010 12:02:50 +0000 (14:02 +0200)]
re PR fortran/44036 (I can't declare an external function in an OMP shared statement.)

PR fortran/44036
* openmp.c (resolve_omp_clauses): Allow procedure pointers in clause
variable lists.
* trans-openmp.c (gfc_omp_privatize_by_reference): Don't privatize
by reference dummy procedures or non-dummy procedure pointers.
(gfc_omp_predetermined_sharing): Return
OMP_CLAUSE_DEFAULT_FIRSTPRIVATE for dummy procedures.

* gfortran.dg/gomp/pr44036-1.f90: New test.
* gfortran.dg/gomp/pr44036-2.f90: New test.
* gfortran.dg/gomp/pr44036-3.f90: New test.

From-SVN: r159361

14 years ago* config/rs6000/rs6000-protos.h
Andreas Schwab [Thu, 13 May 2010 11:39:28 +0000 (11:39 +0000)]
* config/rs6000/rs6000-protos.h
(rs6000_mode_dependent_address_ptr): Change argument to const_rtx.
* config/rs6000/rs6000.c (rs6000_mode_dependent_address)
(rs6000_debug_mode_dependent_address)
(rs6000_mode_dependent_address_ptr): Likewise.

From-SVN: r159359

14 years agoFix formatting nits
Eric Botcazou [Thu, 13 May 2010 11:29:29 +0000 (11:29 +0000)]
Fix formatting nits

From-SVN: r159358

14 years agore PR debug/43983 (var-tracking needlessly throws away location info for SRAed vars)
Jakub Jelinek [Thu, 13 May 2010 10:40:51 +0000 (12:40 +0200)]
re PR debug/43983 (var-tracking needlessly throws away location info for SRAed vars)

PR debug/43983
* var-tracking.c (track_expr_p): Allow tracking of variables optimized
by SRA.
* Makefile.in (dwarf2out.o): Depend on $(TREE_FLOW_H).
* tree-sra.c (create_access_replacement): Call unshare_expr before
passing expr to SET_DECL_DEBUG_EXPR, and remove any SSA_NAMEs from
it.
* dwarf2out.c: Include tree-flow.h.
(struct var_loc_node): Rename var_loc_note field to loc, add comment.
(size_of_loc_descr, output_loc_operands, output_loc_operands_raw):
Handle DW_OP_bit_piece.
(decl_piece_bitsize, decl_piece_varloc_ptr, decl_piece_node,
construct_piece_list, adjust_piece_list): New functions.
(add_var_loc_to_decl): Handle SRA optimized variables.
Adjust for var_loc_note to loc field renaming.
(dw_loc_list_1): For WANT_ADDRESS == 2 prefer DECL_MODE of decl
in VAR_LOCATION note.
(new_loc_descr_op_bit_piece): New function.
(dw_sra_loc_expr): New function.
(dw_loc_list): Use it.  Don't handle the last range after the
loop, handle it inside of the loop.  Adjust for var_loc_note
to loc field renaming.
(add_location_or_const_value_attribute): Only special case
single entry loc lists if loc is NOTE_P.  Adjust for
var_loc_note to loc field renaming.
(dwarf2out_var_location): Don't set newloc->var_loc_note
and newloc->next here.

* gcc.dg/guality/sra-1.c: New test.

From-SVN: r159357

14 years agotracebak.c (__gnat_backtrace): Mark top_stack with ATTRIBUTE_UNUSED.
Andreas Schwab [Thu, 13 May 2010 09:59:29 +0000 (09:59 +0000)]
tracebak.c (__gnat_backtrace): Mark top_stack with ATTRIBUTE_UNUSED.

* tracebak.c (__gnat_backtrace): Mark top_stack with
ATTRIBUTE_UNUSED.

From-SVN: r159356

14 years agocgraph.c (cgraph_mark_address_taken_node): No longer imply needed flag.
Jan Hubicka [Thu, 13 May 2010 06:13:46 +0000 (08:13 +0200)]
cgraph.c (cgraph_mark_address_taken_node): No longer imply needed flag.

* cgraph.c (cgraph_mark_address_taken_node): No longer imply needed flag.
* cgraph.h (cgraph_only_called_directly_p,
cgraph_can_remove_if_no_direct_calls_p): test address_taken flag.
(cgraph_can_remove_if_no_direct_calls_and_refs_p): New function.
* cgraphunit.c (cgraph_mark_functions_to_output): Test address_taken.
(assemble
* ipa.c (cgraph_remove_unreachable_nodes): Use
cgraph_can_remove_if_no_direct_calls_and_refs_p; clear address_taken flags.
* tree-inline.c (copy_bb): Check address_taken flag.
* tree-profile.c (tree_gen_ic_func_profiler): Check address_taken and
externally_visible flag.

* tree-ssa/unreachable.c: New test.

From-SVN: r159354

14 years agotypeck.c (build_array_ref): Take complain parm.
Jason Merrill [Thu, 13 May 2010 05:05:21 +0000 (01:05 -0400)]
typeck.c (build_array_ref): Take complain parm.

* typeck.c (build_array_ref): Take complain parm.
* cp-tree.h: Add it to prototype.
* call.c (build_new_op): Pass it.
* class.c (build_vtbl_ref): Pass it.
* decl2.c (grok_array_decl): Pass it.

From-SVN: r159351

14 years agore PR bootstrap/44048 (building without C++ enabled fails)
Jason Merrill [Thu, 13 May 2010 05:04:46 +0000 (01:04 -0400)]
re PR bootstrap/44048 (building without C++ enabled fails)

PR bootstrap/44048
PR target/44099
gcc/cp:
* cp-tree.def (NULLPTR_TYPE): Remove.
* cp-tree.h (NULLPTR_TYPE_P): New.
(SCALAR_TYPE_P): Use it.
(nullptr_type_node): New.
(cp_tree_index): Add CPTI_NULLPTR_TYPE.
* decl.c (cxx_init_decl_processing): Call record_builtin_type on
nullptr_type_node.
* cvt.c (ocp_convert): Use NULLPTR_TYPE_P instead of NULLPTR_TYPE.
* cxx-pretty-print.c (pp_cxx_constant): Likewise.
* error.c (dump_type, dump_type_prefix, dump_type_suffix): Likewise.
* mangle.c (write_type): Likewise.
* name-lookup.c (arg_assoc_type): Likewise.
* typeck.c (build_reinterpret_cast_1): Likewise.
* rtti.c (typeinfo_in_lib_p): Likewise.
(emit_support_tinfos): Remove local nullptr_type_node.
gcc:
* dbxout.c (dbxout_type): Remove NULLPTR_TYPE handling.
* sdbout.c (plain_type_1): Likewise.
* dwarf2out.c (is_base_type): Likewise.
(gen_type_die_with_usage): Likewise.  Generate
DW_TAG_unspecified_type for any LANG_TYPE.

From-SVN: r159350

14 years agocp-tree.h (UNKNOWN_TYPE): Remove.
Jason Merrill [Thu, 13 May 2010 05:04:14 +0000 (01:04 -0400)]
cp-tree.h (UNKNOWN_TYPE): Remove.

* cp-tree.h (UNKNOWN_TYPE): Remove.
* decl.c (cxx_init_decl_processing): Use LANG_TYPE instead.
* error.c (dumy_type, dump_type_prefix, dump_type_suffix): Likewise.
* typeck2.c (cxx_incomplete_type_diagnostic): Likewise.
* class.c (instantiate_type): Check unknown_type_node rather than
UNKNOWN_TYPE.
* name-lookup.c (maybe_push_decl): Likewise.
* rtti.c (get_tinfo_decl_dynamic): Likewise.
(get_typeid): Likewise.
* semantics.c (finish_offsetof): Likewise.

From-SVN: r159349

14 years agoDaily bump.
GCC Administrator [Thu, 13 May 2010 00:17:17 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r159348

14 years agoleak_test.c (main): Declare as int.
Uros Bizjak [Wed, 12 May 2010 22:45:35 +0000 (00:45 +0200)]
leak_test.c (main): Declare as int.

* tests/leak_test.c (main): Declare as int.  Return 0.
* tests/thread_leak_test.c (main): Ditto.
* tests/trace_test.c (main): Ditto.

From-SVN: r159344

14 years agocgraphbuild.c (build_cgraph_edges, [...]): Build indrect edges too.
Jan Hubicka [Wed, 12 May 2010 21:32:59 +0000 (23:32 +0200)]
cgraphbuild.c (build_cgraph_edges, [...]): Build indrect edges too.

* cgraphbuild.c (build_cgraph_edges, rebuild_cgraph_edges): Build
indrect edges too.
* cgraph.c (cgraph_create_indirect_edge): Take ecf_flags argument.
(cgraph_clone_edge): Update.
(cgraph_node_remove_callees): Remove indirect calls too.
* cgraph.h (cgraph_indirect_call_info): Add ecf_flags.
(cgraph_create_indirect_edge): Update prototype.
* ipa-reference.c (has_proper_scope_for_analysis): Rename to
is_proper_for_analysis.
(add_new_function, visited_nodes, function_insertion_hook_holder,
get_local_reference_vars_info, mark_address_taken, mark_address,
mark_load, mark_store, check_asm_memory_clobber, check_call,
scan_stmt_for_static_refs, scan_initializer_for_static_refs): Remove.
(ipa_init): Do not initialize visited_nodes;
function_insertion_hook_holder.
(analyze_variable): Rewrite.
(analyze_function): Rewrite.
(copy_local_bitmap): Remove.
(duplicate_node_dat): Do not duplicate local info.
(generate_summary): Simplify to only walk cgraph.
(write_node_summary_p, ipa_reference_write_summary,
ipa_reference_read_summary): Remove.
(propagate): Do not remove function insertion;
generate summary.
(pass_ipa_reference): NULLify summary handling fields.
* lto-cgraph.c (lto_output_edge): Output ecf_flags.
(input_edge): Input ecf_flags.
* ipa-prop.c (ipa_note_parm_call): Expect edge to be around.
(update_indirect_edges_after_inlining): Ignore edges with unknown
param.

From-SVN: r159343

14 years agoimplicit-zee.c: New file.
Sriraman Tallam [Wed, 12 May 2010 21:15:19 +0000 (21:15 +0000)]
implicit-zee.c: New file.

* implicit-zee.c: New file.
* tree-pass.h (pass_implicit_zee): Declare.
* passes.c (init_optimization_passes): Add zee pass.
* common.opt (fzee): New flag.
* timevar.def (TV_ZEE): Define.
* config/i386/i386.c (optimization_options): Turn on ZEE for level 2
and beyond.
* Makefile.in (implicit-zee.o): Add new build file.
* gcc.target/i386/zee.c: New file.

From-SVN: r159342

14 years agoc-common.c (sync_resolve_params): Remove write-only variable.
Kazu Hirata [Wed, 12 May 2010 19:51:37 +0000 (19:51 +0000)]
c-common.c (sync_resolve_params): Remove write-only variable.

* c-common.c (sync_resolve_params): Remove write-only variable.

Co-Authored-By: Nathan Froyd <froydnj@codesourcery.com>
From-SVN: r159340

14 years agotarget.h (struct gcc_target): Add mode_dependent_address_p field.
Anatoly Sokolov [Wed, 12 May 2010 19:08:31 +0000 (23:08 +0400)]
target.h (struct gcc_target): Add mode_dependent_address_p field.

* target.h (struct gcc_target): Add mode_dependent_address_p field.
* target-def.h (TARGET_MODE_DEPENDENT_ADDRESS_P): New.
(TARGET_INITIALIZER): Use TARGET_MODE_DEPENDENT_ADDRESS_P.
* targhooks.c (default_mode_dependent_address_p): New function.
* targhooks.h (default_mode_dependent_address_p): Declare function.
* doc/tm.texi (TARGET_MODE_DEPENDENT_ADDRESS_P): New.
(GO_IF_MODE_DEPENDENT_ADDRESS): Update.
* recog.c: (mode_dependent_address_p): Call mode_dependent_address_p
target hook. Change return type to bool.
* recog.h: (mode_dependent_address_p): Change return type to bool.

From-SVN: r159339

14 years ago* MAINTAINERS (Write After Approval): Add myself.
Sriraman Tallam [Wed, 12 May 2010 18:48:15 +0000 (18:48 +0000)]
* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r159338

14 years agore PR c++/20669 (Template candidates not listed in error message.)
Jason Merrill [Wed, 12 May 2010 17:34:55 +0000 (13:34 -0400)]
re PR c++/20669 (Template candidates not listed in error message.)

PR c++/20669
* call.c (add_template_candidate_real): If deduction fails, still
add the template as a non-viable candidate.
(equal_functions): Handle template candidates.
(print_z_candidate): Likewise.
(print_z_candidates): Likewise.
(build_new_function_call): Likewise.

From-SVN: r159335

14 years agocp-tree.h (LOOKUP_LIST_ONLY): New.
Jason Merrill [Wed, 12 May 2010 17:34:38 +0000 (13:34 -0400)]
cp-tree.h (LOOKUP_LIST_ONLY): New.

* cp-tree.h (LOOKUP_LIST_ONLY): New.
* call.c (add_candidates): Enforce it.
(build_new_method_call): Try non-list ctor if no viable list ctor.
(build_user_type_conversion_1): Likewise.

From-SVN: r159334

14 years agocall.c (add_candidates): Distinguish between type(x) and x.operator type().
Jason Merrill [Wed, 12 May 2010 17:34:28 +0000 (13:34 -0400)]
call.c (add_candidates): Distinguish between type(x) and x.operator type().

* call.c (add_candidates): Distinguish between type(x) and
x.operator type().
(convert_class_to_reference): Set LOOKUP_NO_CONVERSION.
(build_new_method_call): Give better error for conversion op.

From-SVN: r159333

14 years agocall.c (add_candidates): Add first_arg and return_type parms.
Jason Merrill [Wed, 12 May 2010 17:34:15 +0000 (13:34 -0400)]
call.c (add_candidates): Add first_arg and return_type parms.

* call.c (add_candidates): Add first_arg and return_type parms.
Add special constructor/conversion op handling.
(convert_class_to_reference): Use it.
(build_user_type_conversion_1): Likewise.
(build_op_call): Likewise.
(build_new_method_call): Likewise.
(build_new_op): Adjust.
(perform_overload_resolution): Adjust.

From-SVN: r159332

14 years agotree-mudflap.c (build_function_type_0, [...]): Remove.
Kazu Hirata [Wed, 12 May 2010 15:53:39 +0000 (15:53 +0000)]
tree-mudflap.c (build_function_type_0, [...]): Remove.

* tree-mudflap.c (build_function_type_0, build_function_type_1,
build_function_type_2, build_function_type_3): Remove.
(mudflap_init): Use build_function_type_list.

Co-Authored-By: Nathan Froyd <froydnj@codesourcery.com>
From-SVN: r159328

14 years agocoverage.c (build_fn_info_value): Call build_constructor instead of build_constructor...
Kazu Hirata [Wed, 12 May 2010 15:33:10 +0000 (15:33 +0000)]
coverage.c (build_fn_info_value): Call build_constructor instead of build_constructor_from_list.

* coverage.c (build_fn_info_value): Call build_constructor instead of
build_constructor_from_list.
(build_ctr_info_value): Likewise.
(build_gcov_info): Likewise.

Co-Authored-By: Nathan Froyd <froydnj@codesourcery.com>
From-SVN: r159326

14 years agotree.c (build_constructor): Compute TREE_CONSTANT for the resultant constructor.
Nathan Froyd [Wed, 12 May 2010 15:29:51 +0000 (15:29 +0000)]
tree.c (build_constructor): Compute TREE_CONSTANT for the resultant constructor.

* tree.c (build_constructor): Compute TREE_CONSTANT for the
resultant constructor.
(build_constructor_single): Don't set TREE_CONSTANT.
(build_constructor_from_list): Don't compute TREE_CONSTANT.

From-SVN: r159325

14 years agocgraph.h (struct varpool_node): Add aux.
Jan Hubicka [Wed, 12 May 2010 13:49:34 +0000 (15:49 +0200)]
cgraph.h (struct varpool_node): Add aux.

* cgraph.h (struct varpool_node): Add aux.
* varasm.c (find_decl_and_mark_needed): Force output of varpool nodes.
* varpool.c (varpool_remove_node): Do not remove initializer.
(varpool_reset_queue): Export.
(varpool_finalize_decl): Volatile vars are forced to be output.
* lto-symtab.c (lto_varpool_replace_node): Clear out initializer of
replaced decl.
* ipa.c (enqueue_cgraph_node, enqueue_varpool_node,
process_references, varpool_can_remove_if_no_refs): New functions.
(cgraph_remove_unreachable_nodes): Handle variables too.

From-SVN: r159321

14 years agoSupport AVX for cmpss/cmpsd.
H.J. Lu [Wed, 12 May 2010 12:48:02 +0000 (12:48 +0000)]
Support AVX for cmpss/cmpsd.

gcc/

2010-05-12  H.J. Lu  <hongjiu.lu@intel.com>

PR target/44088
* config/i386/sse.md (*avx_vmmaskcmp<mode>3): New.

gcc/testsuite/

2010-05-12  H.J. Lu  <hongjiu.lu@intel.com>

PR target/44088
* gcc.target/i386/avx-cmpsd-1.c: New.
* gcc.target/i386/avx-cmpsd-2.c: Likewise.
* gcc.target/i386/avx-cmpss-1.c: Likewise.
* gcc.target/i386/avx-cmpss-2.c: Likewise.
* gcc.target/i386/sse-cmpss-1.c: Likewise.
* gcc.target/i386/sse2-cmpsd-1.c: Likewise.

From-SVN: r159319

14 years agore PR middle-end/44085 (OpenMP - untied task accesses threadprivate - non-conforming...
Jakub Jelinek [Wed, 12 May 2010 12:11:00 +0000 (14:11 +0200)]
re PR middle-end/44085 (OpenMP - untied task accesses threadprivate - non-conforming but no msg)

PR middle-end/44085
* gimplify.c (enum omp_region_type): Add ORT_UNTIED_TASK,
change value of ORT_TASK.
(new_omp_context): Handle ORT_UNTIED_TASK like ORT_TASK.
(omp_notice_threadprivate_variable): New function.
(omp_notice_variable): Call it for threadprivate variables.
If enclosing ctx is a task, print enclosing task rather than
enclosing parallel.  Handle ORT_UNTIED_TASK like ORT_TASK.
(gimplify_omp_task): Pass ORT_UNTIED_TASK instead of ORT_TASK
if task has untied clause.

* gcc.dg/gomp/pr44085.c: New test.
* gfortran.dg/gomp/pr44085.f90: New test.

From-SVN: r159316

14 years agore PR debug/42278 (incorrect dwarf data gcc-4.4.2)
Jakub Jelinek [Wed, 12 May 2010 12:08:34 +0000 (14:08 +0200)]
re PR debug/42278 (incorrect dwarf data gcc-4.4.2)

PR debug/42278
* dwarf2out.c (base_type_die): Don't add name attribute here.
(modified_type_die): Instead of sizetype use
its underlying original type.  If a DW_TAG_base_type doesn't
have name added, add __unknown__.
(dwarf2out_imported_module_or_decl_1): Don't call base_type_die,
always call force_type_die instead.

From-SVN: r159315

14 years agoAdd this change, missed from the previous commit (but already in the Changelog).
Iain Sandoe [Wed, 12 May 2010 11:57:43 +0000 (11:57 +0000)]
Add this change, missed from the previous commit (but already in the Changelog).

From-SVN: r159314

14 years agodecl.c (gnat_to_gnu_entity): Tidy up code, improve comments and fix formatting nits.
Eric Botcazou [Wed, 12 May 2010 11:27:24 +0000 (11:27 +0000)]
decl.c (gnat_to_gnu_entity): Tidy up code, improve comments and fix formatting nits.

* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Type>: Tidy up
code, improve comments and fix formatting nits.

From-SVN: r159312

14 years agoAdd TLS checks to ObjC
Iain Sandoe [Wed, 12 May 2010 11:16:33 +0000 (11:16 +0000)]
Add TLS checks to ObjC

* objc-obj-c++-shared/Object1.m: New.
* objc.dg/torture: New directory.
* objc.dg/torture/tls: Ditto.
* objc.dg/tls: Ditto.
* objc.dg/torture/tls/trivial.m: New test.
* objc.dg/torture/tls/thr-init-2.m: New test.
* objc.dg/torture/tls/thr-init-3.m: New test.
* objc.dg/torture/tls/thr-init.m: New test.
* objc.dg/torture/tls/diag-1.m: New test.
* objc.dg/torture/tls/tls.exp: New.
* objc.dg/torture/trivial.m: New test.
* objc.dg/torture/dg-torture.exp: New.
* objc.dg/tls/diag-3.m: New test.
* objc.dg/tls/diag-4.m: New test.
* objc.dg/tls/diag-5.m: New test.
* objc.dg/tls/init-1.m: New test.
* objc.dg/tls/init-2.m: New test.
* objc.dg/tls/tls.exp: New.
* objc.dg/tls/diag-2.m: New test.
* lib/objc.exp: Respond to dg-additional-files.

From-SVN: r159311

14 years agotarghooks.c (default_stack_protect_guard): Avoid sharing RTL for __stack_chk_guard.
Maxim Kuvyrkov [Wed, 12 May 2010 11:05:19 +0000 (11:05 +0000)]
targhooks.c (default_stack_protect_guard): Avoid sharing RTL for __stack_chk_guard.

* targhooks.c (default_stack_protect_guard): Avoid sharing RTL
for __stack_chk_guard.

* gcc.target/m68k/20100512-1.c: New.

From-SVN: r159310

14 years agoutils.c (update_pointer_to): Return early if the old pointer already points to the...
Eric Botcazou [Wed, 12 May 2010 10:59:38 +0000 (10:59 +0000)]
utils.c (update_pointer_to): Return early if the old pointer already points to the new type.

* gcc-interface/utils.c (update_pointer_to): Return early if the old
pointer already points to the new type.  Chain the old pointer and its
variants at the end of new pointer's chain after updating them.

From-SVN: r159309

14 years ago* lto.c (materialize_cgraph): Revert my previous patch.
Jan Hubicka [Wed, 12 May 2010 10:05:16 +0000 (12:05 +0200)]
* lto.c (materialize_cgraph): Revert my previous patch.

From-SVN: r159305

14 years agoDaily bump.
GCC Administrator [Wed, 12 May 2010 00:17:18 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r159300

14 years agore PR c++/34272 (ICE with invalid template specialization)
Paolo Carlini [Tue, 11 May 2010 20:53:36 +0000 (20:53 +0000)]
re PR c++/34272 (ICE with invalid template specialization)

/cp
2010-05-11  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/34272
PR c++/43630
PR c++/34491
* pt.c (process_partial_specialization): Return error_mark_node
in case of unused template parameters in partial specialization.

/testsuite
2010-05-11  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/34272
PR c++/43630
PR c++/34491
* g++.dg/template/crash97.C: New.
* g++.dg/template/crash98.C: Likewise.
* g++.dg/template/crash99.C: Likewise.
* g++.dg/cpp0x/pr31439.C: Adjust.
* g++.dg/template/crash95.C: Likewise.

From-SVN: r159295

14 years agoc-opts.c (c_common_parse_file): If start_end_main_source_file, don't call start_sourc...
Jakub Jelinek [Tue, 11 May 2010 19:54:51 +0000 (21:54 +0200)]
c-opts.c (c_common_parse_file): If start_end_main_source_file, don't call start_source_file debug hook here...

* c-opts.c (c_common_parse_file): If start_end_main_source_file,
don't call start_source_file debug hook here...
(finish_options): ... but here, after outputting predefined and
command line defines and undefs.

From-SVN: r159293

14 years agolto-coff.c (IMAGE_FILE_MACHINE_ADM64): Rename to IMAGE_FILE_MACHINE_AMD64.
Kai Tietz [Tue, 11 May 2010 18:42:04 +0000 (18:42 +0000)]
lto-coff.c (IMAGE_FILE_MACHINE_ADM64): Rename to IMAGE_FILE_MACHINE_AMD64.

2010-05-11  Kai Tietz  <kai.tietz@onevision.com>

        * lto-coff.c (IMAGE_FILE_MACHINE_ADM64): Rename to
        IMAGE_FILE_MACHINE_AMD64.
        * lto-coff.c (IMAGE_FILE_MACHINE_ADM64): Likewise.

From-SVN: r159290

14 years agore PR middle-end/44071 (ICE with asm goto and __builtin_unreachable())
Jakub Jelinek [Tue, 11 May 2010 18:17:43 +0000 (20:17 +0200)]
re PR middle-end/44071 (ICE with asm goto and __builtin_unreachable())

PR middle-end/44071
* cfglayout.c (fixup_reorder_chain): Allow asm goto to have
no fallthru edge.
* cfgcleanup.c (try_optimize_cfg): When in cfglayout mode
optimizing away empty bb with no successors, move over its
footer chain to fallthru predecessor.
* cfgrtl.c (patch_jump_insn): Update also REG_LABEL_OPERAND.
(rtl_split_edge): For asm goto call patch_jump_insn even if
splitting fallthru edge.

* c-c++-common/asmgoto-4.c: New test.
* gcc.target/i386/pr44071.c: New test.

From-SVN: r159288

14 years agore PR c++/44059 (Static initializers executed more than once when using unique global...
Jakub Jelinek [Tue, 11 May 2010 18:14:19 +0000 (20:14 +0200)]
re PR c++/44059 (Static initializers executed more than once when using unique global symbols)

PR c++/44059
* config/elfos.h (ASM_DECLARE_OBJECT_NAME): Use qnu_unique_object
even for DECL_ONE_ONLY DECL_ARTIFICIAL !TREE_READONLY decls.
* config/alpha/elf.h (ASM_DECLARE_OBJECT_NAME): Likewise.
* dwarf2asm.c (dw2_output_indirect_constant_1): Set TREE_READONLY
on DW.ref.* decls.

From-SVN: r159287

14 years agore PR c++/44062 ((void)var; doesn't prevent 'set but not used' warning)
Jakub Jelinek [Tue, 11 May 2010 18:12:28 +0000 (20:12 +0200)]
re PR c++/44062 ((void)var; doesn't prevent 'set but not used' warning)

PR c++/44062
* c-parser.c (c_parser_expression): Mark LHS of a comma
expression as read if it is a decl, handled component or
COMPOUND_EXPR with that on the RHS.
* c-typeck.c (c_process_expr_stmt): Mark RHS of COMPOUND_EXPR
if it is a decl or handled component.

* semantics.c (finish_expr_stmt): Don't call mark_exp_read here...
* cvt.c (convert_to_void): ... but here.  If expr is a COMPOUND_EXPR,
look at its second operand.

* c-c++-common/Wunused-var-7.c: New test.
* g++.dg/warn/Wunused-var-9.C: New test.

From-SVN: r159286

14 years agore PR fortran/43711 (Unformitive error message for two NOWAIT in OpenMP directive)
Daniel Franke [Tue, 11 May 2010 16:45:17 +0000 (12:45 -0400)]
re PR fortran/43711 (Unformitive error message for two NOWAIT in OpenMP directive)

gcc/fortran/:
2010-05-11  Daniel Franke  <franke.daniel@gmail.com>

        PR fortran/43711
        * openmp.c (gfc_match_omp_taskwait): Report unexpected characters
        after OMP statement.
        (gfc_match_omp_critical): Likewise.
        (gfc_match_omp_flush): Likewise.
        (gfc_match_omp_workshare): Likewise.
        (gfc_match_omp_master): Likewise.
        (gfc_match_omp_ordered): Likewise.
        (gfc_match_omp_atomic): Likewise.
        (gfc_match_omp_barrier): Likewise.
        (gfc_match_omp_end_nowait): Likewise.

gcc/testsuite/:
2010-05-11  Daniel Franke  <franke.daniel@gmail.com>

        PR fortran/43711
        * gfortran.dg/gomp/pr43711.f90: New.

From-SVN: r159282

14 years agolto.c (lto_fixup_decls): Remove global var decls freeing here.
Jan Hubicka [Tue, 11 May 2010 16:27:31 +0000 (18:27 +0200)]
lto.c (lto_fixup_decls): Remove global var decls freeing here.

* lto.c (lto_fixup_decls): Remove global var decls freeing here.
(materialize_cgraph): Add it here.

From-SVN: r159281

14 years agolto-symtab.c (lto_symtab_free): New function.
Jan Hubicka [Tue, 11 May 2010 15:52:36 +0000 (17:52 +0200)]
lto-symtab.c (lto_symtab_free): New function.

* lto-symtab.c (lto_symtab_free): New function.
* lto-streamer.h (lto_symtab_free): Declare.

* lto-cgraph.c (reachable_from_other_partition_p): Export; do not assume
that if function is needed it is reachable.
(lto_output_node): See if it the function is reachable or referenced.
(output_cgraph): Update call of lto_output_node.
* lto-streamer.h (reachable_from_other_partition_p): Declare.

* lto.c (lto_fixup_decls): Free no longer needed lto_global_var_decls
vector.

* lto.c (lto_1_to_1_map): Remove some no longer needed checks.
(lto_promote_cross_file_statics): Never promote DECL_EXTERNAL;
use reachable_from_other_partition_p and
referenced_from_other_partition_p test.

From-SVN: r159280

14 years agocrtstuff.c (__JCR_LIST__, [...]): Mark as used.
Jan Hubicka [Tue, 11 May 2010 15:44:26 +0000 (17:44 +0200)]
crtstuff.c (__JCR_LIST__, [...]): Mark as used.

* crtstuff.c (__JCR_LIST__, __DTOR_END__, __JCR_END__, __FRAME_END__):
Mark as used.

From-SVN: r159279

14 years agore PR fortran/31820 (Warning if case label value exceeds maximum value for type)
Daniel Franke [Tue, 11 May 2010 15:43:16 +0000 (11:43 -0400)]
re PR fortran/31820 (Warning if case label value exceeds maximum value for type)

gcc/fortran/:
2010-05-11  Daniel Franke  <franke.daniel@gmail.com>

PR fortran/31820
* resolve.c (validate_case_label_expr): Removed FIXME.
(resolve_select): Raise default warning on case labels out of range
of the case expression.

gcc/testsuite/:
2010-05-11  Daniel Franke  <franke.daniel@gmail.com>

PR fortran/31820
* gfortran.dg/select_5.f90: Updated.

From-SVN: r159278

14 years agore PR tree-optimization/44063 (build broken for libgcc cris-elf, ICE in cgraph_estima...
Jan Hubicka [Tue, 11 May 2010 15:15:48 +0000 (17:15 +0200)]
re PR tree-optimization/44063 (build broken for libgcc cris-elf, ICE in cgraph_estimate_size_after_inlining, at ipa-inline)

PR tree-optimize/44063
* ipa-inline.c (cgraph_edge_badness): Move always inlines to top of queue.
(cgraph_decide_inlining_of_small_function): Skip check when disrgarding
limits.
(estimate_function_body_sizes): Compute sizes even when disregarding.
* gcc.c-torture/compile/pr44063.c: New testcase.

From-SVN: r159273

14 years agocollect2.c (maybe_lto_object_file): Add x64-coff magic and check.
Kai Tietz [Tue, 11 May 2010 15:06:38 +0000 (15:06 +0000)]
collect2.c (maybe_lto_object_file): Add x64-coff magic and check.

2010-05-11  Kai Tietz  <kai.tietz@onevision.com>

        * collect2.c (maybe_lto_object_file): Add x64-coff magic and check.

From-SVN: r159272

14 years agolto-coff.c (validate_file): Add x64-coff support.
Kai Tietz [Tue, 11 May 2010 15:05:36 +0000 (15:05 +0000)]
lto-coff.c (validate_file): Add x64-coff support.

2010-05-11  Kai Tietz  <kai.tietz@onevision.com>

        * lto-coff.c (validate_file): Add x64-coff support.
        * lto-coff.h (IMAGE_FILE_MACHINE_ADM64): New.
        (COFF_KNOWN_MACHINES): Add IMAGE_FILE_MACHINE_ADM64.
        * lto-lang.c (lto_build_c_type_nodes): Add check for
        'long long unsigned int' for x64-windows.
        (lto_init): Likewise.

From-SVN: r159271

14 years agore PR libstdc++/43259 (ext/profile/all.cc fails on Solaris)
Silvius Rus [Tue, 11 May 2010 10:23:20 +0000 (10:23 +0000)]
re PR libstdc++/43259 (ext/profile/all.cc fails on Solaris)

2010-05-11  Silvius Rus  <silvius.rus@gmail.com>

PR libstdc++/43259
* include/profile/impl/profiler_algos.h: New.
* include/Makefile.am: Add.
* include/Makefile.in: Regenerate.
* include/profile/impl/profiler.h
(_GLIBCXX_PROFILE_DEFINE_UNINIT_DATA): Add.
* include/profile/impl/profiler_trace.h
(__mutex_t, __lock, __unlock): Remove.
(__lock_object_table, __lock_stack_table): Remove. Replace uses with
calls to __gnu_cxx::__mutex::lock.
(__unlock_object_table, __unlock_stack_table): Remove. Replace uses
with calls to __gnu_cxx::__mutex::unlock.
(__warn, __cost_factor_writer, __cost_factor_setter): Add.
* testsuite/ext/profile/profiler_algos.cc: New.

From-SVN: r159269

14 years agore PR libstdc++/43259 (ext/profile/all.cc fails on Solaris)
Silvius Rus [Tue, 11 May 2010 10:22:18 +0000 (10:22 +0000)]
re PR libstdc++/43259 (ext/profile/all.cc fails on Solaris)

2010-05-11  Silvius Rus  <silvius.rus@gmail.com>

PR libstdc++/43259
* include/profile/impl/profiler_algos.h: New.
* include/Makefile.am: Add.
* include/Makefile.in: Regenerate.
* include/profile/impl/profiler.h
(_GLIBCXX_PROFILE_DEFINE_UNINIT_DATA): Add.
* include/profile/impl/profiler_trace.h
(__mutex_t, __lock, __unlock): Remove.
(__lock_object_table, __lock_stack_table): Remove. Replace uses with
calls to __gnu_cxx::__mutex::lock.
(__unlock_object_table, __unlock_stack_table): Remove. Replace uses
with calls to __gnu_cxx::__mutex::unlock.
(__warn, __cost_factor_writer, __cost_factor_setter): Add.
* testsuite/ext/profile/profiler_algos.cc: New.

From-SVN: r159268

14 years agolto-cgraph.c (output_cgraph): Remove loop adding all varpool nodes into every boundary.
Jan Hubicka [Tue, 11 May 2010 10:17:42 +0000 (12:17 +0200)]
lto-cgraph.c (output_cgraph): Remove loop adding all varpool nodes into every boundary.

* lto-cgraph.c (output_cgraph): Remove loop adding all varpool nodes
into every boundary.

From-SVN: r159267

14 years ago* matrix-reorg.c (matrix_reorg): Rebuild edges.
Jan Hubicka [Tue, 11 May 2010 08:27:29 +0000 (10:27 +0200)]
* matrix-reorg.c (matrix_reorg): Rebuild edges.

From-SVN: r159263

14 years agolto-streamer.h (struct lto_streamer_cache_d): Nodes vector is in heap.
Jan Hubicka [Tue, 11 May 2010 08:24:08 +0000 (10:24 +0200)]
lto-streamer.h (struct lto_streamer_cache_d): Nodes vector is in heap.

* lto-streamer.h (struct lto_streamer_cache_d): Nodes vector is in
heap.

From-SVN: r159262

14 years agolto-streamer.c (lto_streamer_cache_add_to_node_array, [...]): Put nodes into heap.
Jan Hubicka [Tue, 11 May 2010 08:20:44 +0000 (10:20 +0200)]
lto-streamer.c (lto_streamer_cache_add_to_node_array, [...]): Put nodes into heap.

* lto-streamer.c (lto_streamer_cache_add_to_node_array,
lto_streamer_cache_delete): Put nodes into heap.
(struct lto_streamer_cache_d): Nodes vector is in heap.

From-SVN: r159261

14 years agocgraph.c (cgraph_mark_reachable_node): Accept references to optimized out extern...
Jan Hubicka [Tue, 11 May 2010 08:19:28 +0000 (10:19 +0200)]
cgraph.c (cgraph_mark_reachable_node): Accept references to optimized out extern inlines.

* cgraph.c (cgraph_mark_reachable_node): Accept references to optimized
out extern inlines.

From-SVN: r159260

14 years agocgraphbuild.c (cgraph_rebuild_references): New.
Jan Hubicka [Tue, 11 May 2010 08:14:50 +0000 (10:14 +0200)]
cgraphbuild.c (cgraph_rebuild_references): New.

* cgraphbuild.c (cgraph_rebuild_references): New.
(cgraph_mark_reachable_node): Accept references to optimized out
extern inlines.
* cgraph.h (cgraph_rebuild_references): Declare.
* tree-inline.c (tree_function_versioning): Use it.
* ipa-struct-reorg.c (do_reorg_for_func): Likewise.

From-SVN: r159259

14 years agocgraph.c: Include ipa-utils.h
Jan Hubicka [Tue, 11 May 2010 08:12:07 +0000 (10:12 +0200)]
cgraph.c: Include ipa-utils.h

* cgraph.c: Include ipa-utils.h
(cgraph_create_virtual_clone): Update references.
* Makefile.in (cgraph.o): Add dependency at ipa-utils.h

From-SVN: r159258

14 years agotree-ssa-loop-prefetch.c (prune_ref_by_group_reuse): Reset prefetch_before to PREFETC...
Christian Borntraeger [Tue, 11 May 2010 07:29:59 +0000 (07:29 +0000)]
tree-ssa-loop-prefetch.c (prune_ref_by_group_reuse): Reset prefetch_before to PREFETCH_ALL if to accesses "meet" beyond cache size.

2010-05-11  Christian Borntraeger  <borntraeger@de.ibm.com>

        * tree-ssa-loop-prefetch.c (prune_ref_by_group_reuse): Reset
prefetch_before to PREFETCH_ALL if to accesses "meet" beyond
cache size.

From-SVN: r159257

14 years agotree-ssa-loop-prefetch.c: Add debug for dropped prefetches.
Christian Borntraeger [Tue, 11 May 2010 07:28:42 +0000 (07:28 +0000)]
tree-ssa-loop-prefetch.c: Add debug for dropped prefetches.

2010-05-11  Christian Borntraeger  <borntraeger@de.ibm.com>

        * tree-ssa-loop-prefetch.c: Add debug for dropped prefetches.

From-SVN: r159256

14 years agogcc.c (execute): For -### don't quote arguments that contain just alphanumerics and...
Jakub Jelinek [Tue, 11 May 2010 06:50:24 +0000 (08:50 +0200)]
gcc.c (execute): For -### don't quote arguments that contain just alphanumerics and _/-.

* gcc.c (execute): For -### don't quote arguments that
contain just alphanumerics and _/-. characters.
* doc/invoke.texi: Document that change for -###.

From-SVN: r159255

14 years agore PR debug/44023 (-fcompare-debug failure (length) for alphaev67 target (bootstrap...
Jakub Jelinek [Tue, 11 May 2010 06:48:15 +0000 (08:48 +0200)]
re PR debug/44023 (-fcompare-debug failure (length) for alphaev67 target (bootstrap failure))

PR debug/44023
* df-problems.c (struct dead_debug): Add to_rescan field.
(dead_debug_init): Clear to_rescan field.
(dead_debug_finish): Rescan all debug insns in to_rescan
bitmap and free the bitmap.
(dead_debug_insert_before): Instead of rescanning debug insns
immediately queue their rescanning until dead_debug_finish.
(df_note_bb_compute): After dead_debug_add do continue instead
of break.

* gcc.dg/pr44023.c: New test.

From-SVN: r159254

14 years agoDaily bump.
GCC Administrator [Tue, 11 May 2010 00:16:59 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r159251

14 years agoexp_disp.adb (Make_Tags): Mark the imported view of dispatch tables built for interfaces.
Eric Botcazou [Mon, 10 May 2010 21:52:45 +0000 (21:52 +0000)]
exp_disp.adb (Make_Tags): Mark the imported view of dispatch tables built for interfaces.

* exp_disp.adb (Make_Tags): Mark the imported view of dispatch tables
built for interfaces.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Variable>: Use
imported_p instead of Is_Imported when considering constants.
Do not promote alignment of exported objects.
<E_Record_Subtype>: Strip all suffixes for dispatch table entities.

From-SVN: r159247

14 years agore PR c++/44017 (ICE with template hierarchy)
Jason Merrill [Mon, 10 May 2010 21:20:47 +0000 (17:20 -0400)]
re PR c++/44017 (ICE with template hierarchy)

PR c++/44017
* semantics.c (baselink_for_fns): Revert earlier change.

From-SVN: r159246

14 years agore PR c++/44045 (initialization of array of shared_ptr's with initializer list causes...
Jason Merrill [Mon, 10 May 2010 18:37:56 +0000 (14:37 -0400)]
re PR c++/44045 (initialization of array of shared_ptr's with initializer list causes compiler segfault)

PR c++/44045
* typeck.c (cp_build_modify_expr): Complain about assignment to
array from init list.

From-SVN: r159243

14 years agore PR c++/43719 (uninitialized const member incorrectly accepted, using an array)
Fabien ChĂȘne [Mon, 10 May 2010 18:37:45 +0000 (18:37 +0000)]
re PR c++/43719 (uninitialized const member incorrectly accepted, using an array)

PR c++/43719
* decl.c (check_initializer): strip array type before checking for
uninitialized const or ref members.

From-SVN: r159242

14 years agore PR debug/44028 (-fcompare-debug failure (length) with -O3 -fsched-pressure -fsched...
Jakub Jelinek [Mon, 10 May 2010 18:28:03 +0000 (20:28 +0200)]
re PR debug/44028 (-fcompare-debug failure (length) with -O3 -fsched-pressure -fschedule-insns)

PR debug/44028
* haifa-sched.c (schedule_insn): When clearing INSN_VAR_LOCATION_LOC,
clear also INSN_REG_USE_LIST.

* gcc.dg/pr44028.c: New test.

From-SVN: r159240