Commit Graph

71080 Commits

Author SHA1 Message Date
Jakub Jelinek
090037799c string.c (find_option): Change 3rd argument to const st_option *.
* runtime/string.c (find_option): Change 3rd argument to
	const st_option *.
	* libgfortran.h (find_option): Likewise.
	* runtime/environ.c (rounding, precision, signal_choices): Constify.
	(init_choice, show_choice): Change 2nd argument to const choice *.
	* io/open.c (access_opt, action_opt, blank_opt, delim_opt, form_opt,
	position_opt, status_opt, pad_opt): Constify.
	* io/transfer.c (advance_opt): Likewise.
	* io/inquire.c (undefined): Likewise.
	* io/close.c (status_opt): Likewise.
	* io/format.c (posint_required, period_required, nonneg_required,
	unexpected_element, unexpected_end, bad_string, bad_hollerith,
	reversion_error): Likewise.
	* io/unix.c (yes, no, unknown): Change from const char *
	into const char [].

From-SVN: r104773
2005-09-29 15:53:59 +02:00
Steven Bosscher
1ebd8d9ac1 re PR tree-optimization/23911 (Failure to propagate constants from a const initializer for _Complex)
gcc/
	PR tree-optimization/23911
	* tree-ssa-ccp.c (fold_const_aggregate_ref): Handle REALPART_EXPR
	and IMAGPART_EXPR too.

testsuite/
	* gcc.dg/pr23911.c: New test.

From-SVN: r104771
2005-09-29 12:25:10 +00:00
Uros Bizjak
577b2a064e Added missing PR number to
2005-09-20  Richard Henderson  <rth@redhat.com>

From-SVN: r104765
2005-09-29 08:19:02 +02:00
Andreas Tobler
a0bb10e784 configure.ac: Fix typo.
2005-09-29  Andreas Tobler  <a.tobler@schweiz.ch>

	* configure.ac: Fix typo.
	* configure: Regenerate.

From-SVN: r104764
2005-09-29 07:00:39 +02:00
Mark Mitchell
0f8594eee9 re PR middle-end/17886 (variable rotate and unsigned long long rotate should be better optimized)
PR 17886
	* expmed.c (expand_shift): Move logic to reverse rotation
	direction when 	rotating by constants ...
	* optabs.c (expand_binop): ... here.
	* config/i386/i386.md (rotrdi3): Handle 32-bit mode.
	(ix86_rotrdi3): New pattern.
	(rotldi3): Handle 32-bit mode.
	(ix86_rotldi3): New pattern.

From-SVN: r104761
2005-09-29 03:31:23 +00:00
Geoffrey Keating
4bc7cba795 Index: ChangeLog
2005-09-28  Geoffrey Keating  <geoffk@apple.com>

	* Makefile.tpl (BASE_TARGET_EXPORTS): Add LIPO, STRIP.
	(LIPO_FOR_TARGET): New.
	(CONFIGURED_LIPO_FOR_TARGET): New.
	(USUAL_LIPO_FOR_TARGET): New.
	(STRIP_FOR_TARGET): New.
	(CONFIGURED_STRIP_FOR_TARGET): New.
	(USUAL_STRIP_FOR_TARGET): New.
	* Makefile.def (flags_to_pass): Add LIPO_FOR_TARGET and
	STRIP_FOR_TARGET.
	* configure.in: Set LIPO_FOR_TARGET, STRIP_FOR_TARGET,
	CONFIGURED_LIPO_FOR_TARGET, CONFIGURED_STRIP_FOR_TARGET.
	* Makefile.in: Regenerate.
	* configure.in: Regenerate.

