Diego Novillo
89e80dd495
re PR tree-optimization/22550 (ICE in vrp_evaluate_conditional)
...
PR 22550
* tree-cfgcleanup.c (cleanup_tree_cfg_1): Extract from ...
(cleanup_tree_cfg): ... here.
Call cleanup_tree_cfg_1 until there are no more cleanups to
do.
testsuite/ChangeLog
PR 22550
* g++.dg/tree-ssa/pr22550.C: New test.
From-SVN: r102559
2005-07-29 12:32:00 -04:00
James A. Morrison
d2f3ffba9a
tree-vrp.c (compare_range_with_value): Return true or false for ~[VAL_1...
...
2005-07-29 James A. Morrison <phython@gcc.gnu.org>
* tree-vrp.c (compare_range_with_value): Return true or false
for ~[VAL_1, VAL_2] OP VAL if VAL_1 <= VAL <= VAL_2 for NE_EXPR and
EQ_EXPR respectively.
From-SVN: r102558
2005-07-29 15:22:07 +00:00
Kazu Hirata
9e4eb5598d
* decl.c, init.c, initialize.c: Fix comment typos.
...
From-SVN: r102556
2005-07-29 15:01:51 +00:00
Kazu Hirata
536fa7b7bb
cfg.c, [...]: Fix comment typos.
...
* cfg.c, tree-complex.c, config/frv/frv.c, config/i386/i386.c:
Fix comment typos.
From-SVN: r102555
2005-07-29 14:52:00 +00:00
Kazu Hirata
b2b800a052
* method.c: Fix a comment typo.
...
From-SVN: r102554
2005-07-29 14:45:54 +00:00
Diego Novillo
6a2cf9dce7
tree-ssa-dom.c (struct opt_stats_d): Add field num_iterations.
...
* tree-ssa-dom.c (struct opt_stats_d): Add field num_iterations.
(tree_ssa_dominator_optimize): Increment it.
(dump_dominator_optimization_stats): Print it.
From-SVN: r102553
2005-07-29 10:41:53 -04:00
H.J. Lu
216edb224f
re PR libstdc++/22284 (ia64 exception handling broken)
...
2005-07-29 H.J. Lu <hongjiu.lu@intel.com>
PR libstdc++/22284
* libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Revert
the change to info.ttype_base.
From-SVN: r102552
2005-07-29 06:35:59 -07:00
Richard Earnshaw
abf86bf227
re PR rtl-optimization/23117 (ICE on valid code while building libgcc)
...
Richard Earnshaw <richard.earnshaw@arm.com>
Steven Bosscher <stevenb@suse.de>
PR rtl-optimization/23117
* sched-rgn.c (add_branch_dependences): Handle COND_EXEC correctly
when head == tail. Tidy comment.
Co-Authored-By: Steven Bosscher <stevenb@suse.de>
From-SVN: r102551
2005-07-29 09:32:14 +00:00
Richard Henderson
37cf61167f
cse.c (exp_equiv_p): Special case CONST_DOUBLE.
...
* cse.c (exp_equiv_p): Special case CONST_DOUBLE.
* cselib.c (rtx_equal_for_cselib_p): Likewise.
* jump.c (rtx_renumbered_equal_p): Likewise.
* loop.c (rtx_equal_for_loop_p): Tidy and special case PC, CC0,
CONST_INT and CONST_DOUBLE.
(rtx_equal_for_prefetch_p): Likewise, plus LABEL_REF.
* reload.c (operands_match_p): Special case CONST_INT and
CONST_DOUBLE; check mode earlier.
From-SVN: r102548
2005-07-28 22:57:44 -07:00
Joseph Myers
13b22d3a86
re PR c/22240 (ICE with transparent unions, function pointers and -pedantic)
...
PR c/22240
* c-typeck.c (convert_for_assignment): Do not check
DECL_IN_SYSTEM_HEADER on NULL fundecl.
testsuite:
* gcc.dg/transparent-union-4.c: New test.
From-SVN: r102541
2005-07-29 03:46:50 +01:00
Joseph Myers
ca8bdb78ea
re PR c/22192 (Rejection of valid array declaration.)
...
PR c/22192
* c-typeck.c (composite_type): Prefer constant size arrays to
VLAs.
testsuite:
* gcc.dg/c99-vla-2.c: New test.
From-SVN: r102540
2005-07-29 03:42:19 +01:00
Joseph Myers
b608d27a8e
re PR middle-end/21720 (GCC incorrectly rounds hex floats)
...
PR c/21720
* real.c (real_from_string): Set last bit if there is a nonzero
hex digit beyond GCC's internal precision.
testsuite:
* gcc.dg/hex-round-1.c: New test.
From-SVN: r102539
2005-07-29 02:24:38 +01:00
Richard Henderson
a560c83ad5
re PR rtl-optimization/22619 (Compilation failure for real_const_1.f and real_const_2.f90)
...
PR rtl-opt/22619
* cfgcleanup.c (try_forward_edges): Watch out for end of
insn chain.
From-SVN: r102536
2005-07-28 17:45:57 -07:00
GCC Administrator
7c4b98b5f1
Daily bump.
...
[[Split portion of a mixed commit.]]
From-SVN: r102532.2
2005-07-29 00:16:31 +00:00
Steven Bosscher
7e6de2a590
* trans-types.h (gfc_array_range_type): Add missing GTY decl for this.
...
From-SVN: r102529
2005-07-29 00:02:38 +00:00
James E Wilson
66f33c03f3
Remove misleading use of the word "all".
...
PR c/23106
* doc/invoke.texi (Wstrict-aliasing=2): Fix misleading wording.
From-SVN: r102528
2005-07-28 16:37:18 -07:00
Jan Hubicka
8a76829ccf
Makefile.in (rtl-profile.o): Kill all traces of it.
...
* Makefile.in (rtl-profile.o): Kill all traces of it.
* common.opt (fspeculative-prefetching, ftree-based-profiling): Kill.
* coverage.h (rtl_coverage_counter_ref): Kill.
* opts.c (flag_speculative_prefetching_set): Kill.
(flag_loop_optimize_set): New.
(common_handle_option): Disable loop optimizer when profiling;
do not handle speculative prefetching.
* passes.c (init_optimization_passes): Replace pass_profiling combo
by branch_prob pass.
* profile.c (compute_value_histograms): Update for simplified value
profiles.
(rtl_register_profile_hooks): Kill.
(pass_profiling): Kill.
(rest_of_handle_branch_prob): Do not profile.
* toplev.c (process_options): Remove speculative prefetching.
* toplev.h (flag_tree_based_profiling): Kill.
* tree-profile.c (prepare_instrumented_value,
tree_gen_interval_profiler, tree_gen_pow2_profiler,
tree_gen_one_value_profiler, do_tree_profiling): Update for
simplified datastructures.
* value-prof.c: Add comment that speculative prefetching was dropped;
update rest of file for simplified datastructures.
(NOPREFETCH_RANGE_MIN, NOPREFETCH_RANGE_MAX,
rtl_divmod_values_to_profile, insn_prefetch_values_to_profile,
find_mem_reference_1, find_mem_reference_2, find_mem_reference,
rtl_values_to_profile, rtl_divmod_fixed_value, rtl_mod_pow2,
rtl_mod_subtract, gen_speculative_prefetch,
rtl_divmod_fixed_value_transform, rtl_mod_pow2_value_transform,
rtl_mod_subtract_transform, speculative_prefetching_transform): Kill.
(gate_handle_value_profile_transformations,
rest_of_handle_value_profile_transformations,
pass_value_profile_transformations): Kill.
* value-prof.h (histogram_value_t): Remove IL based unions.
(rtl_register_value_prof_hooks, rtl_register_profile_hooks,
rtl_profile_hooks): Remove hooks.
* invoke.texi (-ftree-based-profiling, -fspeculative-prefetching): Kill.
* inliner-1.c: Do not dump everything.
* tree-prof.exp: Do not pass -ftree-based-profiling.
* bprob.exp: Likewise.
From-SVN: r102522
2005-07-28 21:48:38 +00:00
Jan Hubicka
c5a4444c50
cgraph.c (cgraph_clone_edge): New UPDATE_ORIGINAL argument.
...
* cgraph.c (cgraph_clone_edge): New UPDATE_ORIGINAL argument.
(cgraph_clone_node): Likewise.
* cgraph.h (cgraph_clone_edge): Update prototype.
(cgraph_clone_node): Likewise.
* ipa-inline.c (cgraph_clone_inlined_nodes): Update call of
cgraph_clone_node.
(lookup_recursive_calls): Consider profile.
(cgraph_decide_recursive_inlining): Fix updating; use new
probability argument; use profile.
* params.def (PARAM_MIN_INLINE_RECURSIVE_PROBABILITY): New.
* tree-inline.c (copy_bb): Update clal of clone_edge.
* tree-optimize.c (tree_rest_of_compilation): UPdate cal of clone_node.
* invoke.texi (min-inline-recursive-probability): Document.
From-SVN: r102521
2005-07-28 21:45:27 +00:00
Jan Hubicka
260883c898
* gcc.dg/tree-prof/update-loopch.c: Fix thinkos.
...
From-SVN: r102520
2005-07-28 21:40:14 +00:00
Richard Henderson
407ab83ba3
Annotate for PR.
...
From-SVN: r102518
2005-07-28 14:32:14 -07:00
Gerald Pfeifer
ccf548a7c0
* doc/install.texi (Configuration): Update Valgrind homepage.
...
From-SVN: r102514
2005-07-28 21:29:09 +00:00
Richard Henderson
2c97f8e4f3
cfgrtl.c (rtl_merge_blocks): Call maybe_remove_eh_handler on labels we want to delete.
...
* cfgrtl.c (rtl_merge_blocks): Call maybe_remove_eh_handler on
labels we want to delete.
(cfg_layout_merge_blocks): Likewise.
From-SVN: r102512
2005-07-28 14:11:30 -07:00
Richard Henderson
b188ebb19e
re PR target/17692 (ICE splitting sse conditional move)
...
PR target/17692
* config/i386/i386.c (ix86_split_sse_movcc): Emit DELETED note
when expanding to nothing.
From-SVN: r102509
2005-07-28 13:51:18 -07:00
Diego Novillo
baa923061b
expr.c (expand_load_internal): Fix missing parens in predicate.
...
* expr.c (expand_load_internal): Fix missing parens in
predicate.
From-SVN: r102504
2005-07-28 14:28:12 -04:00
Mark Mitchell
796cccfcc3
re PR c++/22545 (ICE with pointer to class member & user defined conversion operator)
...
PR c++/22545
* call.c (add_builtin_candidate): Adjust for changes in
representation of pointer-to-member types.
PR c++/22545
* g++.dg/expr/ptrmem7.C: New test.
From-SVN: r102500
2005-07-28 18:08:59 +00:00
Mike Stump
8d039470f6
pt.c (check_explicit_specialization): Add visibility logic.
...
* pt.c (check_explicit_specialization): Add visibility logic.
(lookup_template_class): Likewise.
(instantiate_class_template): Likewise.
* g++.old-deja/g++.mike/visibility-1.C: New test.
Radar 4182971.
From-SVN: r102499
2005-07-28 18:06:47 +00:00
Josh Conner
facc20ee9b
ipa-inline.c (update_caller_keys): Fix estimated_growth caching.
...
* ipa-inline.c (update_caller_keys): Fix estimated_growth caching.
(cgraph_decide_inlining_of_small_functions): Likewise.
From-SVN: r102498
2005-07-28 17:18:23 +00:00
Josh Conner
9de21a2340
ipa-inline.c (cgraph_edge_badness): Update comments.
...
* ipa-inline.c (cgraph_edge_badness): Update comments. Invert shift
direction of badness if negative.
(cgraph_default_inline_p): Add reason to parameters, and assign it
a value.
(cgraph_decide_inlining_of_small_functions): New parameter in call
to cgraph_default_inline_p.
(cgraph_decide_inlining_incrementally): Likewise.
* cgraphunit.c (decide_is_function_needed): Likewise.
* cgraph.h (cgraph_default_inline_p): Likewise.
From-SVN: r102497
2005-07-28 17:14:57 +00:00
Volker Reichelt
206048bd41
builtins.c: Fix comment typo(s).
...
* builtins.c: Fix comment typo(s).
* genautomata.c: Likewise.
* gimplify.c: Likewise.
* tree-dfa.c: Likewise.
* tree-flow-inline.h: Likewise.
* tree-into-ssa.c: Likewise.
* tree-ssa-alias.c: Likewise.
* tree-ssa-ccp.c: Likewise.
* tree-ssa-copy.c: Likewise.
* tree-ssa-dce.c: Likewise.
* tree-ssa-dom.c: Likewise.
* tree-ssa-operands.c: Likewise.
* tree-tailcall.c: Likewise.
* tree-vectorizer.c: Likewise.
* tree-vrp.c: Likewise.
* tree.c: Likewise.
From-SVN: r102491
2005-07-28 16:30:00 +00:00
Richard Sandiford
c987183907
re PR c/20187 (wrong code for ((unsigned char)(unsigned long long)((a?a:1)&(a*b)))?0:1))
...
PR c/20187
* gcc.c-torture/execute/pr20187-1.c: New test.
From-SVN: r102490
2005-07-28 16:27:22 +00:00
Jeff Law
d579f20bb1
tree-vrp.c (test_for_singularity): Extracted from ...
...
* tree-vrp.c (test_for_singularity): Extracted from ...
(simplify_cond_using_ranges): Attempt to simplify a relational
test to NE_EXPR. Dump information when a COND_EXPR is simplified.
* gcc.dg/tree-ssa/vrp17.c: Update expected output.
* gcc.dg/tree-ssa/vrp18.c: New test.
From-SVN: r102489
2005-07-28 10:12:03 -06:00
Dorit Nuzman
3353ebf08a
* gcc.dg/vect/vect-reduc-1char.c: Fix data to fit in char.
...
From-SVN: r102488
2005-07-28 15:27:25 +00:00
Dorit Nuzman
5bb1823dd4
re PR tree-optimization/22506 (ICE with -ftree-vectorize in var_ann, at tree-flow-inline.h:115)
...
PR tree-optimization/22506
* tree-vectorizer.c (update_phi_nodes_for_guard2): Skip loop-closed
phis whose argument is constant.
From-SVN: r102487
2005-07-28 15:12:49 +00:00
Andrew Haley
0d9f15f1a0
expr.c (expand_load_internal): Convert to destination type.
...
2005-07-28 Andrew Haley <aph@redhat.com>
* expr.c (expand_load_internal): Convert to destination type.
From-SVN: r102486
2005-07-28 15:01:33 +00:00
Andrew Haley
c6e5d1af3f
expr.c (expand_load_internal): Convert to destination type.
...
2005-07-15 Andrew Haley <aph@redhat.com>
* expr.c (expand_load_internal): Convert to destination type.
From-SVN: r102485
2005-07-28 15:00:53 +00:00
Jakub Jelinek
9603f2d849
re PR target/21149 (invalid code generation for _mm_movehl_ps SSE intrisinc)
...
PR target/21149
* gcc.target/i386/sse-3.c: New test.
From-SVN: r102482
2005-07-28 16:38:13 +02:00
Volker Reichelt
dc5fef6a47
* include/std/std_valarray.h: Fix grammar in comments.
...
From-SVN: r102479
2005-07-28 12:23:53 +00:00
J"orn Rennecke
b92ba6ffd9
re PR rtl-optimization/18992 (delete_trivially_dead_insns made ineffective for two-address targets)
...
PR rtl-optimization/18992
Back out this patch:
2003-10-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
PR optimization/12142
* cse.c (count_reg_usage): In a SET with a REG SET_DEST, count the
uses of the register in the SET_SRC. Remove unnecessary argument.
Replace it with this:
* cse.c (count_reg_usage): In INSN, JUMP_INSN and CALL_INSN cases,
if flag_non_call_exceptions is set and the insn may trap, pass
pc_rtx as dest for recursion.
In SET_SRC part of SET case, if dest is already set, pass it down
unchanged.
From-SVN: r102478
2005-07-28 12:55:56 +01:00
Richard Sandiford
7da3fe7701
mips32-dsp.c: Use -march=mips32 instead of -mips32.
...
* gcc.target/mips/mips32-dsp.c: Use -march=mips32 instead of -mips32.
* gcc.target/mips/mips32-dsp-type.c: Likewise.
From-SVN: r102475
2005-07-28 08:17:27 +00:00
Richard Sandiford
fea11803ba
Fix filename in last commit
...
From-SVN: r102474
2005-07-28 08:14:15 +00:00
Richard Sandiford
378ba99de6
re PR c/22589 (ICE casting to long long)
...
PR c/22589
* gcc.c-torture/compile/pr22589.c: New test.
From-SVN: r102467
2005-07-28 08:00:57 +00:00
Jan Hubicka
09bac500fc
cfg.c (update_bb_profile_for_threading): Use RDIV.
...
* cfg.c (update_bb_profile_for_threading): Use RDIV.
(scale_bbs_frequencies_int): Likewise, assert for possible overflow.
(scale_bbs_frequencies_gcov_type): Be more curefull about overflows and
roundoff errors.
* tree-cfg.c (tree_duplicate_sese_region): Use counts for updating
profile when available.
* update-loopch.c: New testcase.
From-SVN: r102466
2005-07-28 07:41:29 +00:00
Jan Beulich
a71aef0bb3
ia64.c (ia64_load_pair_ok): New.
...
gcc/
2005-07-28 Jan Beulich <jbeulich@novell.com>
* config/ia64/ia64.c (ia64_load_pair_ok): New.
(ia64_print_operand): Describe and handle 'X'.
(ia64_register_move_cost): Also handle FP_REGS.
(ia64_preferred_reload_class): Likewise.
(ia64_secondary_reload_class): Likewise.
(ia64_dependencies_evaluation_hook): New local variable c. Initialize
it. Also check for ITANIUM_CLASS_FLDP.
* config/ia64/ia64.h (FP_REGNO_P): New.
(HARD_REGNO_MODE_OK): Remove explusion of TImode.
(reg_class): Add FP_REGS.
(REG_CLASS_NAMES): Adjust for it.
(REG_CLASS_CONTENTS): Likewise.
(REGNO_REG_CLASS): Use FP_REGS where appropriate.
(REG_CLASS_FROM_LETTER): Handle 'x'.
(CLASS_MAX_NREGS): Handle FP_REGS.
(MEMORY_MOVE_COST): Likewise.
* config/ia64/ia64.md (itanium_class): Add fldp.
(type): Handle fldp.
(movti_internal): More allowable operand combinations. Use ldfp8 when
splitting unnecessary. Remove predicable attribute. Adjust
itanium_class attribute.
(smuldi3_highpart): Remove outdated comment.
(mulditi3, umulditi3, rotlti3): New expanders.
(addti3, subti3, mulditi3_internal, umulditi3_internal, negti2, rotlti3_internal): New insns.
(absti2): Disabled new insn for future reference.
Respective new splitters.
* config/ia64/itanium1.md (1_fldp, 1b_fldp): New insn reservations.
* config/ia64/itanium2.md (2_fldp, 2b_fldp): Likewise.
* config/ia64/ia64-protos.h (ia64_load_pair_ok): New.
From-SVN: r102463
2005-07-28 06:58:58 +00:00
Kenneth Zadeck
9e7705cbd1
fixed spelling error.
...
From-SVN: r102461
2005-07-28 04:57:07 +00:00
Andrew Pinski
b8039bde3e
f95-lang.c (language_function): Remove named_labels...
...
2005-07-28 Andrew Pinski <pinskia@physics.uc.edu>
* fortran/f95-lang.c (language_function): Remove
named_labels, shadowed_labels, returns_value, returns_abnormally,
warn_about_return_type, and extern_inline fields.
(named_labels): Remove variable.
(gfc_init_decl_processing): Remove setting of named_labels.
From-SVN: r102460
2005-07-27 21:47:23 -07:00
James A. Morrison
77d1d8e01f
re PR rtl-optimization/23047 (Combine ignores flag_wrapv)
...
2005-07-27 James A. Morrison <phython@gcc.gnu.org>
PR rtl-optimization/23047
* simplify-rtx.c (simplify_const_relational_operation): Respect
flag_wrapv for comparisons with ABS.
From-SVN: r102459
2005-07-28 04:40:05 +00:00
James A. Morrison
ff08cbee5d
re PR tree-optimization/22493 (with -fwrapv -INT_MIN is still not positive)
...
2005-07-27 James A. Morrison <phython@gcc.gnu.org>
PR tree-optimization/22493
* tree-vrp.c (extract_range_from_unary_expr): Deal with -fwrapv and
VR_ANTI_RANGEs properly for NEGATE_EXPRs and ABS_EXPRs.
From-SVN: r102458
2005-07-28 04:35:01 +00:00
Ben Elliston
b089e33adc
* MAINTAINERS: Update for removed CPU targets.
...
From-SVN: r102457
2005-07-28 13:47:15 +10:00
Aldy Hernandez
e3bdaa4127
all-builtin-read8.c: Delete.
...
* gcc.target/frv/all-builtin-read8.c: Delete.
* gcc.target/frv/all-builtin-read16.c: Delete.
* gcc.target/frv/all-builtin-read32.c: Delete.
* gcc.target/frv/all-builtin-read64.c: Delete.
* gcc.target/frv/all-builtin-write8.c: Delete.
* gcc.target/frv/all-builtin-write16.c: Delete.
* gcc.target/frv/all-builtin-write32.c: Delete.
* gcc.target/frv/all-builtin-write64.c: Delete.
* gcc.target/frv/all-read-write-1.c: New.
From-SVN: r102456
2005-07-28 02:05:54 +00:00
Aldy Hernandez
38c28a2564
frv.opt (moptimize-membar): New.
...
* config/frv/frv.opt (moptimize-membar): New.
* doc/invoke.texi: Document -moptimize-membar and its inverse.
* config/frv/frv.h: Remove machine_function definition.
* config/frv/frv.c (struct frv_io): New.
(struct machine_function): Moved from frv.h. Add has_membar_p.
(frv_same_doubleword_p, frv_io_fixed_order_p, frv_io_union)
(frv_extract_membar, frv_io_check_address, frv_io_handle_set)
(frv_io_handle_use_1, frv_io_handle_use, frv_optimize_membar_local)
(frv_optimize_membar_global, frv_optimize_membar): New functions.
(frv_reorg): Call frv_optimize_membar when appropriate.
(bdesc_loads, bdesc_stores): Use the membar code as the icode field.
(frv_expand_builtin): Adjust calls accordingly.
(frv_io_address_cookie): New function.
(frv_expand_load_builtin, frv_expand_store_builtin): Emit a normal
load or store rather than a special insn. Add ccnstant address and
io-type operands to the membar.
(frv_ifcvt_modify_tests): Unsign regno.
(frv_ifcvt_modify_tests): Same.
* config/frv/frv.md: Remove UNSPEC_BUILTIN_{LOAD,STORE}. Change
UNSPEC_OPTIONAL_MEMBAR constant.
(builtin_read_<mode>): Delete.
(builtin_write_<mode>): Delete.
("optional_membar_<mode>"): Add operand.
* testsuite/gcc.target/frv/all-builtin-read8.c: Delete.
* testsuite/gcc.target/frv/all-builtin-read16.c: Delete.
* testsuite/gcc.target/frv/all-builtin-read32.c: Delete.
* testsuite/gcc.target/frv/all-builtin-read64.c: Delete.
* testsuite/gcc.target/frv/all-builtin-write8.c: Delete.
* testsuite/gcc.target/frv/all-builtin-write16.c: Delete.
* testsuite/gcc.target/frv/all-builtin-write32.c: Delete.
* testsuite/gcc.target/frv/all-builtin-write64.c: Delete.
* testsuite/gcc.target/frv/all-read-write-1.c: New.
From-SVN: r102455
2005-07-28 02:03:45 +00:00