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
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
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
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
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
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
Eric Botcazou [Fri, 14 May 2010 06:23:16 +0000 (06:23 +0000)]
Fix long lines
From-SVN: r159386
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
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
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
GCC Administrator [Fri, 14 May 2010 00:17:10 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r159381
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
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
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
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
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
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
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
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
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
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
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
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
Eric Botcazou [Thu, 13 May 2010 11:29:29 +0000 (11:29 +0000)]
Fix formatting nits
From-SVN: r159358
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
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
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
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
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
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
GCC Administrator [Thu, 13 May 2010 00:17:17 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r159348
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
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
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
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
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
Sriraman Tallam [Wed, 12 May 2010 18:48:15 +0000 (18:48 +0000)]
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r159338
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Jan Hubicka [Wed, 12 May 2010 10:05:16 +0000 (12:05 +0200)]
* lto.c (materialize_cgraph): Revert my previous patch.
From-SVN: r159305
GCC Administrator [Wed, 12 May 2010 00:17:18 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r159300
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Jan Hubicka [Tue, 11 May 2010 08:27:29 +0000 (10:27 +0200)]
* matrix-reorg.c (matrix_reorg): Rebuild edges.
From-SVN: r159263
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
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
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
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
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
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
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
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
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
GCC Administrator [Tue, 11 May 2010 00:16:59 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r159251
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
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
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
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
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
Rainer Orth [Mon, 10 May 2010 18:26:12 +0000 (18:26 +0000)]
* config/mips/mips.c (TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P): Undef.
From-SVN: r159239
Daniel Franke [Mon, 10 May 2010 17:10:53 +0000 (13:10 -0400)]
re PR fortran/27866 (Warn when casting, e.g. assigning a double precision to a real)
gcc/fortran/:
2010-05-10 Daniel Franke <franke.daniel@gmail.com>
PR fortran/27866
PR fortran/35003
PR fortran/42809
* intrinsic.c (gfc_convert_type_warn): Be more discriminative
about conversion warnings.
gcc/testsuite/:
2010-05-08 Daniel Franke <franke.daniel@gmail.com>
PR fortran/27866
PR fortran/35003
PR fortran/42809
* gfortran.dg/array_constructor_type_17.f03: Updated match string.
* gfortran.dg/warn_conversion.f90: New.
From-SVN: r159238
Jan Hubicka [Mon, 10 May 2010 16:26:26 +0000 (18:26 +0200)]
* lto-stramer-out.c (produce_asm_for_decls): Correct accidentally commited change.
From-SVN: r159234
Jan Hubicka [Mon, 10 May 2010 16:13:52 +0000 (18:13 +0200)]
passes.c (ipa_write_summaries_1, [...]): Allocate encoders.
* passes.c (ipa_write_summaries_1, ipa_write_optimization_summaries): Allocate
encoders.
* lto-section-out.c (lto_new_out_decl_state): Do not allocate it here.
* lto-streamer.c (lto_streamer_cache_insert_1): Use alloc pool.
(lto_streamer_cache_create): Init alloc pool.
(lto_streamer_cache_delete): Free alloc pool.
* lto-streamer.h: Include alloc pool.
(lto_streamer_cache_d): Use alloc pool.
* lto-stramer-out.c (produce_asm_for_decls): Delete fn_out_states.
From-SVN: r159230
Jan Hubicka [Mon, 10 May 2010 16:00:40 +0000 (18:00 +0200)]
Makefile.in (cgraphbuild.o): Add dependency on except.h.
* Makefile.in (cgraphbuild.o): Add dependency on except.h.
* cgraphbuild.c: Include except.h
(record_type_list, record_eh_tables): New function.
(build_cgraph_edges, rebuild_cgraph_edges): Use it.
From-SVN: r159229
Jan Hubicka [Mon, 10 May 2010 15:53:04 +0000 (17:53 +0200)]
crtstuff.c (force_to_data, [...]): Attribute as used rather than unused.
* crtstuff.c (force_to_data, __do_global_dtors_aux_fini_array_entry,
__frame_dummy_init_array_entry, force_to_data): Attribute as used
rather than unused.
From-SVN: r159228
Uros Bizjak [Mon, 10 May 2010 15:23:29 +0000 (17:23 +0200)]
ChangeLog: Fix whitespace.
* ChangeLog: Fix whitespace.
* testsuite/ChangeLog: Ditto.
From-SVN: r159227
Michael Matz [Mon, 10 May 2010 14:31:37 +0000 (14:31 +0000)]
tree-ssa-reassoc.c (undistribute_ops_list): Use create_tmp_reg.
* tree-ssa-reassoc.c (undistribute_ops_list): Use create_tmp_reg.
(can_reassociate_p): Use FLOAT_TYPE_P.
* tree-vectorizer.h (vect_is_simple_reduction): Rename to ...
(vect_force_simple_reduction): ... this.
* tree-parloops.c (gather_scalar_reductions): Use
vect_force_simple_reduction.
* tree-vect-loop.c (vect_is_simple_reduction_1): Rename from
vect_is_simple_reduction, add modify argument, if true rewrite
"a-b" into "a+(-b)".
(vect_is_simple_reduction, vect_force_simple_reduction): New
functions.
(vect_analyze_scalar_cycles_1): Use vect_force_simple_reduction.
testsuite/
* gcc.dg/vect/fast-math-vect-reduc-8.c: New test.
From-SVN: r159226
H.J. Lu [Mon, 10 May 2010 14:02:43 +0000 (07:02 -0700)]
Nullify regno_allocno_map of the removed allocno.
gcc/
2010-05-10 H.J. Lu<hongjiu.lu@intel.com>
Vladimir Makarov<vmakarov@redhat.com>
PR rtl-optimization/44012
* ira-build.c (remove_unnecessary_allocnos): Nullify
regno_allocno_map of the removed allocno.
gcc/testsuite/
2010-05-10 H.J. Lu <hongjiu.lu@intel.com>
PR rtl-optimization/44012
* gcc.dg/pr44012.c: New.
From-SVN: r159223
Rainer Orth [Mon, 10 May 2010 13:45:23 +0000 (13:45 +0000)]
lto.exp (lto_prune_vis_warns): Renamed to lto_prune_warns.
* lib/lto.exp (lto_prune_vis_warns): Renamed to lto_prune_warns.
Log text on entry and exit.
Prune Sun ld warnings for common symbols with differing sizes.
(lto-link-and-maybe-run): Change caller.
From-SVN: r159222
Rainer Orth [Mon, 10 May 2010 13:36:36 +0000 (13:36 +0000)]
configure.ac (gcc_cv_ld_eh_gc_sections): Redirect objdump errors to /dev/null.
* configure.ac (gcc_cv_ld_eh_gc_sections): Redirect objdump errors
to /dev/null.
* configure: Regenerate.
From-SVN: r159220
Rainer Orth [Mon, 10 May 2010 13:01:58 +0000 (13:01 +0000)]
sol2.c (solaris_assemble_visibility): Declare decl, vis unused.
* config/sol2.c (solaris_assemble_visibility): Declare decl, vis
unused.
Define visibility_types, name, type inside HAVE_GAS_HIDDEN.
* configure.ac (gcc_cv_ld_hidden): Explain stages of visibility
support in Sun ld.
* configure: Regenerate.
From-SVN: r159218