Index: gcc/ChangeLog
2005-09-28  Geoffrey Keating  <geoffk@apple.com>

	* Makefile.in: Export LIPO_FOR_TARGET, STRIP_FOR_TARGET.
	(stage1-start): Delete old libgcc and libunwind before moving
	anything into the stage directory.
	(stage2-start): Likewise.
	(stage3-start): Likewise.
	(stage4-start): Likewise.
	(stageprofile-start): Likewise.
	(stagefeedback-start): Likewise.
	* config.gcc (*-*-darwin*): Automatically use CPU-specific darwin.h
	header in tm_file and CPU-specific t-darwin in tmake_file.
	(i[34567]86-*-darwin*): Don't change tm_file.
	(powerpc-*-darwin*): Don't change tm_file or tmake_file.
	* config/darwin.h (REAL_LIBGCC_SPEC): Rewrite to use proper libgcc
	shared library stub for target OS version.
	* config/t-slibgcc-darwin (SHLIB_SOLINK): Delete.
	(SHLIB_LINK): Don't make SHLIB_SOLINK.
	(SHLIB_INSTALL): Don't install SHLIB_SOLINK.
	(libgcc_s.%.dylib): New.
	(LIBGCC): Define.
	(install-darwin-libgcc-stubs): New.
	(INSTALL_LIBGCC): New append.
	* config/i386/darwin-libgcc.10.4.ver: New.
	* config/i386/darwin-libgcc.10.5.ver: New.
	* config/i386/t-darwin: New.
	* config/rs6000/darwin-libgcc.10.4.ver: New.
	* config/rs6000/darwin-libgcc.10.5.ver: New.
	* config/rs6000/darwin.h (REAL_LIBGCC_SPEC): Delete.
	* config/rs6000/t-darwin (SHLIB_VERPFX): Define.

From-SVN: r104756
2005-09-29 00:49:56 +00:00
Geoffrey Keating
23ed23848b t-darwin8: Uncomment contents, allow -m64 multilib to be built.
* config/rs6000/t-darwin8: Uncomment contents, allow -m64
	multilib to be built.

From-SVN: r104755
2005-09-29 00:42:21 +00:00
GCC Administrator
3f05a925b4 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r104752.2
2005-09-29 00:18:51 +00:00
Alan Modra
c22e62a672 re PR target/24102 (floatdisf2_internal2 broken)
PR target/24102
	* config/rs6000/rs6000.md (floatdisf2_internal2): Correct range
	check for numbers that need no bit twiddle.

From-SVN: r104750
2005-09-29 09:46:10 +09:30
Geoffrey Keating
040b1c5a5c Index: ChangeLog
2005-09-28  Geoffrey Keating  <geoffk@apple.com>

	* Makefile.tpl (BASE_TARGET_EXPORTS): Add LIPO, STRIP.
	(LIPO_FOR_TARGET): New.
	(CONFIGURED_LIPO_FOR_TARGET): New.
	(USUAL_LIPO_FOR_TARGET): New.
	(STRIP_FOR_TARGET): New.
	(CONFIGURED_STRIP_FOR_TARGET): New.
	(USUAL_STRIP_FOR_TARGET): New.
	* Makefile.def (flags_to_pass): Add LIPO_FOR_TARGET and
	STRIP_FOR_TARGET.
	* configure.in: Set LIPO_FOR_TARGET, STRIP_FOR_TARGET,
	CONFIGURED_LIPO_FOR_TARGET, CONFIGURED_STRIP_FOR_TARGET.
	* Makefile.in: Regenerate.
	* configure.in: Regenerate.

Index: gcc/ChangeLog
2005-09-28  Geoffrey Keating  <geoffk@apple.com>

	* Makefile.in: Export LIPO_FOR_TARGET, STRIP_FOR_TARGET.
	(stage1-start): Delete old libgcc and libunwind before moving
	anything into the stage directory.
	(stage2-start): Likewise.
	(stage3-start): Likewise.
	(stage4-start): Likewise.
	(stageprofile-start): Likewise.
	(stagefeedback-start): Likewise.
	* config.gcc (*-*-darwin*): Automatically use CPU-specific darwin.h
	header in tm_file and CPU-specific t-darwin in tmake_file.
	(i[34567]86-*-darwin*): Don't change tm_file.
	(powerpc-*-darwin*): Don't change tm_file or tmake_file.
	* config/darwin.h (REAL_LIBGCC_SPEC): Rewrite to use proper libgcc
	shared library stub for target OS version.
	* config/t-slibgcc-darwin (SHLIB_SOLINK): Delete.
	(SHLIB_LINK): Don't make SHLIB_SOLINK.
	(SHLIB_INSTALL): Don't install SHLIB_SOLINK.
	(libgcc_s.%.dylib): New.
	(LIBGCC): Define.
	(install-darwin-libgcc-stubs): New.
	(INSTALL_LIBGCC): New append.
	* config/i386/darwin-libgcc.10.4.ver: New.
	* config/i386/darwin-libgcc.10.5.ver: New.
	* config/i386/t-darwin: New.
	* config/rs6000/darwin-libgcc.10.4.ver: New.
	* config/rs6000/darwin-libgcc.10.5.ver: New.
	* config/rs6000/darwin.h (REAL_LIBGCC_SPEC): Delete.
	* config/rs6000/t-darwin (SHLIB_VERPFX): Define.

