Age | Commit message (Collapse) | Author | Files | Lines |
|
From-SVN: r155197
|
|
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
|
|
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-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
|
|
From-SVN: r155190
|
|
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
|
|
From-SVN: r155188
|
|
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
|
|
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-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
|
|
* config/sparc/linux-unwind.h (MD_FROB_UPDATE_CONTEXT, 64-bit): Define.
(sparc64_frob_update_context): New function.
From-SVN: r155178
|
|
PR c++/42219
* typeck.c (error_type_p): New.
(ptr_reasonably_similar): Use it.
* cp-tree.h: Declare it.
From-SVN: r155177
|
|
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-11 Richard Guenther <rguenther@suse.de>
PR lto/42037
* lto.c (lto_resolution_read): Properly grow the vector.
From-SVN: r155166
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
allocated events.
* plugin.c (get_named_event_id): Fix hash table rebuild to include
dynamically allocated events.
From-SVN: r155156
|
|
'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
|
|
From-SVN: r155153
|
|
From-SVN: r155150
|
|
From-SVN: r155148
|
|
* s-linux-sparc.ads: New file.
* gcc-interface/Makefile.in (SPARC/Linux): Use it.
From-SVN: r155144
|
|
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-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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
* gcc.target/powerpc/bswap64-4.c: Disable on AIX.
* gcc.target/powerpc/ppc64-double-1.c: Disable on AIX.
From-SVN: r155129
|
|
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
|
|
gcc/po:
* zh_CN.po: Update.
libcpp/po:
* zh_CN.po: Update.
From-SVN: r155126
|
|
From-SVN: r155125
|
|
* builtins.c (do_mpc_ckconv): Pass the component type to
real_from_mpfr().
From-SVN: r155122
|
|
From-SVN: r155121
|
|
From-SVN: r155111
|
|
* 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
|
|
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-09 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/s390.md ("copysign<mode>3"): Pattern removed.
From-SVN: r155106
|
|
* 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
|
|
From-SVN: r155098
|
|
tidy conditions.
* combine.c (setup_incoming_promotions): Fix sign-extend of
zero-extend case; tidy conditions.
From-SVN: r155095
|
|
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
|
|
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
|
|
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
|