- 02 Jun, 2005 15 commits
-
-
From-SVN: r100492
Diego Novillo committed -
* cgraph.c (dump_cgraph_node): Print new flags. (dump_cgraph_varpool_node): Likewise. (decide_variable_is_needed): Initialize externally_visible flag. * cgraph.h (cgraph_local_info): Add externally_visible flag. (cgraph_varpool_node): Likewise. (cgraph_function_flags_ready): Declare. * cgraph.c (cgraph_mark_local_functions): Rename to ... (cgraph_function_and_variable_visibility) ... this one; handle externally_visible flags. (decide_is_function_needed): Set externally_visible flag. (cgraph_finalize_function): Deal properly with early cleanups. (cgraph_optimize): Update call of cgraph_function_and_variable_visibility. From-SVN: r100491
Jan Hubicka committed -
> 2005-06-02 Steven Bosscher <stevenb@suse.de> > Mostafa Hagog <mustafa@il.ibm.com> > > * cfgloop.h (doloop_condition_get): Make external. > * loop-doloop.c (doloop_condition_get): Generalize to make it > usable in modulo-sched.c. > * modulo-sched.c (doloop_register_get): Use > doloop_condition_get instead of duplicating it. Co-Authored-By: Mostafa Hagog <mustafa@il.ibm.com> From-SVN: r100490
Steven Bosscher committed -
* decl.c (start_decl): Simplify specialization handling. Remove unneeded CLASSTYPE_TEMPLATE_INSTANTIATION check. * mangle.c (discriminator_for_local_entity): Use VEC_index. From-SVN: r100488
Nathan Sidwell committed -
cp: PR c++/20350 * decl.c (duplicate_decls): Copy all of DECL_USE_TEMPLATE. testsuite: PR c++/20350 * g++.dg/template/spec24.C: New. From-SVN: r100486
Nathan Sidwell committed -
* local-alloc.c (update_equiv_regs): When substituting sole definition into sole use of a reg, delete it from liveness information. From-SVN: r100483
Bernd Schmidt committed -
cp: PR c++/21151 * name-lookup.c (pushtag): Push local class even in a template. testsuite: PR c++/21151 * g++.dg/pch/local-1.C: New. * g++.dg/pch/local-1.Hs: New. From-SVN: r100482
Nathan Sidwell committed -
* reload1.c (reload): Undo 2005-04-20 change. Make sure we detect the correct set of init_insns that need deletion. From-SVN: r100481
Bernd Schmidt committed -
2005-06-01 Jerry DeLisle <jvdelisle@verizon.net> * MAINTAINERS (Write After Approval): Add self. From-SVN: r100480
Jerry DeLisle committed -
From-SVN: r100479
Kaz Kojima committed -
2005-06-01 Diego Novillo <dnovillo@redhat.com> PR 14341, PR 21332, PR 20701, PR 21029, PR 21086, PR 21090 PR 21289, PR 21348, PR 21367, PR 21368, PR 21458. * fold-const.c (invert_tree_comparison): Make extern. * tree-flow.h (enum value_range_type): Move to tree-ssa-propagate. (struct value_range_def): Limewise. (get_value_range): Remove. (dump_value_range): Remove. (dump_all_value_ranges): Remove. (debug_all_value_ranges): Remove. (vrp_evaluate_conditional): Declare. * tree-ssa-propagate.c (struct prop_stats_d): Add field num_pred_folded. (substitute_and_fold): Add argument use_ranges_p. Update all callers. If use_ranges_p is true, call fold_predicate_in to fold predicates using range information. Ignore ASSERT_EXPRs. Change debugging output to only show statements that have been folded. (replace_phi_args_in): Move debugging output code from substitute and fold. (fold_predicate_in): New local function. * tree-ssa-propagate.h (enum value_range_type): Move from tree-flow.h. (struct value_range_d): Likewise. Add field 'equiv'. (value_range_t): Rename from value_range. * tree-vrp.c (found_in_subgraph): Rename from found. (get_opposite_operand): Remove. (struct assert_locus_d): Declare. (assert_locus_t): Declare. (need_assert_for): Declare. (asserts_for): Declare. (blocks_visited): Declare. (vr_value): Declare. (set_value_range): Add argument 'equiv'. Don't drop to VARYING ranges that cover all values in the type. Make deep copy of equivalence set 'equiv'. (copy_value_range): New local function. (set_value_range_to_undefined): New local function. (compare_values): Return -2 if either value has overflowed. (range_includes_zero_p): New local function. (extract_range_from_assert): Flip the predicate code if the name being asserted is on the RHS of the predicate. Avoid creating unnecessary symbolic ranges if the comparison includes another name with a known numeric range. Update the equivalnce set of the new range when asserting EQ_EXPR predicates. (extract_range_from_ssa_name): Update the equivalence set of the new range with VAR. (extract_range_from_binary_expr): Also handle TRUTH_*_EXPR. If -fwrapv is used, set the resulting range to VARYING if the operation overflows. Otherwise, use TYPE_MIN_VALUE and TYPE_MAX_VALUE to represent -INF and +INF. Fix handling of *_DIV_EXPR. (extract_range_from_unary_expr): Handle MINUS_EXPR and ABS_EXPR properly by switching the range around if necessary. (extract_range_from_comparison): New local function. (extract_range_from_expr): Call it. (adjust_range_with_scev): Do not adjust the range if using wrapping arithmetic (-fwrapv). (dump_value_range): Also show equivalence set. Show -INF and +INF for TYPE_MIN_VALUE and TYPE_MAX_VALUE. (build_assert_expr_for): Also build ASSERT_EXPR for EQ_EXPR. (infer_value_range): Change return value to bool. Add arguments 'comp_code_p' and 'val_p'. Do not attempt to infer ranges from statements that may throw. Store the comparison code in comp_code_p. Store the other operand to be used in the predicate in val_p. (dump_asserts_for): New. (debug_asserts_for): New. (dump_all_asserts): New. (debug_all_asserts): New. (register_new_assert_for): New. (register_edge_assert_for): New. (find_conditional_asserts): New. (find_assert_locations): New. (process_assert_insertions_for): New. (process_assert_insertions): New. (insert_range_assertions): Initialize found_in_subgraph, blocks_visited, need_assert_for and asserts_for. Call find_assert_locations and process_assert_insertions. (remove_range_assertions): Add more documentation. (vrp_initialize): Change return type to void. Do not try to guess if running VRP is worth it. (compare_name_with_value): New. (compare_names): New. (vrp_evaluate_conditional): Add argument 'use_equiv_p'. If use_equiv_p is true, call compare_names and compare_name_with_value to compare all the ranges for every name in the equivalence set of the predicate operands. Update all callers. (vrp_meet): Try harder not to derive a VARYING range. If two values meet, the resulting equivalence set is the intersection of the two equivalence sets. (vrp_visit_phi_node): Call copy_value_range to get the current range information of the LHS. (vrp_finalize): Create a value vector representing all the names that ended up with exactly one value in their range. Call substitute_and_fold. (execute_vrp): Document equivalence sets in ranges. * tree.h (SSA_NAME_VALUE_RANGE): Remove. (struct tree_ssa_name): Remove field value_range. (invert_tree_comparison): Declare. testsuite/ChangeLog 2005-06-01 Diego Novillo <dnovillo@redhat.com> PR 14341, PR 21332, PR 20701, PR 21086, PR 21090 PR 21289, PR 21348, PR 21367, PR 21368, PR 21458. * gcc.dg/tree-ssa/pr14341.c: New test. * gcc.dg/tree-ssa/pr14841.c: New test. * gcc.dg/tree-ssa/pr20701.c: New test. * gcc.dg/tree-ssa/pr21086.c: New test. * gcc.dg/tree-ssa/pr21090.c: New test. * gcc.dg/tree-ssa/pr21332.c: New test. * gcc.dg/tree-ssa/pr21458.c: New test. * gcc.dg/tree-ssa/pr21658.c: New test. * gcc.dg/tree-ssa/vrp01.c: New test. * gcc.dg/tree-ssa/vrp02.c: New test. * gcc.dg/tree-ssa/vrp03.c: New test. * gcc.dg/tree-ssa/vrp04.c: New test. * gcc.dg/tree-ssa/vrp05.c: New test. * gcc.dg/tree-ssa/vrp06.c: New test. * gcc.dg/tree-ssa/vrp07.c: New test. * gcc.dg/tree-ssa/vrp08.c: New test. * gcc.dg/tree-ssa/vrp09.c: New test. * gcc.dg/tree-ssa/vrp10.c: New test. * gcc.dg/tree-ssa/vrp11.c: New test. * gcc.dg/tree-ssa/vrp12.c: New test. * gcc.dg/tree-ssa/vrp13.c: New test. 2005-06-01 Alexandre Oliva <aoliva@redhat.com> PR 21029 * gcc.dg/tree-ssa/pr21029.c: New test. From-SVN: r100478
Diego Novillo committed -
2005-06-01 Daniel Berlin <dberlin@dberlin.org> Fix PR tree-optimization/21839 * gimplify.c (zero_sized_field_decl): New function. (gimplify_init_ctor_eval): Use it. From-SVN: r100477
Daniel Berlin committed -
From-SVN: r100476
Kaveh R. Ghazi committed -
From-SVN: r100475
Josh Conner committed -
[[Split portion of a mixed commit.]] From-SVN: r100473.2
GCC Administrator committed
-
- 01 Jun, 2005 25 commits
-
-
2005-06-02 Andreas Tobler <a.tobler@schweiz.ch> * mauve-libgcj: Remove implemented classes from the fail section. Add two new not implemented to it. From-SVN: r100471
Andreas Tobler committed -
configure.ac (BACKTRACESPEC): Remove definition, but continue to AC_SUBST definition from configure.host. * configure.ac (BACKTRACESPEC): Remove definition, but continue to AC_SUBST definition from configure.host. * configure.host: Don't use -fno-omit-frame-pointer. Set BACKTRACESPEC to -fomit-frame-pointer on 32-bit x86 targets. From-SVN: r100469
Bryce McKinlay committed -
From-SVN: r100468
Kazu Hirata committed -
From-SVN: r100467
Tom Tromey committed -
2005-06-01 Ziga Mahkovec <ziga.mahkovec@klika.si> PR libgcj/20435: * gnu/regexp/RESyntax.java (RE_POSSESSIVE_OPS): New field. (static): Add possessive matching to JAVA_1_4 syntax. * gnu/regexp/RETokenRepeated.java (possessive): New field. (makePossessive, isPossessive): New methods. (match): Don't back off during possessive matching. * gnu/regexp/RE.java (initalize): Accept possessive quantifier. * java/util/regex/Pattern.java (constructor): Switch syntax from PERL5 to JAVA_1_4. From-SVN: r100466
Ziga Mahkovec committed -
PR 21478 * gimplify.c (gimplify_init_constructor): Don't spill initializer to read-only memory if it's sparse. From-SVN: r100465
Josh Conner committed -
From-SVN: r100464
Keith Seitz committed -
* gnu/classpath/jdwp/transport/JdwpPacket.java: New file. * gnu/classpath/jdwp/transport/JdwpCommandPacket.java: New file. * gnu/classpath/jdwp/transport/JdwpReplyPacket.java: New file. From-SVN: r100463
Keith Seitz committed -
PR libgcj/21785: * java/io/natObjectInputStream.cc (currentClassLoader): Removed. (currentLoader): New method. * java/io/ObjectInputStream.java (resolveProxyClass): Use currentLoader. (currentLoader): Now native. (currentClassLoader): Removed. * testsuite/libjava.lang/pr21785.java: New file. * testsuite/libjava.lang/pr21785.out: New file. From-SVN: r100462
Tom Tromey committed -
* intrinsic.c (add_conv): No longer take a "simplify" argument as its always gfc_convert_constant, instead take a "standard" argument. (add_conversions): Change all existing calls of add_conv to pass GFC_STD_F77 as appropriate. Additionally, if we're allowing GNU extensions support integer-logical and logical-integer conversions. (gfc_convert_type_warn): Warn about use the use of these conversions as a extension when appropriate, i.e. with -pedantic. * simplify.c (gfc_convert_constant): Add support for integer to logical and logical to integer conversions, using gfc_int2log and gfc_log2int. * arith.c (gfc_log2int, gfc_int2log): New functions. * arith.h (gfc_log2int, gfc_int2log): Prototype here. * gfortran.texi: Document this new GNU extension. * gfortran.dg/logint-1.f: New test case. * gfortran.dg/logint-2.f: Likewise. * gfortran.dg/logint-3.f: Likewise. From-SVN: r100461
Roger Sayle committed -
2005-06-01 Ramana Radhakrishnan <ramana@codito.com> * doc/rtl.texi: Remove references to NOTE_INSN_SETJMP. Add documentation for REG_SETJMP From-SVN: r100460
Ramana Radhakrishnan committed -
2005-06-01 Richard Guenther <rguenth@gcc.gnu.org> * stmt.c (expand_case): Use build_int_cst. (node_has_low_bound): Likewise, and correct type mismatch. (node_has_high_bound): Likewise. * fold-const.c (fold_binary): Ensure we build trees with the correct types - undo what STRIP_NOPS possibly did. From-SVN: r100459
Richard Guenther committed -
2005-06-01 Richard Guenther <rguenth@gcc.gnu.org> * tree.h (fold_indirect_ref_1): Export from fold-const.c. * fold-const.c (fold_indirect_ref_1): No longer static. * tree-inline.c (copy_body_r): Use fold_indirect_ref_1 for folding, if possible. From-SVN: r100458
Richard Guenther committed -
* common.opt (fjump-tables): New. * doc/invoke.texi (-fno-jump-tables): Document. * stmt.c (expand_end_case_type): Do not emit jump tables unless flag_jump_tables. From-SVN: r100457
Joseph Myers committed -
PR libgcj/21753: * java/lang/natString.cc (substring): Changed sharing heuristic. From-SVN: r100454
Tom Tromey committed -
(bltgt, arm_buneq, arm_bltgt, sunordered, sordered, sungt, sunge) (sunlt, sunle): Enable patterns on VFP. * arm.md (attribute 'type'): Add new types - f_loads floadd, f_stores, f_stored, f_flag, f_cvt. (generic_sched): No-longer used for the arm1020e and arm1022e cores. Include arm1020e.md. * vfp.md (fmstat): New cpu unit. Add an exclusion set between it and the ds and fmac pipelines. Re-work all load and store patterns and all conversion patterns to use new attributes. Adjust reservation descriptions accordingly. * arm1020e.md: New file. * t-arm: Add dependency. From-SVN: r100452
Richard Earnshaw committed -
2005-06-01 Paul Thomas <pault@gcc.gnu.org> * fortran/Changelog: Entry for this morning's patch. From-SVN: r100450
Paul Thomas committed -
* except.c (struct eh_region): Kill unused fields. * basic-block.h (struct basic_block_def): Likewise. From-SVN: r100449
Jan Hubicka committed -
PR rtl-optimization/21767 * rtl.h (function_invariant_p): Re-add declaration. * reload1.c (function_invariant_p): No longer static. * ifcvt.c (dead_or_predicable): Remove REG_EQUAL notes that might have become invalid. From-SVN: r100448
J"orn Rennecke committed -
PR c/21536 PR c/20760 * gimplify.c (gimplify_decl_expr): Call gimplify_type_sizes on variable sizes types if a decl is a pointer to a VLA. (gimplify_type_sizes): Handle POINTER_TYPE and REFERENCE_TYPE. Call gimplify_type_sizes on aggregate fields. Prevent infinite recursion. * gcc.dg/20050527-1.c: New test. From-SVN: r100443
Jakub Jelinek committed -
From-SVN: r100442
Jakub Jelinek committed -
* config/i386/xmmintrin.h (_mm_setzero_ps, _mm_set_ss, _mm_set1_ps, _mm_set_ps, _mm_setr_ps): Add __extension__. * config/i386/emmintrin.h (_mm_set_sd, _mm_set1_pd, _mm_set_pd, _mm_setr_pd, _mm_setzero_pd, _mm_set_epi64x, _mm_set_epi64x, _mm_set_epi32, _mm_set_epi16, _mm_set_epi8, _mm_setzero_si128): Likewise. (_mm_clflush): Don't use return in void function. * gcc.dg/i386-sse-12.c: New test. From-SVN: r100439
Jakub Jelinek committed -
* config/i386/emmintrin.h (_mm_castpd_ps, _mm_castpd_si128, _mm_castps_pd, _mm_castps_si128, _mm_castsi128_ps, _mm_castsi128_pd): Use __inline instead of inline. From-SVN: r100438
Jakub Jelinek committed -
PR fortran/21729 * resolve.c (resolve_contained_fntype): Use sym->attr.untyped to avoid giving error multiple times. (resolve_entries): Don't error about BT_UNKNOWN here. (resolve_unknown_f): Capitalize IMPLICIT for consistency. (resolve_fntype): New function. (gfc_resolve): Call resolve_fntype. * gfortran.dg/implicit_5.f90: New test. From-SVN: r100437
Jakub Jelinek committed -
2005-06-01 Richard Guenther <rguenth@gcc.gnu.org> * fold-const.c (fold_binary): Fix types in strlen vs. zero comparison folding. From-SVN: r100436
Richard Guenther committed
-