From-SVN: r104747
2005-09-28 23:50:06 +00:00
Geoffrey Keating
c7d0307027 locks.h: Use 64-bit versions of primitives when __LP64__ is defined rather than...
* sysdep/powerpc/locks.h: Use 64-bit versions of primitives when
	__LP64__ is defined rather than __powerpc64__.
	(compare_and_swap): 'ret' is an obj_addr_t not just an int.
	(compare_and_swap_release): Likewise.

From-SVN: r104746
2005-09-28 22:46:48 +00:00
Paul Brook
107bcc1133 fpgnulib.c (__extendsfdf2, [...]): Handle denormals.
2005-09-28  Paul Brook  <paul@codesourcery.com>

	* config/m68k/fpgnulib.c (__extendsfdf2, __truncdfsf2): Handle
	denormals.

From-SVN: r104745
2005-09-28 22:12:55 +00:00
David Daney
e7d15badcc * HACKING: Update instructions for classpath import.
From-SVN: r104744
2005-09-28 21:43:23 +00:00
Richard Guenther
9b14a362a3 re PR tree-optimization/23853 (ICE: in tree_low_cst, at tree.c:4270)
2005-09-28  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/23853
	* tree-vect-analyze.c (vect_compute_data_ref_alignment): Use
	host_integerp to verify misalignment value.

From-SVN: r104743
2005-09-28 21:30:40 +00:00
Mark Mitchell
75b1574e5a * g++.dg/opt/pr19650.C: Use -w -fpermissive.
From-SVN: r104742
2005-09-28 20:43:47 +00:00
Richard Henderson
02ee605c6c builtins.c (get_builtin_sync_mode): New.
* builtins.c (get_builtin_sync_mode): New.
        (expand_builtin_sync_operation): Pass in mode argument.
        (expand_builtin_compare_and_swap): Likewise.
        (expand_builtin_lock_test_and_set): Likewise.
        (expand_builtin_lock_release): Likewise.
        (expand_builtin): Update to match.

From-SVN: r104741
2005-09-28 11:16:54 -07:00
Nick Clifton
7d866c52c5 config/v850/v850.h (GO_IF_LEGITIMATE_ADDRESS): Tidy up formatting.
Add check to PLUS case to ensure that the offset is within an acceptable range.

config/v850/v850.md (casesi): Disable the generation of the switch pattern as
it is not being handled properly at the moment.

From-SVN: r104736
2005-09-28 15:56:53 +00:00
Mark Mitchell
9f4a5c9a63 re PR c++/16782 (Accepts qualified member function declaration in class)
PR c++/16782
	* decl.c (grokdeclarator): Always pedwarn about overqualified
	member names.

	PR c++/16782
	* g++.dg/parse/qualified4.C: New test.
	* g++.old-deja/g++.law/static-mem5.C: Use -w -fpermissive.
	* g++.old-deja/g++.mike/p8154.C: Likewise.

From-SVN: r104733
2005-09-28 14:50:17 +00:00
Nick Clifton
1b0792ddf7 config/v850/lib1funcs.asm (___ucmpdi2): Correct jump instruction for when the
high words are identical.

From-SVN: r104730
2005-09-28 09:32:54 +00:00
Richard Henderson
241de8a07a * pretty-print.c (pp_base_format): Fix typo for %>.
From-SVN: r104728
2005-09-27 23:53:12 -07:00
GCC Administrator
7797e3385c Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r104716.2
2005-09-28 00:16:17 +00:00
Mark Mitchell
c43e95f8f5 re PR c++/22147 (ICE in get_bindings)
PR c++/22147
	* name-lookup.c (maybe_process_template_type_declaration): Don't
	treat forward declarations of classes as templates just because
	we're processing_template_decl.
	* pt.c (tsubst_decl): Clear DECL_TEMPLATE_INFO for friend
	functions.

	PR c++/22147
	* g++.dg/template/friend37.C: New test.
	* g++.dg/parse/crash28.C: Adjust error markers.

