- 06 May, 2010 16 commits
-
-
2010-05-06 Paolo Carlini <paolo.carlini@oracle.com> PR c++/40406 * g++.dg/template/crash96.C: New. From-SVN: r159112
Paolo Carlini committed -
PR target/43888 * config/i386/winnt.c (i386_pe_binds_local_p): Tweak weak symbol handling to still return true for x64 targets. From-SVN: r159111
Dave Korn committed -
From-SVN: r159110
Maxim Kuvyrkov committed -
re PR tree-optimization/43791 (kernel/rtmutex.c:1138:1: internal compiler error: in cgraph_decide_inlining_of_small_functions, at ipa-inline.c:1009) PR tree-optimization/43791 * ipa-inline.c (update_caller_keys): Remove bogus disregard_inline_limits check. * gcc.c-torture/compile/pr43791.c: New file. From-SVN: r159108
Jan Hubicka committed -
PR tree-optimization/43984 * tree-ssa-pre.c (inserted_phi_names): Remove. (inserted_exprs): Change to bitmap. (create_expression_by_pieces): Set bits, don't append to vector. (insert_into_preds_of_block): Don't handle inserted_phi_names. (eliminate): Don't look at inserted_phi_names, remove deleted insns from inserted_exprs. (remove_dead_inserted_code): Adjust to use bitmaps instead of vectors. (init_pre, fini_pre): Allocate and free bitmaps. (execute_pre): Insert insns on edges before elimination. testsuite/ * gfortran.dg/pr43984.f90: New test. From-SVN: r159106
Michael Matz committed -
2010-05-06 H.J. Lu <hongjiu.lu@intel.com> * lto-lang.c (lto_handle_option): Add argument kind. From-SVN: r159105
H.J. Lu committed -
From-SVN: r159103
Maxim Kuvyrkov committed -
2010-05-06 Manuel López-Ibáñez <manu@gcc.gnu.org> PR 40989 * doc/invoke.texi (Wimplicit): Document as C only. * opts.c (common_handle_option): Add argument kind. (handle_option): Rename as read_cmdline_option. Factor out code to... (handle_option): ... here. New. (handle_options): Rename as read_cmdline_options. (decode_options): Update call. (set_option): Use option index instead of option pointer. Classify diagnostics correctly. (enable_warning_as_error): Call handle_option. * opts.h (set_option): Update declaration. (handle_option): Declare. * langhooks.h (struct lang_hooks): Add argument kind to handle_option. * c.opt (Wimplicit,Wimplicit-int): Initialize to -1. * c-opts.c (set_Wimplicit): Delete. (c_family_lang_mask): New static constant. (c_common_handle_option): Add argument kind. Use handle_option instead of set_Wimplicit. (c_common_post_options): warn_implicit and warn_implicit_int are disabled by default. * c-common.c (warn_implicit): Do not define here. * c-common.h (warn_implicit): Do not declare here. (c_common_handle_option): Update declaration. * lto-opts.c (lto_reissue_options): Update call to set_option. java/ * lang.c (java_handle_option): Add argument kind. fortran/ * options.c (gfc_handle_option): Add argument kind. * gfortran.h (gfc_handle_option): Update declaration. ada/ * gcc-interface/misc.c (gnat_handle_option): Add argument kind. testsuite/ * gcc.dg/pr40989.c: New. From-SVN: r159102
Manuel López-Ibáñez committed -
2010-05-06 Richard Guenther <rguenther@suse.de> PR tree-optimization/43571 * domwalk.c (walk_dominator_tree): Walk the dominator sons in more optimal order. From-SVN: r159100
Richard Guenther committed -
2010-05-06 Richard Guenther <rguenther@suse.de> PR tree-optimization/43934 * tree-ssa-loop-im.c (movement_possibility): Handle PHI nodes. (stmt_cost): Likewise. (extract_true_false_args_from_phi): New helper. (determine_max_movement): For PHI nodes verify we can hoist them and compute their cost. (determine_invariantness_stmt): Handle PHI nodes. (move_computations_stmt): Likewise. Hoist PHI nodes in if-converted form using COND_EXPRs. (move_computations): Return TODO_cleanup_cfg if we hoisted PHI nodes. (tree_ssa_lim): Likewise. * tree-flow.h (tree_ssa_lim): Adjust prototype. * tree-ssa-loop.c (tree_ssa_loop_im): Return todo. * gcc.dg/tree-ssa/ssa-lim-9.c: New testcase. From-SVN: r159099
Richard Guenther committed -
2010-05-06 Richard Guenther <rguenther@suse.de> PR tree-optimization/43987 * tree-ssa-structalias.c (could_have_pointers): For possibly address-taken variables force pointers to be recorded. (create_variable_info_for_1): Likewise. (push_fields_onto_fieldstack): Pass in wheter all fields must have pointers. (find_func_aliases): Query types instead of vars whether they contain pointers where appropriate. * gcc.c-torture/execute/pr43987.c: New testcase. * gcc.dg/torture/pta-escape-1.c: Adjust. * gcc.dg/tree-ssa/pta-escape-1.c: Likewise. * gcc.dg/tree-ssa/pta-escape-2.c: Likewise. * gcc.dg/tree-ssa/pta-escape-3.c: Likewise. * gcc.dg/ipa/ipa-pta-11.c: Likewise. From-SVN: r159098
Richard Guenther committed -
* cgraphbuild.c (record_reference_ctx): Add varpool_node. (record_reference, mark_address, mark_load, mark_store): Record references. (record_references_in_initializer): Update call of record_references. (rebuild_cgraph_edges): Remove all references before rebuiding. * cgraph.c (cgraph_create_node): Clear ref list. (cgraph_remove_node): Remove references. (dump_cgraph_node): Dump references. (cgraph_clone_node): Clone references. * cgraph.h: Include ipa-ref.h and ipa-ref-inline.h (struct cgraph_node, varpool_node): Add ref_lst. * ipa-ref.c: New file. * ipa-ref.h: New file. * ipa-ref-inline.h: New file. * lto-cgraph.c (output_varpool): Take cgrag node set argument. (referenced_from_other_partition_p): New function. (lto_output_varpool_node): Take set arugment; call referenced_from_other_partition. (lto_output_ref): New. (add_references): New. (output_refs): New. (output_cgraph): Compute boundary based on references; output refs. (output_varpool): Accept cgraph_node_set argument. (input_ref): New. (input_refs): New. (input_cgraph): Call input_refs. * lto-section-in.c (lto_section_name): Add refs. * Makefile.in: (cgraph.h): Include ipa-ref.h and ipa-ref-inline.h (ipa-ref.o): New file. * varpool.c (varpool_node): Clear ipa ref list. (varpool_remove_node): Remove references. (dump_varpool_node): Dump references. (varpool_assemble_decl): Only compile finalized ones. (varpool_extra_name_alias): Initialize ref list. * lto-streamer.c (lto-get_section_name): Add .refs section. * lto-streamer.h (lto_section_type): Add LTO_section_refs. (referenced_from_other_partition_p): Declared. From-SVN: r159097
Jan Hubicka committed -
gcc/cp/ChangeLog: PR 18624 * cp-tree.h (mark_exp_read, mark_rvalue_use, mark_lvalue_use, mark_type_use): Declare ... * expr.c (mark_exp_read, mark_rvalue_use, mark_lvalue_use, mark_type_use): ... new fns. * typeck.c (cxx_sizeof_expr, cxx_alignof_expr): Call mark_type_use. (perform_integral_promotions): Call mark_rvalue_use. (cp_build_unary_op): Call mark_lvalue_use. (decay_conversion): Update comment. Call mark_lvalue. * decl.c (unused_but_set_errorcount): New variable. (poplevel): Issue -Wunused-but-set-variable diagnostics. (duplicate_decls): Merge DECL_READ_P flags. (start_cleanup_fn): Set DECL_READ_P flag. (finish_function): Issue -Wunused-but-set-parameter diagnostics. * tree.c (rvalue): Call mark_rvalue_use. * pt.c (convert_nontype_argument): Likewise. * semantics.c (finish_typeof, finish_decltype_type): Call mark_type_use. (finish_asm_stmt): Call mark_lvalue_use. (finish_expr_stmt): Call mark_exp_read. * call.c (convert_like_real) <ck_identity, ck_user>: Call mark_rvalue_use. (build_x_va_arg): Call mark_lvalue_use. (build_over_call): Call mark_type_use. * init.c (build_new, build_delete): Call mark_value_use. * rtti.c (build_typeid): Call mark_lvalue_use or mark_type_use. (build_dynamic_cast_1): call mark_lvalue_use or mark_rvalue_use. gcc/testsuite/ChangeLog: PR 18624 * g++.dg/warn/Wunused-7.C: Add dg-warning. * g++.dg/template/sfinae16.C: Likewise. * gcc.dg/Wunused-var-1.c: Moved to... * c-c++-common/Wunused-var-1.c: ...here. New test. * gcc.dg/Wunused-var-2.c: Moved to... * c-c++-common/Wunused-var-2.c: ...here. New test. * gcc.dg/Wunused-var-3.c: Moved to... * c-c++-common/Wunused-var-3.c: ...here. New test. * gcc.dg/Wunused-var-4.c: Moved to... * gcc.dg/Wunused-var-1.c: ... here. * gcc.dg/Wunused-var-5.c: Moved to... * c-c++-common/Wunused-var-4.c: ...here. New test. * gcc.dg/Wunused-var-7.c: Moved to... * c-c++-common/Wunused-var-5.c: ...here. New test. * gcc.dg/Wunused-var-6.c: Moved to... * gcc.dg/Wunused-var-2.c: ... here. * c-c++-common/Wunused-var-1.c: New test. * c-c++-common/Wunused-var-2.c: New test. * c-c++-common/Wunused-var-3.c: New test. * c-c++-common/Wunused-var-4.c: New test. * c-c++-common/Wunused-var-5.c: New test. * g++.dg/warn/Wunused-var-1.C: New test. * g++.dg/warn/Wunused-var-2.C: New test. * g++.dg/warn/Wunused-var-3.C: New test. * g++.dg/warn/Wunused-var-4.C: New test. * g++.dg/warn/Wunused-var-5.C: New test. * g++.dg/warn/Wunused-var-6.C: New test. * g++.dg/warn/Wunused-var-7.C: New test. * g++.dg/warn/Wunused-var-8.C: New test. * g++.dg/warn/Wunused-parm-1.C: New test. * g++.dg/warn/Wunused-parm-2.C: New test. * g++.dg/warn/Wunused-parm-3.C: New test. Co-Authored-By: Dodji Seketeli <dodji@redhat.com> From-SVN: r159096
Jakub Jelinek committed -
PR tree-optimization/43901 * tree-vect-stmts.c (vectorizable_call): Assert that vector type is not NULL if it's transformation phase, and return FALSE if it's analysis. (vectorizable_conversion, vectorizable_operation, vectorizable_type_demotion, vectorizable_type_promotion): Likewise. From-SVN: r159095
Ira Rosen committed -
From-SVN: r159094
GCC Administrator committed -
2010-05-05 Andrew Pinski <andrew.pinski@caviumnetworks.com> * config/mips/mips.h (TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P): Delete. * config/mips/mips.c (TARGET_SMALL_REGISTER_CLASSES_FOR_MODE_P): New define. * config/mips/mips-protos.h (mips_small_register_classes_for_mode_p): Delete prototype. From-SVN: r159090
Andrew Pinski committed
-
- 05 May, 2010 24 commits
-
-
* config/arm/arm.h (MAX_LDM_STM_OPS): New macro. * config/arm/arm.c (multiple_operation_profitable_p, compute_offset_order): New static functions. (load_multiple_sequence, store_multiple_sequence): Use them. Replace constant 4 with MAX_LDM_STM_OPS. Compute order[0] from memory offsets, not register numbers. (emit_ldm_seq, emit_stm_seq): Replace constant 4 with MAX_LDM_STM_OPS. From-SVN: r159089
Bernd Schmidt committed -
2010-05-06 Tobias Burnus <burnus@net-b.de> PR fortran/43985 * trans-types.c (gfc_sym_type): Mark Cray pointees as GFC_POINTER_TYPE_P. 2010-05-06 Tobias Burnus <burnus@net-b.de> PR fortran/43985 * gfortran.dg/gomp/crayptr5.f90: New test case. From-SVN: r159086
Tobias Burnus committed -
* stor-layout.c (pending_sizes): Change the type to VEC(tree,gc) *. (get_pending_sizes, put_pending_size, put_pending_sizes): Update the uses of pending_sizes. * c-decl.c (store_parm_decls): Likewise. * c-tree.h (struct c_arg_info): Likewise. * tree.h: Update the prototype for get_pending_sizes and put_pending_sizes. From-SVN: r159085
Steven Bosscher committed -
2010-05-05 Paolo Carlini <paolo.carlini@oracle.com> * testsuite/23_containers/vector/bool/capacity/29134.cc: Adjust for profile-mode too. * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc: Likewise. 2010-05-05 Paolo Carlini <paolo.carlini@oracle.com> * include/profile/unordered_map (unordered_map<>::insert(_InputIter, _InputIter), unordered_multimap<>::insert(_InputIter, _InputIter)): Fix typo, don't call base() on __first and __last. 2010-05-05 Paolo Carlini <paolo.carlini@oracle.com> Fix profile-mode vs -std=c++0x * include/profile/impl/profiler_trace.h: Do not include the whole <algorithm>, include <bits/stl_heap.h> (additionally to <bits/stl_algobase.h>). (__write_cost_factors): Replace std::for_each with open-coding. (__set_cost_factors): Likewise. (__report): Likewise; use std::make_heap / std::sort_heap instead of std::sort. (__report_cost_factors): Replace std::remove with open-coding. (__warn, __cost_factor_writer, __cost_factor_setter): Remove. From-SVN: r159082
Paolo Carlini committed -
PR debug/43370 * c-common.c (handle_aligned_attribute): Respect ATTR_FLAG_TYPE_IN_PLACE. From-SVN: r159081
Jason Merrill committed -
2010-05-05 Daniel Franke <franke.daniel@gmail.com> * resolve.c (traverse_data_list): Rephrase error message for non-constant bounds in data-implied-do. From-SVN: r159080
Daniel Franke committed -
PR testsuite/43758 * target.h (struct gcc_target): Add attribute_takes_identifier_p. * target_def.h (TARGET_ATTRIBUTE_TAKES_IDENTIFIER_P): Define. (TARGET_INITIALIZER): Use it. * c-common.c (attribute_takes_identifier_p): Call it. * c-common.h: Update prototype. * config/rs6000/rs6000.c (rs6000_attribute_takes_identifier_p): New. (TARGET_ATTRIBUTE_TAKES_IDENTIFIER_P): Define. From-SVN: r159079
Jason Merrill committed -
PR debug/43950 * dwarf2out.c (gen_compile_unit_die): Add DW_AT_identifier_case DW_ID_down_case for Fortran compilation units. From-SVN: r159077
Jakub Jelinek committed -
gcc/fortran/: 2010-05-05 Daniel Franke <franke.daniel@gmail.com> PR fortran/24978 * gfortran.h: Removed repeat count from constructor, removed all usages. * data.h (gfc_assign_data_value_range): Changed return value from void to gfc_try. * data.c (gfc_assign_data_value): Add location to constructor element. (gfc_assign_data_value_range): Call gfc_assign_data_value() for each element in range. Return early if an error was generated. * resolve.c (check_data_variable): Stop early if range assignment generated an error. gcc/testsuite/: 2010-05-05 Daniel Franke <franke.daniel@gmail.com> PR fortran/24978 * gfortran.dg/data_invalid.f90: New. From-SVN: r159076
Daniel Franke committed -
* lto-cgraph.c (lto_output_varpool_node, input_varpool_node): Correctly handle aliases. From-SVN: r159075
Jan Hubicka committed -
* gimplify.c (gimplify_return_expr): Gimplify the size expressions of a variable-sized RESULT_DECL. From-SVN: r159074
Eric Botcazou committed -
From-SVN: r159073
Maxim Kuvyrkov committed -
PR c++/43787 gcc: * gimplify.c (gimplify_expr): Keep working if gimplify_modify_expr returns GS_OK. (gimplify_modify_expr_rhs): Return GS_OK if anything changed. gcc/cp: * cp-gimplify.c (cp_gimplify_expr): Remove copies of empty classes. * call.c (build_over_call): Don't try to avoid INIT_EXPR copies here. From-SVN: r159072
Jason Merrill committed -
From-SVN: r159071
Jason Merrill committed -
* lib/gen-classlist.sh.in: Use absolute pathnames for all the directory names in the output file. From-SVN: r159067
Andrew Haley committed -
PR debug/43478 * df-problems.c (struct dead_debug_use, struct dead_debug): New. (dead_debug_init, dead_debug_finish): New functions. (dead_debug_add, dead_debug_insert_before): Likewise. (df_note_bb_compute): Initialize a dead_debug object, add dead debug uses to it, insert debug bind insns before death insns, reset debug insns that refer to pending uses at the end. * rtl.h (make_debug_expr_from_rtl): New prototype. * varasm.c (make_debug_expr_from_rtl): New function. Co-Authored-By: Jakub Jelinek <jakub@redhat.com> From-SVN: r159063
Alexandre Oliva committed -
* lto-cgraph.c (output_varpool): Forward declare; work on encoder. (lto_varpool_encoder_new, lto_varpool_encoder_delete, lto_varpool_encoder_encode lto_varpool_encoder_lookup, lto_varpool_encoder_deref, lto_varpool_encoder_size, lto_varpool_encoder_encode_initializer_p, lto_set_varpool_encoder_encode_initializer): New functions. (lto_output_cgraph): Take vset parameter too; compute varpool encoder; call output_varpool. (input_varpool_node): Do not always set analyzed. (input_cgraph_1): Return vector of cgraph nodes. (input_varpool_1): Return vector of varpools. (input_cgraph): Free the vectors. * lto-streamer-out.c (lto_output_ts_decl_common_tree_pointers): output only initializers needed. (lto_output): Only call output_cgraph. (produce_asm_for_decls): Call lto_varpool_encoder_delete. * lto-section-out.c (lto_new_out_decl_state): Initialize state->varpool_node_encoder. * lto-streamer.h (lto_varpool_encoder_d): New. (lto_out_decl_state, lto_file_decl_data): Add varpool_node_encoder. (lto_cgraph_encoder_delete, output_cgraph): Update prototype. (lto_varpool_encoder_deref, lto_varpool_encoder_lookup, lto_varpool_encoder_encode, lto_varpool_encoder_delete, lto_varpool_encoder_encode_initializer_p, lto_varpool_encoder_new): Declare. (output_varpool, input_varpool): Remove declarations. * lto.c (lto_1_to_1_map): Partition only needed nodes. From-SVN: r159062
Jan Hubicka committed -
* lto-symtab.c (lto_symtab_resolve_can_prevail_p): Alias of variable with body can prevail. * lto-symtab.c (lto_symtab_merge_decls_1): Prefer declarations with size. From-SVN: r159061
Jan Hubicka committed -
2010-05-05 Laurynas Biveinis <laurynas.biveinis@gmail.com> * Makefile.in (build/gengtype.o): Add $(HASHTAB_H) to dependencies. * gengtype.h (erro_at_line): Constify pos argument. * gengtype.c: Include hashtab.h. (enum gc_used): Document GC_MAYBE_POINTED_TO. (error_at_line): Constify pos argument. (do_typedef): Initialize p->opt field. (get_file_gtfilename): Fix comment typo. (struct walk_type_data): Constify line field. (get_output_file_for_structure): New function. (write_local_func_for_structure): Constify orig_s argument. Use get_output_file_for_structure. (write_func_for_structure): Use get_output_file_for_structure. (INDENT): New define. (dump_pair, dump_type, dump_type_list, dump_typekind) (dump_gc_used, dump_options, dump_fileloc, dump_type_u_s) (dump_type_u_a, dump_type_u_param_struct, dump_everything): New functions. (seen_types): New variable. (main): New variable do_dump. Process "-d" command line option. Call dump_everything if dump requested. From-SVN: r159060
Laurynas Biveinis committed -
From-SVN: r159059
Jakub Jelinek committed -
var-tracking.c (var_debug_decl): Save DECL_DEBUG_EXPR value in a temporary instead of invoking the macro... * var-tracking.c (var_debug_decl): Save DECL_DEBUG_EXPR value in a temporary instead of invoking the macro multiple times. (track_expr_p): Likewise. From-SVN: r159058
Jakub Jelinek committed -
2010-05-05 Janus Weil <janus@gcc.gnu.org> PR fortran/43696 * resolve.c (resolve_fl_derived): Some fixes for class variables. * symbol.c (gfc_build_class_symbol): Add separate class container for class pointers. 2010-05-05 Janus Weil <janus@gcc.gnu.org> PR fortran/43696 * gfortran.dg/class_17.f03: New. From-SVN: r159056
Janus Weil committed -
PR objc/35165 * encode-8.mm: Restore running of testcase, skip for gnu-runtime. From-SVN: r159055
Mike Stump committed -
From-SVN: r159054
GCC Administrator committed
-