aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2009-12-13* fi.po, sv.po: Update.Joseph Myers3-561/+493
From-SVN: r155197
2009-12-13re PR tree-optimization/42027 (Performance regression in convolution loop ↵Michael Matz2-0/+12
optimization) PR tree-optimization/42027 * dojump.c (do_jump <TRUTH_AND_EXPR, TRUTH_OR_EXPR>): Go to TRUTH_ANDIF_EXPR resp. TRUTH_ORIF_EXPR expander, instead of falling through. From-SVN: r155196
2009-12-13re PR rtl-optimization/23726 (Missed optimizations for divmod)Andy Hutchinson3-38/+124
PR target/23726 * config/avr/predicates.md (pseudo_register_operand): New predicate for pseudos. * config/avr/avr.md (divmodqi4): Replace with define_insn_and_split to allow div/mod optimization. (udivmodqi4): Ditto. (divmodhi4): Ditto. (udivmodhi4): Ditto. (divmodsi4): Ditto. (udivmodsi4): Ditto. From-SVN: r155195
2009-12-13re PR tree-optimization/42357 (another ice in create_tmp_var)Richard Guenther4-1/+42
2009-12-13 Richard Guenther <rguenther@suse.de> PR tree-optimization/42357 * tree-sra.c (sra_modify_assign): Do not tear apart struct copies. * g++.dg/torture/pr42357.C: New testcase. From-SVN: r155193
2009-12-11Add missing ChangeLog entries.H.J. Lu1-3/+26
From-SVN: r155190
2009-12-12tree.c (need_assembler_name_p): Abstract decls do not need an assembler name.Richard Guenther3-1/+13
2009-12-12 Richard Guenther <rguenther@suse.de> * tree.c (need_assembler_name_p): Abstract decls do not need an assembler name. * dwarf2out.c (dwarf2out_abstract_function): Preserve DECL_ABSTRACT properly. From-SVN: r155189
2009-12-12Daily bump.GCC Administrator1-1/+1
From-SVN: r155188
2009-12-12re PR fortran/42257 ([OOP] Compiler segmentation fault due missing public ↵Janus Weil4-0/+50
statement) gcc/fortran/ 2009-12-11 Janus Weil <janus@gcc.gnu.org> PR fortran/42257 * module.c (write_dt_extensions): Check for accessibility. gcc/testsuite/ 2009-12-11 Janus Weil <janus@gcc.gnu.org> PR fortran/42257 * gfortran.dg/extends_9.f03: New test. From-SVN: r155183
2009-12-11lto-streamer-in.c (lto_input_tree_ref): Do not register DEBUG_EXPR_DECLs ↵Richard Biener2-7/+12
with the varpool. 2009-12-11 Richard Guenther <rguenther@suse.de> * lto-streamer-in.c (lto_input_tree_ref): Do not register DEBUG_EXPR_DECLs with the varpool. From-SVN: r155182
2009-12-11re PR fortran/40290 (Spurious warning on REAL*COMPLEX with -Wconversion)Daniel Franke6-14/+25
2009-12-11 Daniel Franke <franke.daniel@gmail.com> PR fortran/40290 * expr.c (gfc_type_convert_binary): Added warn-on-conversion flag, passed on to gfc_convert_type_warn() instead of gfc_convert_type(); enabled warnings on all callers but ... * arith.c (eval_intrinsic): Disabled warnings on implicit type conversion. * gfortran.h gfc_type_convert_binary): Adjusted prototype. From-SVN: r155179
2009-12-11linux-unwind.h (MD_FROB_UPDATE_CONTEXT, 64-bit): Define.Eric Botcazou2-0/+22
* config/sparc/linux-unwind.h (MD_FROB_UPDATE_CONTEXT, 64-bit): Define. (sparc64_frob_update_context): New function. From-SVN: r155178
2009-12-11re PR c++/42219 (ICE with "const void" as parameter type)Jason Merrill5-4/+64
PR c++/42219 * typeck.c (error_type_p): New. (ptr_reasonably_similar): Use it. * cp-tree.h: Declare it. From-SVN: r155177
2009-12-11re PR lto/41658 (Execution testsuite fails with -O2 -fwhopr)Richard Guenther2-28/+21
2009-12-11 Richard Guenther <rguenther@suse.de> PR lto/41658 PR lto/41657 * lto-streamer-out.c (write_global_stream): Do not make decls weak but resort to TREE_ASM_WRITTEN to avoid multiple definitions. Make sure to mark all decls that we have written. From-SVN: r155174
2009-12-11re PR lto/42037 ("grow domain error" in lto1)Richard Guenther2-1/+6
2009-12-11 Richard Guenther <rguenther@suse.de> PR lto/42037 * lto.c (lto_resolution_read): Properly grow the vector. From-SVN: r155166
2009-12-11re PR target/36047 (-pg does not work on large binaries and m68k)Sebastian Andrzej Siewior2-2/+8
2009-12-11 Sebastian Andrzej Siewior <bigeasy@linutronix.de> PR target/36047 * config/m68k/linux.h: Remove LABELNO from the mcount statement. It is not used by glibc/uclibc and does not work with large binaries. From-SVN: r155165
2009-12-11re PR lto/41915 (FAIL: gcc.dg/torture/builtin-math-7.c -O2 -flto execution ↵Richard Guenther2-3/+11
test) 2009-12-11 Richard Guenther <rguenther@suse.de> PR lto/41915 * lto-lang.c (lto_init_options): Initialize flag_complex_method to the C99 default. Do not set flag_unit_at_a_time. From-SVN: r155164
2009-12-11re PR lto/41662 (FAIL: g++.dg/lto/20081109 ↵Richard Guenther2-6/+23
cp_lto_20081109_0.o-cp_lto_20081109_1.o execute -O2 -fwhopr) 2009-12-11 Richard Guenther <rguenther@suse.de> PR lto/41662 * lto-streamer-in.c (lto_init_eh): Move eh_initialized_p handling here. (input_eh_regions): Adjust. (lto_input_ts_function_decl_tree_pointers): Initialize EH if a non-NULL DECL_FUNCTION_PERSONALITY was read in. From-SVN: r155163
2009-12-11re PR fortran/42335 ([OOP] ICE on CLASS IS (bad_identifier))Janus Weil4-1/+40
gcc/fortran/ 2009-12-11 Janus Weil <janus@gcc.gnu.org> PR fortran/42335 * symbol.c (select_type_insert_tmp): Add an extra check for error recovery. gcc/testsuite/ 2009-12-11 Janus Weil <janus@gcc.gnu.org> PR fortran/42335 * gfortran.dg/select_type_11.f03: New test. From-SVN: r155162
2009-12-11IPA passes are bigger than other passes...Duncan Sands2-2/+20
IPA passes are bigger than other passes, so more memory needs to be allocated for them (and more copied) in make_pass_instance. From-SVN: r155161
2009-12-11re PR c++/42225 (GCC 4.5 ICE (segfault) on C++ templated code)Dodji Seketeli10-3/+158
Fix PR c++/42225 gcc/cp/ChangeLog: PR c++/42225 * typeck.c (incompatible_dependent_typedefs_p): New function. (structural_comptypes): Use it. * cp-tree.h (cp_set_underlying_type): Declare ... * tree.c (cp_set_underlying_type): ... new function. * class.c (build_self_reference): Use cp_set_underlying_type instead of set_underlying_type. * decl2.c (grokfield): Likewise. * name-lookup.c (pushdecl_maybe_friend): Likewise. gcc/testsuite/ChangeLog: PR c++/42225 * g++.dg/template/typedef24.C: New test. * g++.dg/template/typedef25.C: New test. From-SVN: r155160
2009-12-11re PR c++/42251 (failure detecting constant integral expression)Dodji Seketeli4-7/+39
Fix PR c++/42251 gcc/cp/ChangeLog: PR c++/42251 * pt.c (convert_template_argument): Avoid missing folding of SCOPE_REFs. gcc/testsuite/ChangeLog: PR c++/42251 * g++.dg/template/const3.C: New test. From-SVN: r155159
2009-12-11plugin.c (get_named_event_id): Fix hash table rebuild to include dynamically ↵Joern Rennecke2-1/+6
allocated events. * plugin.c (get_named_event_id): Fix hash table rebuild to include dynamically allocated events. From-SVN: r155156
2009-12-11re PR middle-end/42320 (link error with -flto (undefined reference to ↵Richard Guenther6-1/+38
'non-virtual thunk ...)) 2009-12-11 Richard Guenther <rguenther@suse.de> PR lto/42320 * lto-symtab.c (lto_symtab_resolve_can_prevail_p): Properly detect non-prevailing decls. * g++.dg/lto/20091210-1_0.h: New testcase. * g++.dg/lto/20091210-1_0.C: Likewise. * g++.dg/lto/20091210-1_1.C: Likewise. From-SVN: r155155
2009-12-11* es.po: Update.Joseph Myers2-2204/+2084
From-SVN: r155153
2009-12-11Fix formattingEric Botcazou1-2/+1
From-SVN: r155150
2009-12-11Daily bump.GCC Administrator1-1/+1
From-SVN: r155148
2009-12-10s-linux-sparc.ads: New file.Eric Botcazou3-1/+126
* s-linux-sparc.ads: New file. * gcc-interface/Makefile.in (SPARC/Linux): Use it. From-SVN: r155144
2009-12-10re PR c++/42317 (Issues with comdat virtual dtors)Jakub Jelinek14-20/+287
PR c++/42317 * cgraph.h (struct cgraph_node): Add same_comdat_group field. * cgraph.c (cgraph_remove_node): Unchain node from same_comdat_group circular list. (cgraph_node_can_be_local_p): Return false for DECL_COMDAT with node->same_comdat_group. * ipa.c (cgraph_remove_unreachable_nodes): For any reachable node mark all its same_comdat_group nodes as also reachable. (cgraph_externally_visible_p): Return true even if any of same_comdat_group nodes has address taken. * lto-cgraph.c (lto_output_node): Stream out same_comdat_group. (output_cgraph): Ensure other same_comdat_group nodes are also included. (input_node): Stream in same_comdat_group. (input_cgraph_1): Fix up same_comdat_group fields from references to pointers. * cgraphunit.c (cgraph_analyze_functions): Mark all other same_comdat_group nodes as reachable. (cgraph_mark_functions_to_output): For each node->process process also other same_comdat_group nodes. * ipa-inline.c (cgraph_clone_inlined_nodes): Don't reuse nodes with same_comdat_group non-NULL. (cgraph_mark_inline_edge): Likewise. * decl2.c (cp_write_global_declarations): Clear DECL_EXTERNAL also on all other functions in the same comdat group. * optimize.c (maybe_clone_body): Also optimize virtual implicit dtors. For virtual comdat dtors tell cgraph that base and deleting dtor are in the same comdat group. * config/abi/pre/gnu.ver: Don't export certain base dtors that weren't previously exported. * g++.dg/opt/dtor2.C: New test. * g++.dg/opt/dtor2.h: New file. * g++.dg/opt/dtor2-aux.cc: New file. From-SVN: r155143
2009-12-10re PR fortran/40287 (Spurious warnings with -Wconversion and COUNT())Daniel Franke2-1/+7
2009-12-10 Daniel Franke <franke.daniel@gmail.com> PR fortran/40287 * iresolve.c (resolve_mask_arg): Disabled warning on conversion to LOGICAL(1). From-SVN: r155142
2009-12-10re PR fortran/41369 (Empty derived-type wrongly rejected as function return ↵Daniel Franke4-1/+26
type) 2009-12-10 Daniel Franke <franke.daniel@gmail.com> PR fortran/41369 * parse.c (match_deferred_characteristics): Removed check for empty types in function return values. 2009-12-10 Daniel Franke <franke.daniel@gmail.com> PR fortran/41369 * gfortran.dg/func_derived_5.f90: New. From-SVN: r155141
2009-12-10re PR middle-end/42228 (verify_cgraph_node failed:node has wrong clone_of)Jan Hubicka8-20/+118
PR middle-end/42228 PR middle-end/42110 * cgraph.c (cgraph_create_edge_including_clones): Add old_stmt parameter; update edge if it already exists. (cgraph_remove_node): Handle correctly cases where we are removing node having clones. * cgraph.h (cgraph_create_edge_including_clones): Declare. (verify_cgraph_node): Add missing error_found = true code. (cgraph_materialize_all_clones): Remove call edges of dead nodes. * ipa.c (cgraph_remove_unreachable_nodes): Correctly look for master clone; fix double linked list removal. * tree-inline.c (copy_bb): Update cgraph_create_edge_including_clones call; fix frequency of newly created edge. * g++.dg/torture/pr42110.C: new file. From-SVN: r155140
2009-12-10re PR fortran/34402 (Diagnose illegal initialization of derived type ↵Daniel Franke4-4/+64
containing allocatable component) gcc/fortran/: 2009-12-10 Daniel Franke <franke.daniel@gmail.com> PR fortran/34402 * expr.c (check_alloc_comp_init): New. (check_init_expr): Verify that allocatable components are not data-initalized. gcc/testsuite/: 2009-12-10 Daniel Franke <franke.daniel@gmail.com> PR fortran/34402 * gfortran.dg/alloc_comp_init_expr.f03: New. From-SVN: r155138
2009-12-10re PR rtl-optimization/42216 (changes in scheduling regress 464.h264ref 20%)Bernd Schmidt2-33/+94
PR rtl-opt/42216 * regrename.c: Error out if MAX_RECOG_OPERANDS is larger than HOST_BITS_PER_WIDE_INT. (verify_reg_in_set): New function, broken out of verify_reg_tracked. (verify_reg_tracked): Use it. (scan_rtx_reg): When seeing a use involving a superset of the registers in an existing chain, enlarge that chain. Otherwise, allow subsets and set fail_current_block for all other kinds of overlap. (hide_operands): New argument UNTRACKED_OPERANDS; callers changed. Do not modify operands when the bit with the corresponding number is set in that bitmap. (build_def_use): When we see matching operands with different modes, don't set fail_current_block, but keep track of such operands in a bitmap if their registers aren't already tracked in an open chain. Pass this bitmap to all hide_operands calls. From-SVN: r155134
2009-12-10re PR tree-optimization/42337 (GCC ICE in compute_antic, at ↵Richard Guenther2-48/+16
tree-ssa-pre.c:2534) 2009-12-10 Richard Guenther <rguenther@suse.de> PR tree-optimization/42337 * tree-ssa-pre.c (seen_during_translate): Remove. (phi_translate_1): Collapse into ... (phi_translate): ... this. Remove seen parameter and adjust recursive calls. From-SVN: r155131
2009-12-10bswap64-4.c: Disable on AIX.David Edelsohn3-0/+7
* gcc.target/powerpc/bswap64-4.c: Disable on AIX. * gcc.target/powerpc/ppc64-double-1.c: Disable on AIX. From-SVN: r155129
2009-12-10tree-vectorizer.c (vectorize_loops): Properly guard vectorizer verboseness.Richard Guenther2-2/+8
2009-12-10 Richard Guenther <rguenther@suse.de> Allan Sandfeld Jensen <linux@carewolf.com> * tree-vectorizer.c (vectorize_loops): Properly guard vectorizer verboseness. Co-Authored-By: Allan Sandfeld Jensen <linux@carewolf.com> From-SVN: r155128
2009-12-10zh_CN.po: Update.Joseph Myers2-87/+76
gcc/po: * zh_CN.po: Update. libcpp/po: * zh_CN.po: Update. From-SVN: r155126
2009-12-10* fwprop.c (free_load_extend): Initialise `use'.Ben Elliston2-1/+5
From-SVN: r155125
2009-12-09builtins.c (do_mpc_ckconv): Pass the component type to real_from_mpfr().David Edelsohn2-2/+7
* builtins.c (do_mpc_ckconv): Pass the component type to real_from_mpfr(). From-SVN: r155122
2009-12-10Daily bump.GCC Administrator1-1/+1
From-SVN: r155121
2009-12-09fixing pr42337Xinliang David Li4-2/+192
From-SVN: r155111
2009-12-09vector.md (absv2sf2, [...]): New expanders.Nathan Froyd5-22/+127
* config/rs6000/vector.md (absv2sf2, negv2sf2, addv2sf3, subv2sf3, mulv2sf3, divv2sf3): New expanders. * config/rs6000/spe.md (spe_evabs, spe_evand, spe_evaddw, spe_evsubfw, spe_evdivws): Rename to use standard GCC names. * config/rs6000/paired.md (negv2sf, absv2sf2, addv2sf3, subv2sf3, mulv2sf3, divv2sf3): Rename to avoid conflict with the new expanders. * config/rs6000/rs6000.c (bdesc_2arg, bdesc_1arg): Use new CODE_FOR_ names for renamed patterns. From-SVN: r155110
2009-12-09re PR tree-optimization/42285 (ICE in Graphite's scan_tree_for_params for ↵Sebastian Pop3-2/+41
416.gamess) Fix PR42285. 2009-12-08 Sebastian Pop <sebpop@gmail.com> PR middle-end/42285 * graphite-scop-detection.c (graphite_can_represent_init): Also handle more complex MULT_EXPRs containing parameters by recursion on the structure. * testsuite/gfortran.dg/graphite/pr42285.f90: New. From-SVN: r155108
2009-12-09s390.md ("copysign<mode>3"): Pattern removed.Andreas Krebbel2-15/+4
2009-12-09 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * config/s390/s390.md ("copysign<mode>3"): Pattern removed. From-SVN: r155106
2009-12-09configure.ac: Compute ld_ver...Jakub Jelinek3-14/+33
* configure.ac: Compute ld_ver, ld_vers, ld_date, ld_vers_major, ld_vers_minor and ld_vers_path always, not just when gcc_cv_ld_hidden isn't cached. * configure: Regenerated. From-SVN: r155103
2009-12-09Daily bump.GCC Administrator1-1/+1
From-SVN: r155098
2009-12-08combine.c (setup_incoming_promotions): Fix sign-extend of zero-extend case; ↵Richard Henderson2-29/+38
tidy conditions. * combine.c (setup_incoming_promotions): Fix sign-extend of zero-extend case; tidy conditions. From-SVN: r155095
2009-12-08re PR libfortran/41711 ([F08] BOZ edit-descr does not support reading large ↵Tobias Burnus2-0/+54
kind reals) 2009-12-08 Tobias Burnus <burnus@net-b.de> PR fortran/41711 * io/read.c (set_integer): Support kind=10 for reading real/complex BOZ. 2009-12-08 Tobias Burnus <burnus@net-b.de> PR fortran/41711 * gfortran.dg/boz_15.f90: New test. From-SVN: r155088
2009-12-08re PR middle-end/38474 (compile time explosion in ↵Michael Matz2-5/+24
dataflow_set_preserve_mem_locs at -O3) PR middle-end/38474 * function.c (free_temp_slots): Only walk the temp slot addresses and combine slots if we actually changes something. (pop_temp_slots): Ditto. From-SVN: r155087
2009-12-08re PR fortran/41177 (Wrong base-object checks for type-bound procedures)Daniel Kraft7-12/+113
2008-12-08 Daniel Kraft <d@domob.eu> PR fortran/41177 * gfortran.dg/typebound_proc_4.f03: Remove check for wrong error. * gfortran.dg/typebound_proc_13.f03: New test. 2008-12-08 Daniel Kraft <d@domob.eu> PR fortran/41177 * gfortran.h (struct symbol_attribute): New flag `class_pointer'. * symbol.c (gfc_build_class_symbol): Set the new flag. * resolve.c (update_compcall_arglist): Remove wrong check for non-scalar base-object. (check_typebound_baseobject): Add the correct version here as well as some 'not implemented' message check in the old case. (resolve_typebound_procedure): Check that the passed-object dummy argument is scalar, non-pointer and non-allocatable as it should be. From-SVN: r155086