From-SVN: r104713
2005-09-27 23:31:57 +00:00
Jakub Jelinek
57f0d086d5 re PR fortran/18518 (equivalenced variables are not saved)
PR fortran/18518
	* trans-common.c (build_equiv_decl): Add IS_SAVED argument.
	If it is true, set TREE_STATIC on the decl.
	(create_common): If any symbol in equivalence has SAVE attribute,
	pass true as last argument to build_equiv_decl.

	* gfortran.fortran-torture/execute/save_2.f90: New decl.

From-SVN: r104712
2005-09-27 23:46:14 +02:00
Devang Patel
93954fcc89 re PR tree-optimization/23625 (ICE: in bsi_after_labels, at tree-flow-inline.h:758)
PR tree-optimization/23625
     * tree-flow-inline.h (bsi_after_labels): Remove, first statement is
     LABEL_EXPR, assertion check.

     * gcc.dg/PR23625.c: New test.

From-SVN: r104711
2005-09-27 14:44:55 -07:00
Steve Ellcey
118ea208fa re PR target/23552 (FAIL: gfortran.dg/large_real_kind_1.f90)
PR target/23552
	* acinclude.m4 (LIBGFOR_CHECK_FOR_BROKEN_ISFINITE): New.
	(LIBGFOR_CHECK_FOR_BROKEN_ISNAN): New.
	(LIBGFOR_CHECK_FOR_BROKEN_FPCLASSIFY): New.
	* configure.ac (LIBGFOR_CHECK_FOR_BROKEN_ISFINITE): Add use.
	(LIBGFOR_CHECK_FOR_BROKEN_ISNAN): Add use.
	(LIBGFOR_CHECK_FOR_BROKEN_FPCLASSIFY): Add use.
	* configure: Regenerate.
	* config.h.in: Regenerate.
	* libgfortan.h (isfinite): undef if broken, set if needed.
	(isnan): undef if broken, set if needed.
        (fpclassify): undef if broken, set if needed.
	* io/write.c: Remove TODO comment about working isfinite.
	* intrinsics/c99_functions.c (round): Use isfinite instead
	of fpclassify.
	* intrinsics/c99_functions.c (roundf): Ditto.

From-SVN: r104710
2005-09-27 21:12:52 +00:00
J"orn Rennecke
ca7a5aec06 optabs.c (no_conflict_move_test): Check if a result of a to-be-moved insn would be clobbered by an originally...
* optabs.c (no_conflict_move_test): Check if a result of a
	to-be-moved insn would be clobbered by an originally
	preceding insn.

From-SVN: r104709
2005-09-27 22:09:28 +01:00
Uros Bizjak
dbc6e7b800 pr22585.c: Run on 32-bit x86 only.
2005-09-27  Uros Bizjak  <uros@kss-loka.si>

	* gcc.target/i386/pr22585.c: Run on 32-bit x86 only.
	* gcc.target/i386/builtin-apply-mmx.c: Run on 32-bit x86 only.

From-SVN: r104708
2005-09-27 21:04:42 +00:00
Tom Tromey
b9e6a2e5de re PR libgcj/23367 (_Jv_FindMethodInCache is not thread-safe)
PR libgcj/23367:
	* include/jvm.h (_Jv_FreeMethodCache): Declare.
	* java/lang/natClass.cc (MCACHE_SIZE): Conditional on HAVE_TLS.
	(struct _Jv_mcache): Likewise.
	(method_cache): Likewise.
	(_Jv_FindMethodInCache): Do nothing unless TLS is available.
	(_Jv_AddMethodToCache): Likewise.
	(_Jv_FreeMethodCache): New function.
	* java/lang/natThread.cc (finish_): Call _Jv_FreeMethodCache.
	* aclocal.m4, configure, include/config.h.in: Rebuilt.
	* configure.ac: Invoke GCC_CHECK_TLS.

From-SVN: r104707
2005-09-27 20:03:09 +00:00
Tom Tromey
ab3fa9d344 configure, [...]: Rebuilt.
* configure, Makefile.in: Rebuilt.
	* sources.am: Rebuilt.
	* scripts/makemake.tcl (emit_bc_rule): Special-case qt.
	* configure.ac (TOOLKIT): Handle Qt peers properly.

