Commit Graph

63717 Commits

Author SHA1 Message Date
Nathan Sidwell
7932a3db21 bitmap.h (struct bitmap_obstack): New obstack type.
* bitmap.h (struct bitmap_obstack): New obstack type.
	(struct bitmap_head_def): Replace using_obstack with obstack
	pointer.
	(bitmap_default_obstack): New.
	(bitmap_initialize): Make inline, does not do allocation.
	(bitmap_release_memory): Remove.
	(bitmap_obstack_initialize, bitmap_obstack_release): Declare.
	(bitmap_obstack_alloc, bitmap_malloc_alloc, bitmap_gc_alloc,
	bitmap_obstack_free, bitmap_malloc_free): Declare.
	(BITMAP_OBSTACK_ALLOC, BITMAP_GGC_ALLOC, BITMAP_XMALLOC): Adjust.
	(BITMAP_FREE): Replace with ...
	(BITMAP_OBSTACK_FREE): ... this.
	(BITMAP_XFREE): Adjust.
	(BITMAP_INIT_ONCE): Remove.
	* bitmap.c (bitmap_obstack, bitmap_obstack_init, bitmap_free: Remove.
	(bitmap_default_obstack): New.
	(bitmap_elem_to_freelist): Adjust.
	(bitmap_element_allocate): Adjust. Break initialization into ...
	(bitmap_obstack_initialize): ... here.
	(bitmap_release_memory): Replace with ...
	(bitmap_obstack_release): ... this.
	(bitmap_obstack_alloc, bitmap_malloc_alloc, bitmap_gc_alloc,
	bitmap_obstack_free, bitmap_malloc_free): New.
	(bitmap_ior_and_compl, bitmap_ior_and_compl_into): Use
	bitmap_initialize.
	(bitmap_initialize): Move to bitmap.h.
	* gengtype.c (open_base_files): Add obstack.h to ifiles.
	* Makefile.in (BASIC_BLOCK_H, REGS_H): Add obstack.h.
	* basic-block.h (INIT_REG_SET): Allocate from reg_obstack.
	(INITIALIZE_REG_SET): Remove.
	(FREE_REG_SET): Use BITMAP_OBSTACK_FREE.
	(INIT_ONCE_REG_SET, MAX_REGNO_REG_SET): Remove.
	(flow_obstack): Do not declare.
	(reg_obstack): Declare.
	* regs.h: Include obstack.h.
	* tree-optimize.c (tree_rest_of_compilation): Initialize and
	release bitmap obstack here.
	* bb-reorder.c: #include regs, not basic-block.
	(fix_crossing_conditional_branches): Allocate regsets from
	reg_obstack.
	* bt-load.c: Do not inlude bitmap.h, sbitmap.h, basic-block.h or
	obstack.h.
	* caller-save.c: Include regs.h earlier.
	* cfg.c: Do not include basic-block.h or obstack.h.
	(reg_obstack): Define.
	* cfganal.c: Include obstack.h
	* cfgcleanyp.c: Do not include basic-block.h. Include regs.h
	earlier.
	* cfglayout.c: Do not include obstack.h.
	(flow_obstack): Remove declaration.
	(cfg_layout_duplicate_bb): Use reg_obstack.
	* cfgloop.c, cfgloopanal.c, cfgloopmanip.c: Include obstack.h.
	* cfgrtl.c (rtl_split_block): Use reg_obstack.
	(force_nonfallthru_and_redirect, rtl_split_edge): Likewise.
	(safe_insert_insn_on_edge): Use OBSTACK_ALLOC_REG_SET, adjust.
	(cfg_layout_split_edge): Use reg_obstack.
	* cse.c: Include regs.h earlier.
	* ddg.c: Do not include basic-block.h.
	* dominance.c: Inlude obstack.h.
	* flow.c (update_life_info): Use OBSTACK_ALLOC_REG_SET, adjust.
	(calculate_global_regs_live): Likewise.
	(allocate_bb_life_data): Use reg_obstack.
	(init_propagate_block_info): Use OBSTACK_ALLOC_REGSET.
	* global.c: Do not include basic-block.h.
	(build_insn_chain): Use OBSTACK_ALLOC_REG_SET, adjust.
	* graph.c: Include obstack.h.
	* haifa-sched.c: Do not include basic-block.h.
	* ifcvt.c: Use OBSTACK_ALLOC_REG_SET, adjust.
	* local-alloc.c: Do not include basic-block.h.
	* loop-init.c, loop-invariant.c: Include obstack.h.
	* loop-iv.c: Likewise.
	(simplify_using_initial_values): Use OBSTACK_ALLOC_REG_SET,
	adjust.
	* loop-unroll.c, loop-unswitch.c: Inlude obstack.h.
	* modulo-sched.c: Do not include basic-block.h.
	* passes.c (rest_of_handle_final): Do not call
	regset_release_memory.
	* ra-debug.c: Include regs.h earlier. Do not include
	basic-block.h.
	* recog.c (peephole2_optimize): Use OBSTACK_ALLOC_REG_SET, adjust.
	* regclass.c (init_reg_sets): Do not call INIT_ONCE_REG_SET.
	(allocate_reg_info): Do not call MAX_REGNO_REG_SET.
	(regset_release_memory): Remove.
	* resource.c: Do not include basic-block.h.
	* rtlanal.c: Do not include basic-block.h.
	* sbitmap.c: Include obstack.h.
	* sched-deps.c: Do not include basic-block.h.
	(reg_pending_sets_head, reg_pending_clobbers_head,
	reg_pending_uses_head): Remove.
	(init_deps_global): Use OBSTACK_ALLOC_REG_SET.
	* sched-ebb.c: Do not include basic-block.h.
	* sched-rgn.c: Likewise.
	* tree-if-conv.c (get_loop_body_in_if_conv_order): Use
	BITMAP_XFREE.
	* tree-outof-ssa.c (perform_edge_inserts): Use BITMAP_XFREE.
	* tree-sra.c (decide_instantiations): Adjust bitmap
	initialization.
	* tree-ssa-dce.c: Include obstack.h.
	* tree-ssa-pre.c (grand_bitmap_obstack): Make a bitmap_obstack.
	(value_insert_into_set_bitmap): Remove useless bitmap_clear.
	(bitmap_set_new): Likewise.
	(init_pre): Initialize bitmap obstack.
	(fini_pre): Release bitmap obstack.
	* tree-ssanames.c (ssa_names_to_rewrite): Make static.
	(marked_for_rewrite_p): ssa_names_to_rewrite is never NULL.
	(mark_for_rewrite, unmark_for_rewrite): Likewise.
	(marked_ssa_names): Likewise.
	(init_ssanames): Use BITMAP_XMALLOC.
	(fini_ssanames): Use BITMAP_XFREE.
	* web.c: Include obstack.h

From-SVN: r91009
2004-11-22 12:23:59 +00:00
Giovanni Bajo
e99f332f05 re PR c++/18354 (expression "+1" not considered constant (as template parameter).)
PR c++/18354
	* typeck.c (build_unary_op) <CONVERT_EXPR, NEGATE_EXPR>: Unify code.
	Make sure the result is always a rvalue.

	PR c++/18354
	* g++.dg/template/nontype11.C: New test.

From-SVN: r91008
2004-11-22 12:15:53 +00:00
Nick Clifton
6cb70db4d9 sbitmap.c (sbitmap_union_of_preds): Set 'e' to the next edge predecessor in the first for-loop.
* sbitmap.c (sbitmap_union_of_preds): Set 'e' to the next edge predecessor in
the first for-loop.

From-SVN: r91007
2004-11-22 09:53:30 +00:00
Stan Shebs
8968965d59 better line breaks
From-SVN: r91004
2004-11-22 07:49:48 +00:00
Stan Shebs
8ff40a7446 rs6000.c: (rs6000_darwin64_function_arg): Add UNION_TYPE case.
* config/rs6000/rs6000.c: (rs6000_darwin64_function_arg): Add UNION_TYPE case.
        (function_arg): Move darwin test up, sniff mode first for efficiency, test
        for union type.

From-SVN: r91003
2004-11-22 07:24:54 +00:00
Dale Johannesen
31492595c6 darwin.h (JUMP_TABLES_IN_TEXT_SECTION): Define.
2004-11-21  Dale Johannesen  <dalej@apple.com>

        * config/darwin.h (JUMP_TABLES_IN_TEXT_SECTION):  Define.

From-SVN: r91001
2004-11-22 06:46:04 +00:00
Jeff Law
609d9bedc8 tree-ssa.c (verify_use): Fix comment.
* tree-ssa.c (verify_use): Fix comment.
	(verify_phi_args): Check that the number of incoming edges matches
	the number of PHI arguments.  Check that each PHI argument is
	either an SSA_NAME or an invariant.  Coalesce tests for PHIs for
	dead or duplicated edges.  Clear e->aux earlier and avoid separate
	loop to clear e->aux and test for missed edges.
	(verify_ssa): Remove first walk over statements.  Move checking
	of PHI args into verify_phi_args.  Move checking of statements
	with aliased stores and V_MAY_DEFS into the remaining loop over
	the statements.  Register defs by walking through the formal
	SSA_NAME table.

From-SVN: r91000
2004-11-21 20:45:15 -07:00
Paolo Bonzini
e8578da6ca Add Paolo Bonzini to vector ChangeLog.
From-SVN: r90999
2004-11-21 22:24:35 -05:00
Roger Sayle
6da285d241 re PR middle-end/18520 (ICE in emit_store_flag, at expmed.c:5081with -ffast-math)
PR middle-end/18520
	* dojump.c (compare_from_rtx): Clarify mode argument in function
	description.  Correct order of mode/cmp_mode arguments in call to
	simplify_relational_operation.  Check "tem" for COMPARISON_P.

	* gcc.dg/pr18520-1.c: New test case.

From-SVN: r90997
2004-11-22 02:13:14 +00:00
Paolo Bonzini
b693336bf3 re PR target/17836 (ABI breakage for 16-byte vectors (non-Altivec ABI & ISA))
PR target/17836
        * config/rs6000/rs6000.c (rs6000_return_in_memory): Return
        synthetic vectors in memory.
        (function_arg_boundary): Align large synthetic vectors.
        (rs6000_pass_by_reference): Pass synthetic vectors in memory.

From-SVN: r90995
2004-11-21 20:21:10 -05:00
GCC Administrator
7fb3dd8b75 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r90993.2
2004-11-22 00:16:21 +00:00
GCC Administrator
0a31a038d2 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r90992.2
2004-11-22 00:16:16 +00:00
Roger Sayle
743348ea53 inclhack.def (alpha_pthread_init): Fix technical problems with the last check-in caused by CVS variable substitution.
* inclhack.def (alpha_pthread_init): Fix technical problems with
	the last check-in caused by CVS variable substitution.
	* fixincl.x: Likewise.
	* tests/base/pthread.h: Likewise.

From-SVN: r90989
2004-11-21 23:01:44 +00:00
Nitin Yewale
d23eb34146 Move from root of repository to intented place.
From-SVN: r90988
2004-11-21 22:54:00 +00:00
Jeff Law
763ea90493 cfg.c (update_bb_profile_for_threading): Do not rescale the successor probabilities if they are not going to change.
* cfg.c (update_bb_profile_for_threading): Do not rescale the
        successor probabilities if they are not going to change.  Pull
        division out of loop if we do need to rescale successor probabilities.

From-SVN: r90987
2004-11-21 13:41:37 -07:00
Michael Koch
926253eeca 2004-11-21 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/SocketChannelImpl.java
	(read): Only return 0 when no bytes for reading available in
	non-blocking mode.
	* java/nio/channels/SocketChannel.java:
	Added some missing @return tags.

From-SVN: r90986
2004-11-21 20:19:59 +00:00
Andreas Jaeger
7fe16580f0 stylesw.adb: Change Style_Check_Subprogram_Order to Style_Check_Order_Subprograms.
* stylesw.adb: Change Style_Check_Subprogram_Order to
	Style_Check_Order_Subprograms.

From-SVN: r90985
2004-11-21 21:06:10 +01:00
Michael Koch
f146ac0af8 2004-11-21 Michael Koch <konqueror@gmx.de>
* java/beans/PropertyChangeSupport.java
	(propertyChangeSupportSerializedDataVersion): Made static.
	* java/beans/VetoableChangeSupport.java
	(propertyChangeSupportSerializedDataVersion): Likewise.

From-SVN: r90983
2004-11-21 19:05:16 +00:00
Roger Sayle
1fda9d7bbb inclhack.def (alpha_pthread_init): New fix.
* inclhack.def (alpha_pthread_init): New fix.
	* fixincl.x: Regenerate.
	* tests/base/pthread.h: Update for new test.

Co-Authored-By: Bruce Korb <bkorb@gnu.org>

From-SVN: r90981
2004-11-21 16:25:07 +00:00
Jeff Law
db02564e0a tree-ssa-threadupdate.c (redirection_data_hash): Use the index of the destination block for the hash value rather than hashing a...
* tree-ssa-threadupdate.c (redirection_data_hash): Use the
        index of the destination block for the hash value rather than
        hashing a pointer.

From-SVN: r90980
2004-11-21 08:02:30 -07:00
Jonathan Wakely
20fff8cd7c basic_string.h, [...]: Doxygen fixes.
2004-11-19  Jonathan Wakely  <redi@gcc.gnu.org>

	* include/bits/basic_string.h, include/bits/locale_classes.h,
	include/bits/valarray_after.h, include/bits/valarray_before.h,
	include/ext/stdio_sync_filebuf.h, include/std/std_algorithm.h,
	include/std/std_functional.h, include/std/std_memory.h,
	include/std/std_numeric.h: Doxygen fixes.

From-SVN: r90979
2004-11-21 13:16:24 +00:00
Roger Sayle
b10cf17380 * io/write.c (write_float, list_formatted_write): Fix indentation.
From-SVN: r90975
2004-11-21 05:08:14 +00:00
GCC Administrator
484d0bd6fe Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r90973.2
2004-11-21 00:16:14 +00:00
GCC Administrator
2d15ef3625 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r90972.2
2004-11-21 00:16:10 +00:00
Joseph Myers
a4ab7973cf c-typeck.c (build_array_ref): Don't check for index == 0.
* c-typeck.c (build_array_ref): Don't check for index == 0.  Make
	checks for neither argument being an array or pointer (swapping
	the arguments if necessary), the array argument being a pointer to
	or array of functions and for -Wchar-subscripts warnings upfront.

testsuite:
	* gcc.dg/Wchar-subscripts-1.c, gcc.dg/array-8.c: New tests.
	* gcc.dg/pointer-arith-1.c, gcc.dg/pointer-arith-2.c,
	gcc.dg/pointer-arith-3.c, gcc.dg/pointer-arith-4.c: Update
	expected diagnostics.

From-SVN: r90969
2004-11-20 20:31:52 +00:00
Jeff Law
40806b8b8f regrename.c (copyprop_hardreg_forward): Only search for a previously processed block if...
* regrename.c (copyprop_hardreg_forward): Only search for a
        previously processed block if the current block only has one
        predecessor.

From-SVN: r90968
2004-11-20 13:18:49 -07:00
Eric Botcazou
7afc9b98cf re PR target/18580 (vectorizer failures (max, unaligned))
PR target/18580
	* gcc.dg/vect/vect-13.c, vect-27.c, vect-27a.c, vect-29.c,
	vect-29a.c, vect-48a.c, vect-56a.c, vect-72.c, vect-72a.c,
	vect-77.c, vect-77a.c: XFAIL on the SPARC.

From-SVN: r90967
2004-11-20 17:34:28 +00:00
Andrew Pinski
6a73fe755a Move Jeff's change to the correct place right Before Kazu's part1 of O(1) PHI
node change.

From-SVN: r90966
2004-11-20 08:26:58 -08:00
Eric Botcazou
21664a3ec0 * gcc.dg/vect/vect.exp (sparc*-*-*): Fix a couple of nits.
From-SVN: r90965
2004-11-20 16:14:35 +00:00
Eric Botcazou
3969c39f61 re PR libfortran/16135 (libfortran doesn't build, use of C99 types)
PR target/16135
	* acinclude.m4 (LIBGFOR_TARGET_ILP32): New check.
	* configure.ac: Include LIBGFOR_TARGET_ILP32.
	* configure: Regenerate.
	* config.h.in: Likewise.
	* libgfortran.h: Provide default definitions for C99 types
	on ILP32 targets that don't have them.

	PR target/17999
	* configure.ac: Check for snprintf.
	* configure: Regenerate.
	* config.h.in: Likewise.
	* intrinsics/date_and_time.c (date_and_time): Do not
	use snprinf if it is not available.
	* io/write.c (output_float): Likewise.

From-SVN: r90964
2004-11-20 13:15:17 +00:00
Kazu Hirata
e7a531ae61 tree-ssa-threadupdate.c, [...]: Fix comment typos.
* tree-ssa-threadupdate.c, tree-vectorizer.c: Fix comment
	typos.
	* config/arm/arm.c: Follow spelling conventions.

From-SVN: r90963
2004-11-20 12:48:15 +00:00
Richard Earnshaw
2075b05db6 arm.c (arm_override_options): Use arm_ld_sched rather than testing a bit in tune_flags.
* arm.c (arm_override_options): Use arm_ld_sched rather than testing
a bit in tune_flags.
(const_double_needs_minipool): Likewise.  Split most of the code out
into ...
(arm_const_double_inline_cost): ... new function here.
* arm-protos.h (arm_const_double_inline_cost): Add prototype.
* arm.h (EXTRA_CONSTRAINT_STR_ARM): Add D[abc] constraints for double-
word constants of length 2, 3 and 4 insns respectively.
(CONSTRAINT_LEN): The 'D' prefix is a 2-letter constraint.
* arm.md (arm_movdi, movdf_soft_insn): Add alternatives for D[abc]
constraints.  Set insn lenghts accordingly.

From-SVN: r90962
2004-11-20 11:21:55 +00:00
Hans-Peter Nilsson
9eaf7da094 gcc_update (touch_files): Don't rely on "make" being GNU make...
* gcc_update (touch_files): Don't rely on "make" being GNU make;
	grep for "Touching" to determine that the rule executes.

From-SVN: r90961
2004-11-20 10:49:16 +00:00
Aldy Hernandez
a5436b2f52 change typo in last commit to simplify-rtx.c
From-SVN: r90959
2004-11-20 10:38:04 +00:00
Kazu Hirata
735538716d basic-block.h (edge_def): Add dest_idx.
* basic-block.h (edge_def): Add dest_idx.
	* cfg.c (unchecked_make_edge): Initialize dest_idx.
	(remove_edge): Simplify the disconnection of an edge from its
	destination.
	(redirect_edge_succ): Likewise.
	* cfghooks.c (verify_flow_info): Check the consistency of
	dest_idx for each edge.

From-SVN: r90958
2004-11-20 05:02:28 +00:00
Roger Sayle
2d59754f6a objalloc.c, [...]: Include "config.h" before "ansidecl.h" to avoid redeclaration errors with...
* objalloc.c, strsignal.c, xstrerror.c: Include "config.h" before
	"ansidecl.h" to avoid redeclaration errors with native compilers.
	* regex.c: Protect config.h from multiple inclusion.

From-SVN: r90954
2004-11-20 02:44:34 +00:00
Paul Brook
edca1aa6ec Really regenerate Makefile.in.
From-SVN: r90950
2004-11-20 01:57:41 +00:00
Steven G. Kargl
d8fe26b2cd check.c (gfc_check_getcwd_sub): Fix seg fault.
* check.c (gfc_check_getcwd_sub): Fix seg fault.

	* check.c (gfc_check_exit,gfc_check_umask,gfc_check_umask_sub,
	gfc_check_unlink,gfc_check_unlink_sub): New functions
	* gfortran.h (GFC_ISYM_UMASK,GFC_ISYM_UNLINK): New symbols
	* intrinsic.c (add_functions,add_subroutines): Add umask, unlink,
	exit to intrinsics symbol tables.
	* intrinsic.h (gfc_check_umask,gfc_check_unlink,gfc_check_exit,
	gfc_check_umask_sub,gfc_check_unlink_sub,gfc_resolve_umask,
	gfc_resolve_unlink,gfc_resolve_exit,gfc_resolve_umask_sub,
	gfc_resolve_unlink_sub): Add and sort prototypes.
	* iresolve.c (gfc_resolve_umask,gfc_resolve_unlink,gfc_resolve_exit,
	gfc_resolve_umask_sub,gfc_resolve_unlink_sub): New functions
	* trans-intrinsic.c (gfc_conv_intrinsic_function): Use symbols

libgfortran/
	* Makefile.am: Add intrinsics/{umask.c,unlink.c,exit.c}
	* Makefile.in: Regenerated
	* intrinsics/umask.c: New file
	* intrinsics/unlink.c: ditto
	* intrinsics/exit.c: ditto

From-SVN: r90949
2004-11-20 01:44:49 +00:00
Aldy Hernandez
449ecb09b3 simplify-rtx.c (simplify_ternary_operation): Use trunc_int_for_mode.
* simplify-rtx.c (simplify_ternary_operation): Use
        trunc_int_for_mode.

From-SVN: r90948
2004-11-20 01:44:25 +00:00
GCC Administrator
633ce8953a Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r90946.2
2004-11-20 00:16:27 +00:00
GCC Administrator
383068d029 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r90945.2
2004-11-20 00:16:23 +00:00
Jeff Law
1983ac127f tree-ssa-threadupdate.c: Replace REDIRECTION_DATA varray with a hash table.
* tree-ssa-threadupdate.c: Replace REDIRECTION_DATA varray with
        a hash table.  Extensive modifications throughout to support
        that change.
        (struct el): New.
        (struct local_info): New.
        (struct redirection_data): Add new INCOMING_EDGES and DO_NOT_DUPLICATE
        fields.
        (redirection_data): Now a hashtable.
        (redirection_data_hash, redirection_data_eq): New.
        (lookup_redirection_data, create_duplicates): New.
        (create_edge_and_update_destionation_phis): New.
        (fixup_template_block, redirect_edges): New.
        (thread_block): Use hash table traversals instead of loops over
        varray entries or incoming edge vectors.

From-SVN: r90941
2004-11-19 15:55:55 -07:00
Kazu Hirata
4f7db7f7d7 tree-cfg.c (reinstall_phi_args): New.
* tree-cfg.c (reinstall_phi_args): New.
	(tree_split_edge): Use it after redirecting an edge.  Don't
	modify PHI_ARG_EDGE.

From-SVN: r90940
2004-11-19 22:14:35 +00:00
Andreas Tobler
1d8a9009f5 tree-vectorizer.c (slpeel_verify_cfg_after_peeling): Define only if checking is enabled.
2004-11-19  Andreas Tobler  <a.tobler@schweiz.ch>

	* tree-vectorizer.c (slpeel_verify_cfg_after_peeling): Define only
	if checking is enabled.

From-SVN: r90939
2004-11-19 22:56:19 +01:00
Paolo Carlini
c55f9f781b 1.cc: In the checks use...
2004-11-19  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/22_locale/time_get/get_date/char/1.cc: In the checks
	use, more correctly (and consistently with other testcases) the
	return value of the facet (the iterator arguments are by value).
	* testsuite/22_locale/time_get/get_date/char/12791.cc: Likewise.
	* testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Likewise.
	* testsuite/22_locale/time_get/get_date/wchar_t/12791.cc: Likewise.
	* testsuite/22_locale/time_get/get_monthname/char/1.cc: Likewise.
	* testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise.
	* testsuite/22_locale/time_get/get_time/char/1.cc: Likewise.
	* testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Likewise.
	* testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise.
	* testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise.
	* testsuite/22_locale/time_get/get_year/char/1.cc: Likewise.
	* testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Likewise.

From-SVN: r90938
2004-11-19 21:48:21 +00:00
Mark Mitchell
79c70e5a6c target-supports.exp (check_visibility_available): Really test the compiler.
2004-11-19  Mark Mitchell  <mark@codesourcery.com>
            Joseph Myers  <joseph@codesourcery.com>

	* lib/target-supports.exp (check_visibility_available): Really
	test the compiler.

Co-Authored-By: Joseph Myers <joseph@codesourcery.com>

From-SVN: r90937
2004-11-19 19:59:10 +00:00
Joseph Myers
72c4e4db03 c-decl.c (push_scope): Remove "\n" from end of diagnostic for too many nested scopes.
* c-decl.c (push_scope): Remove "\n" from end of diagnostic for
	too many nested scopes.

From-SVN: r90936
2004-11-19 19:54:39 +00:00
Dorit Naishlos
63dfe6ff6f re PR tree-optimization/18181 (vectorizer: problem in the peeling mechanism in the presence of loop invariants that are used after the loop)
PR tree-opt/18181
        * tree-vectorizer.c (slpeel_tree_peel_loop_to_edge): Peeling scheme
        changed to suppoer uses-after-loop and to void creating flow paths
        that shouldn't exist.
        (slpeel_update_phi_nodes_for_guard): Takes additional two arguments.
        Modified to fit the new peeling scheme. Avoid quadratic behavior.
        (slpeel_add_loop_guard): Takes additional argument.
        (slpeel_verify_cfg_after_peeling): New function.
        (vect_update_ivs_after_vectorizer): Takes additional argument. Updated
        documentation. Use 'exit-bb' instead of creating 'new-bb'.
        (rename_variables_in_bb): Don't update phis for BBs out of loop, to fit
        the new peeling scheme.
        (copy_phi_nodes): Function removed. Its functionality moved to
        update_phis_for_duplicate_loop.
        (slpeel_update_phis_for_duplicate_loop): Functionality of copy_phi_nodes
        moved here. Added documentation. Modified to fit the new peeling scheme.
        (slpeel_make_loop_iterate_ntimes): Setting loop->single_exit not not
        needed - done in slpeel_tree_peel_loop_to_edge.
        (slpeel_tree_duplicate_loop_to_edge_cfg): Debug printouts compacted.
        (vect_do_peeling_for_loop_bound): Add documentation. Call
        slpeel_verify_cfg_after_peeling. Call vect_update_ivs_after_vectorizer
        with additional argument.
        (vect_do_peeling_for_alignment): Call slpeel_verify_cfg_after_peeling.

        (vect_finish_stmt_generation): Avoid 80 column oveflow.

From-SVN: r90932
2004-11-19 19:39:40 +00:00
Dorit Naishlos
335d3d5495 tree-vectorizer.c (slpeel_make_loop_iterate_ntimes): Last two arguments removed.
* tree-vectorizer.c (slpeel_make_loop_iterate_ntimes): Last two
        arguments removed.
        (slpeel_tree_peel_loop_to_edge): Call slpeel_make_loop_iterate_ntimes
        without last two arguments. Update single_exit of loops.
        (vect_update_niters_after_peeling): Removed. Its functionality was
        moved to vect_do_peeling_for_alignment.
        (vect_do_peeling_for_loop_bound): New name for function previously
        called vect_transform_for_unknown_loop_bound.
        (vect_transform_loop_bound): Call slpeel_make_loop_iterate_ntimes
        instead of code that duplicates the same functionality.
        (vect_do_peeling_for_alignment): Functionality of
        vect_update_niters_after_peeling moved here.
        (vect_transform_loop): Unify call to vect_do_peeling_for_loop_bound -
        previously named vect_transform_for_unknown_loop_bound - for both known
        and unknown loop bound cases.

From-SVN: r90931
2004-11-19 19:08:03 +00:00
Dorit Naishlos
d690175432 tree-vectorizer.c (slpeel_can_duplicate_loop_p): New name for function previously called verify_loop_for_duplication.
* tree-vectorizer.c (slpeel_can_duplicate_loop_p): New name for function
        previously called verify_loop_for_duplication. All conditions compacted
        into one compound condition. Removed debug dumps.
        (vect_analyze_loop_with_symbolic_num_of_iters): Removed. Some of the
        functionality moved to vect_can_advance_ivs_p, and some to
        vect_analyze_loop_form.
        (vect_can_advance_ivs_p): New function. Contains functionality that was
        taken out of vect_analyze_loop_with_symbolic_num_of_iters.
        (slpeel_tree_peel_loop_to_edge): Call slpeel_can_duplicate_loop_p.
        (vect_analyze_operations): Call vect_can_advance_ivs_p and
        slpeel_can_duplicate_loop_p.
        (vect_get_loop_niters): Added documentation.
        (vect_analyze_loop_form): Check the loop entry always - not only in case
        of unknown loop bound. Create preheader and exit bb if necessary. Apply
        a check that used to take place in
        vect_analyze_loop_with_symbolic_num_of_iters.
        (vectorize_loops): Call verify_loop_closed_ssa under ENABLE_CHECKING.
        Remove redundant call to rewrite_into_loop_closed_ssa.
        (vect_compute_data_refs_alignment): Removed obsolete comment.

From-SVN: r90930
2004-11-19 19:03:56 +00:00