From-SVN: r104706
2005-09-27 18:51:40 +00:00
Jeff Law
f20731b7ca passes.c (init_optimization_passes): Replace copy propagation passes immediately after DOM with phi-only copy...
* passes.c (init_optimization_passes): Replace copy propagation
        passes immediately after DOM with phi-only copy propagation
        pases.  Add phi-only copy propagation pass after first DOM pass.
        * tree-pass.h (pass_phi_only_copy_prop): Declare.
        * tree-ssa-copy.c (init_copy_prop): Accept new PHI_ONLY argument.
        If true, then mark all non-control statements with DONT_SIMULATE_AGAIN.
        (execute_copy_prop): Accept new PHI_ONLY argument.  Pass it along
        to init_copy_prop.  Callers updated.
        (do_phi_only_copy_prop): New function.
        (pass_phi_only_copy_prop): New pass descriptor.

From-SVN: r104705
2005-09-27 12:47:27 -06:00
Nick Clifton
3542b7ccd2 * libgcc2.c (__popcount_tab): Remove redundant prototype.
From-SVN: r104702
2005-09-27 17:11:39 +00:00
Jason Merrill
86ad3aa989 re PR c++/13764 (c++ front-end creates extra blocks)
PR c++/13764
        * c-common.c (finish_fname_decls): Use append_to_statement_list_force.
        * cp/cp-tree.h (FUNCTION_NEEDS_BODY_BLOCK): New macro.
        * cp/name-lookup.c (pushdecl_maybe_friend): Check it.
        * cp/decl.c (begin_function_body): Do nothing if it's false.
        (finish_function_body): Ditto.
        (outer_curly_brace_block): New fn.
        (finish_function): Use it.

From-SVN: r104698
2005-09-27 12:04:25 -04:00
Daniel Berlin
8ec88e19de Add missing part of committed patch from 21st
From-SVN: r104696
2005-09-27 15:33:51 +00:00
Mark Mitchell
affbb54ac4 * argv.c (expandargv): Do not use xmalloc_failed.
From-SVN: r104695
2005-09-27 15:21:41 +00:00
David Edelsohn
f660281695 Correct ChangeLog formatting.
From-SVN: r104683
2005-09-27 00:04:30 -04:00
David Edelsohn
63d261c617 Correct ChangeLog formatting and email address.
From-SVN: r104682
2005-09-27 00:02:35 -04:00
Jason Merrill
4381020e03 * doc/invoke.texi: Clarify documentation of -fno-enforce-eh-specs.
From-SVN: r104681
2005-09-26 23:11:28 -04:00
Benjamin Kosnik
4bd2f9d6a1 2005-09-25 Benjamin Kosnik <bkoz@redhat.com>
Eric Botcazou  <ebotcazou@libertysurf.fr>

	* include/ext/mt_allocator.h
	(__per_type_pool<...true>::_S_initialize_once): Always call
	_M_initialize_once.
	(__common_pool<...true>::_S_initialize_once): Same.

Co-Authored-By: Eric Botcazou <ebotcazou@libertysurf.fr>

From-SVN: r104678
2005-09-27 01:40:46 +00:00
James E Wilson
92b4f0af9d Fix problems with copyrights for files that end up in libgcc.a.
* config/ia64/crtbegin.asm, config/ia64/crtend.asm: Remove glibc
copyright.  Add gcc copyright plus libgcc exception.
* config/ia64/crtfastmath.asm: Remove glibc copyright.  Add gcc
copyright.
* config/ia64/lib1funcs.asm: Add gcc copyright plus libgcc exception.

From-SVN: r104675
2005-09-26 17:52:24 -07:00
GCC Administrator
d5a0cd8d15 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r104671.2
2005-09-27 00:16:45 +00:00
Mark Mitchell
240921b985 * Makefile.in: Regenerated.
From-SVN: r104666
2005-09-26 20:57:42 +00:00
Mark Mitchell
97393d0a03 libiberty.h (expandargv): New function.
* libiberty.h (expandargv): New function.

	* argv.c (safe-ctype.h): Include it.
	(ISBLANK): Remove.
	(stdio.h): Include.
	(buildargv): Use ISSPACE instead of ISBLANK.
	(expandargv): New function.

From-SVN: r104664
2005-09-26 20:55:10 +00:00
Janne Blomqvist
18623faed1 [multiple changes]
2005-09-24  Janne Blomqvist  <jblomqvi@cc.hut.fi>

	* trans-io.c (gfc_build_io_library_fndecls): Add entry
	iocall_x_array for transfer_array. (transfer_array_desc): New
	function. (gfc_trans_transfer): Add code to call
	transfer_array_desc.

2005-09-24  Janne Blomqvist <jblomqvi@cc.hut.fi>

	* io.h: Changed prototypes of list_formatted_{read|write}.
	* list_read.c (list_formatted_read): Renamed to
	list_formatted_read_scalar and made static. (list_formatted_read):
	New function.
	* transfer.c: Prototype for transfer_array. Changed transfer
	function pointer. (unformatted_read): Add nelems argument, use
	it. (unformatted_write): Likewise. (formatted_transfer): Changed
	name to formatted_transfer_scalar. (formatted_transfer): New
	function. (transfer_integer): Add nelems argument to transfer
	call, move updating item count to transfer
	functions. (transfer_real): Likewise. (transfer_logical):
	Likewise. (transfer_character): Likewise. (transfer_complex):
	Likewise. (transfer_array): New function. (data_transfer_init):
	Call formatted_transfer with new argument. (iolength_transfer):
	New argument, use it.
	* write.c (list_formatted_write): Renamed to
	list_formatted_write_scalar, made static. (list_formatted_write):
	New function.

From-SVN: r104662
2005-09-26 20:24:45 +00:00
Jakub Jelinek
d05d9ac771 re PR fortran/23677 (-fno-automatic does not accept legal save statements)
PR fortran/23677
	* symbol.c (gfc_is_var_automatic): Return true if character length
	is non-constant rather than constant.
	* resolve.c (gfc_resolve): Don't handle !gfc_option.flag_automatic
	here.
	* options.c (gfc_post_options): Set gfc_option.flag_max_stack_var_size
	to 0 for -fno-automatic.

	* gfortran.fortran-torture/execute/save_1.f90: New test.
	* gfortran.dg/save_1.f90: New test.

From-SVN: r104661
2005-09-26 22:06:37 +02:00
Tom Tromey
d674eb2f5c float1.c (value_type): New typedef.
* testsuite/libffi.call/float1.c (value_type): New typedef.
	(CANARY): New define.
	(main): Check for result buffer overflow.
	* src/powerpc/linux64.S: Handle linux64 long double returns.
	* src/powerpc/ffi.c (FLAG_RETURNS_128BITS): New constant.
	(ffi_prep_cif_machdep): Handle linux64 long double returns.

From-SVN: r104660
2005-09-26 19:56:22 +00:00
Jeff Law
608af77dc1 tree-ssa-dom.c (tree_ssa_dominator_optimize): Be more selective about when to iterate.
* tree-ssa-dom.c (tree_ssa_dominator_optimize): Be more selective
        about when to iterate.

From-SVN: r104658
2005-09-26 13:40:20 -06:00
Uros Bizjak
a35074775f re PR target/22576 (ICE with simple factorial program compiled with -ffast-math on gcc 4.0.2)
2005-08-26  Uros Bizjak  <uros@kss-loka.si>

	* gcc.target/i386/builtin-apply-mmx.c: New test.

	PR target/22576
	* gcc.target/i386/pr22576.c: New test.

	PR target/22585
	* gcc.target/i386/pr22585.c: New test.

	PR target/23268
	* gcc.target/i386/pr23268.c: New test.

From-SVN: r104656
2005-09-26 19:19:43 +00:00
Fariborz Jahanian
0f086e42e3 re PR target/23847 (Darwin -mpowerpc64 complex ABI breakage)
PR target/23847.
Oked by David Edelsohn.

From-SVN: r104655
2005-09-26 19:12:30 +00:00
David Edelsohn
e097b4f158 configure.ac: Add check for __clog.
* configure.ac: Add check for __clog.
	* configure: Regenerate.

From-SVN: r104654
2005-09-26 19:08:27 +00:00
Sebastian Pop
c59dabbe46 re PR tree-optimization/23942 (loop problem / testcase takes very long time to compile)
PR tree-optimization/23942
	* Makefile.in (SCEV_H): Depends on PARAMS_H.
	* tree-scalar-evolution.c: Include params.h.
	(t_bool): New enum.
	(follow_ssa_edge, follow_ssa_edge_in_rhs,
	follow_ssa_edge_in_condition_phi_branch,
	follow_ssa_edge_in_condition_phi, follow_ssa_edge_inner_loop_phi):
	Change return type to t_bool.  Use a parameter to limit the size of
	trees that are walked before stopping
	(analyze_evolution_in_loop): Initialize the limit to 0.
	(follow_ssa_edge): Give up by returning t_dont_know if the limit
	exceeds PARAM_SCEV_MAX_EXPR_SIZE.

From-SVN: r104653
2005-09-26 18:44:16 +00:00