Commit Graph

63764 Commits

Author SHA1 Message Date
Ralf Corsepius
63933fc357 config.gcc: Add avr-*-rtems*.
2004-11-23  Ralf Corsepius <ralf.corsepius@rtems.org>

	* config.gcc: Add avr-*-rtems*.
	* config/avr/t-rtems: New.
	* config/avr/rtems.h: New.

From-SVN: r91071
2004-11-23 04:44:03 +01:00
Daniel Berlin
cf19bf02c4 Testcase from PR rtl-optimization/18611
From-SVN: r91069
2004-11-23 03:13:53 +00:00
Daniel Berlin
0aed4efbb0 df.c (dataflow_set_a_op_b): Remove reslt parameter, since it's always the same as op1.
2004-11-22  Daniel Berlin  <dberlin@dberlin.org>

	* df.c (dataflow_set_a_op_b): Remove reslt parameter, since it's
	always the same as op1.  Use bitmap_ior_into and bitmap_and_into.
	Add comment to function.

From-SVN: r91067
2004-11-23 02:57:52 +00:00
John David Anglin
557b8e7256 re PR pch/14940 (PCH largefile test fails on various platforms)
PR pch/14940
	* config/host-linux.c (TRY_EMPTY_VM_SPACE): Define for __hppa__.

From-SVN: r91066
2004-11-23 02:29:38 +00:00
John David Anglin
0bb360df4c re PR rtl-optimization/14838 (ICE when building with -O2 -g)
PR rtl-optimization/14838
	* emit-rtl.c (get_first_nonnote_insn): Don't assume first insn is a
	note.
	(get_last_nonnote_insn): Don't assume last insn is a note.

From-SVN: r91065
2004-11-23 02:15:16 +00:00
Steven Bosscher
69d3c9a43e re PR libfortran/15960 (missing function 'finite' on HP-UX 11.11)
PR libfortran/15960
	* configure.ac: Check for finite in libm.
	* libgfortran.h: Define isfinite macro if not defined.
	* intrinsics/c99_functions.c: Use defined(fpclassify) instead of
	HAVE_FPCLASSIFY.
	* io/write.c (write_float): Use isfinite instead of finite.
	* configure, config.h.in: Rebuilt.

From-SVN: r91064
2004-11-23 02:02:38 +00:00
Roger Sayle
b52d5eaa44 fold-const.c (nondestructive_fold_binary_to_constant): Rename to fold_binary_to_constant.
* fold-const.c (nondestructive_fold_binary_to_constant): Rename
	to fold_binary_to_constant.
	(nondestructive_fold_unary_to_constant): Likewise, rename to
	fold_unary_to_constant.
	(fold_relational_hi_lo): Update call to fold_binary_to_constant.
	* tree.h (nondestructive_fold_binary_to_constant): Update prototype.
	(nondestructive_fold_unary_to_constant): Likewise.
	* tree-ssa-ccp.c (ccp_fold): Update calls to fold_unary_to_constant
	and fold_binary_to_constant.
	* tree-ssa-loop-niter.c (EXEC_BINARY, EXEC_UNARY): Delete macros.
	(inverse, number_of_iterations_cond): Replace uses of EXEC_BINARY
	and EXEC_UNARY with calls to fold_*nary_to_constant.
	* tree-ssa-loop-ivopts.c (EXEC_BINARY, EXEC_UNARY): Delete macros.
	(idx_find_step): Replace uses of EXEC_BINARY with calls to
	fold_binary_to_constant.

From-SVN: r91063
2004-11-23 01:27:42 +00:00
Roger Sayle
ba2baa55a3 i386.h (TARGET_USE_FANCY_MATH_387): New macro.
* config/i386/i386.h (TARGET_USE_FANCY_MATH_387): New macro.
	* config/i386/i386.c (override_options):  Set MASK_NO_FANCY_MATH_387
	automatically for targets without TARGET_80387.
	* config/i386/i386.md (sqrtsf2, sqrtsf2_1, sqrtsf2_i387, sqrtdf2,
	sqrtdf2_1, sqrtdf2_i387, *sqrtextendsfdf2, sqrtxf2,
	*sqrtextenddfxf2, *sqrtextendsfxf2, fpremxf4, fmodsf3, fmoddf3,
	fmodxf3, fprem1xf4, dremsf3, dremdf3, dremxf3, *sindf2, *sinsf2,
	*sinextendsfdf2, *sinxf2, *cosdf2, *cossf2, *cosextendsfdf2,
	*cosxf2, sincosdf3, sincossf3, *sincosextendsfdf3, sincosxf3,
	*tandf3_1, tandf2, *tansf3_1, tansf2, *tanxf3_1, tanxf2,
	atan2df3_1, atan2df3, atandf2, atan2sf3_1, atan2sf3, atansf2,
	atan2xf3_1, atan2xf3, atanxf2, asindf2, asinsf2, asinxf2,
	acosdf2, acossf2, acosxf2, fyl2x_xf3, logsf2, logdf2, logxf2,
	log10sf2, log10df2, log10xf2, log2sf2, log2df2, log2xf2,
	fyl2xp1_xf3, log1psf2, log1pdf2, log1pxf2, *fxtractxf3, logbsf2,
	logbdf2, logbxf2, ilogbsi2, *f2xm1xf2, *fscalexf4, expsf2,
	expdf2, expxf2, exp10sf2, exp10df2, exp10xf2, exp2sf2, exp2df2,
	exp2xf2, expm1df2, expm1sf2, expm1xf2, frndintxf2, rintdf2,
	rintsf2, rintxf2, frndintxf2_floor, floordf2, floorsf2,
	floorxf2, frndintxf2_ceil, ceildf2, ceilsf2, ceilxf2,
	frndintxf2_trunc, btruncdf2, btruncsf2, btruncxf2,
	frndintxf2_mask_pm, nearbyintdf2, nearbyintsf2, nearbyintxf2):
	Simplify conditionals using TARGET_USE_FANCY_MATH_387.

From-SVN: r91061
2004-11-23 01:22:58 +00:00
Dale Johannesen
5a25e0c5ec darwin.h (JUMP_TABLES_IN_TEXT_SECTION): Conditionalize properly and comment.
2004-11-22  Dale Johannesen  <dalej@apple.com>

        * config/darwin.h (JUMP_TABLES_IN_TEXT_SECTION):  Conditionalize
        properly and comment.

From-SVN: r91060
2004-11-23 01:17:55 +00:00
James A. Morrison
16f592418f 2004-11-22 James A. Morrison <phython@gcc.gnu.org
* config/sparc/sparc.c: Include insn-codes.h and langhooks.h.
        (sparc_init_builtins): New function.
        (sparc_init_vis_builtins): Create builtin functions for VIS
        instructions.
        (sparc_expand_builtin): Expand builtin functions for VIS instructions.
        (TARGET_INIT_BUILTINS): Define to sparc_init_builtins.
        (TARGET_EXPAND_BUILTIN): Define to sparc_expand_builtin.
        (def_builtin): New macro for creating builtin functions.
        (P): New mode macro for pointer types.
        (UNSPEC_FPACK16, UNSPEC_FPACK32, UNSPEC_FPACKFIX, UNSPEC_FEXPAND,
        UNSPEC_FPMERGE, UNSPEC_MUL16AL, UNSPEC_MUL8UL, UNSPEC_MULDUL,
        UNSPEC_ALIGNDATA, UNSPEC_ALIGNADDR, UNSPEC_PDIST): New constants.
        (fpack16_vis, fpackfix_vis, fpack32_vis, fexpand_vis, fpmerge_vis,
        fmul8x16_vis, fmul8x16au_vis, fmul8x16al_vis, fmul8sux16_vis,
        fmul8ulx16_vis, fmuld8sux16_vis, fmuld8ulx16_vis, pdist_vis,
        faligndata<V64:mode>_vis, alignaddr<P:mode>_vis): New patterns.

testsuite:
        * gcc.target/sparc/align.c, gcc.target/sparc/combined-2.c,
        gcc.target/sparc/fpack16.c, gcc.target/sparc/fpack32.c,
        gcc.target/sparc/fpackfix.c, gcc.target/fexpand.c,
        gcc.target/sparc/fpmerge.c, gcc.target/sparc/fpmul.c,
        gcc.target/sparc/pdist.c: New tests.

From-SVN: r91057
2004-11-23 00:35:38 +00:00
Eric Botcazou
3174451e16 * zconf.h: Define NO_vsnprintf on Solaris 2.5.1.
From-SVN: r91056
2004-11-23 00:22:36 +00:00
GCC Administrator
9f699c84e2 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r91054.2
2004-11-23 00:22:02 +00:00
GCC Administrator
fe805b993c Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r91053.2
2004-11-23 00:21:55 +00:00
Eric Botcazou
ab52d20776 configure.ac (machdep): Use sparc_mach_dep.lo on sparc64-sun-solaris2.* too.
* configure.ac (machdep): Use sparc_mach_dep.lo on
	sparc64-sun-solaris2.* too.
	(Solaris gcc optimization fix): Disable on sparc*-sun-solaris2.*.
	* configure: Regenerate.

From-SVN: r91047
2004-11-22 23:32:13 +00:00
Devang Patel
eedfcb09b4 * tree-if-conv.c (clean_predicate_lists): Clean all basic blocks.
From-SVN: r91045
2004-11-22 15:01:09 -08:00
Devang Patel
e0ddb4bd65 tree-if-conv.c (if_convertable_phi_p): Rename to ...
* tree-if-conv.c (if_convertable_phi_p): Rename to ...
        (if_convertible_phi_p): ... new name.
        (if_convertable_modify_expr_p): Rename to ...
        (if_convertible_modify_expr_p): ... new name.
        (if_convertable_stmt_p): Rename to ...
        (if_convertible_stmt_p): ... new name.
        (if_convertable_bb_p): Rename to ...
        (if_convertible_bb_p): ... new name.
        (if_convertable_loop_p): Rename to ...
        (if_convertible_loop_p): ... new name.

From-SVN: r91044
2004-11-22 14:57:58 -08:00
Bob Wilson
c33a9f06b2 * gcc.dg/uninit-H.c: Define ASM for Xtensa targets.
From-SVN: r91043
2004-11-22 22:39:49 +00:00
Eric Botcazou
f3968b056e re PR target/18444 (Multithreading broken on Unix95-class platforms)
PR target/18444
	* configure.ac (threading): Accept 'posix95'.
	* configure: Regenerate.

From-SVN: r91042
2004-11-22 22:30:14 +00:00
Eric Botcazou
181674429b re PR target/18444 (Multithreading broken on Unix95-class platforms)
PR target/18444
	* configure.ac (threading): Accept 'posix95'.
	* configure: Regenerate.
	* config.gcc (i[34567]86-*-solaris2*): On Solaris up to 2.6,
	include sol26.h and default to posix95 threads if have_pthread_h.
	(sparc-*-solaris2*): Likewise.
	* gthr.h: Include gthr-posix95.h if _PTHREADS95 is defined.
	* gthr-posix95.h: New file.
	* config/sol26.h: New file.
	* doc/install.texi (--enable-threads): Document 'posix95'.

From-SVN: r91041
2004-11-22 22:26:11 +00:00
Ben Elliston
515a179197 pointer-set.h (pointer_set_contains): Remove.
* pointer-set.h (pointer_set_contains): Remove.
	* pointer-set.c (pointer_set_contains): Likewise.

From-SVN: r91040
2004-11-23 09:15:13 +11:00
Kazu Hirata
d0d2cc2105 tree-ssa.c (ssa_remove_edge): Remove.
* tree-ssa.c (ssa_remove_edge): Remove.
	* tree-flow.h: Remove the corresponding prototype.
	* tree-cfg.c: Replace ssa_remove_edge with remove_edge.
	* basic-block.h: Likewise.
	* tree-if-conv.c: Likewise.
	* tree-ssa-threadupdate.c: Likewise.

From-SVN: r91039
2004-11-22 22:12:58 +00:00
Dale Johannesen
5628fde184 calls.c (expand_call): Do not call preserve_temp_slots.
2004-11-22  Dale Johannesen  <dalej@apple.com>

        * calls.c (expand_call): Do not call preserve_temp_slots.

From-SVN: r91038
2004-11-22 22:11:30 +00:00
Kazu Hirata
61ea20f503 tree-phinodes.c (remove_phi_arg_num): Make it static.
* tree-phinodes.c (remove_phi_arg_num): Make it static.
	* tree-flow.h: Remove the corresponding prototype.

From-SVN: r91037
2004-11-22 22:08:11 +00:00
Kazu Hirata
e51546f8bf tree-cfg.c (tree_execute_on_shrinking_pred): New.
* tree-cfg.c (tree_execute_on_shrinking_pred): New.
	(tree_cfg_hooks): Use it.
	* tree-ssa.c (ssa_remove_edge): Don't call remove_phi_args.
	(ssa_redirect_edge): Don't call remove_phi_arg_num.

From-SVN: r91036
2004-11-22 22:06:16 +00:00
Kazu Hirata
d9d4706fa5 cfg.c (unchecked_make_edge): Call execute_on_growing_pred after making an edge.
* cfg.c (unchecked_make_edge): Call execute_on_growing_pred
	after making an edge.
	(remove_edge): Call execute_on_shrinking_pred before removing
	an edge.
	(redirect_edge_succ): Call execute_on_growing_pred and
	execute_on_shrinking_pred.
	* cfghooks.c (execute_on_growing_pred): New.
	(execute_on_shrinking_pred): Likewise.
	* cfghooks.h (cfg_hooks): Add execute_on_growing_pred and
	execute_on_shrinking_pred.
	Add prototypes for execute_on_growing_pred and
	execute_on_shrinking_pred.
	* cfgrtl.c (rtl_cfg_hooks): Add NULL hooks to
	execute_on_growing_pred and execute_on_shrinking_pred.
	(cfg_layout_rtl_cfg_hook): Likewise.
	* tree-cfg.c (tree_cfg_hooks): Likewise.

From-SVN: r91035
2004-11-22 22:04:21 +00:00
Kazu Hirata
b31997c0dc tree-flow.h: Remove the prototype for remove_phi_arg.
* tree-flow.h: Remove the prototype for remove_phi_arg.
	Add a prototype for remove_phi_args.
	* tree-phinodes.c (remove_phi_arg): Remove.
	(remove_phi_args): New.
	* tree-ssa.c (ssa_remove_edge): Call remove_phi_args instead
	of remove_phi_arg.

From-SVN: r91034
2004-11-22 22:01:11 +00:00
Ben Elliston
d7889929fd cfg.texi (Maintaining the CFG): Use @ftable instead of @table to list the BSI methods.
* doc/cfg.texi (Maintaining the CFG): Use @ftable instead of
	@table to list the BSI methods.  Use individual @findex directives
	instead of one with a comma-separated list of index entries.

From-SVN: r91033
2004-11-23 08:53:11 +11:00
Zdenek Dvorak
1d481ba83c re PR tree-optimization/18529 (When the lower bound of a loop is non-constant we cannot find the number of iterations)
PR tree-optimization/18529
	* fold-const.c (fold_to_nonsharp_ineq_using_bound): New function.
	(simple_operand_p): Use STRIP_NOPS.  Consider SSA names simple.
	(fold): Call fold_to_nonsharp_ineq_using_bound.
	* tree-ssa-loop-niter.c (simplify_replace_tree): New function.
	(number_of_iterations_cond): Fold the expressions before futher
	processing.
	(tree_simplify_using_condition): Handle case when cond or expr is
	an EQ_EXPR specially.

From-SVN: r91031
2004-11-22 21:33:47 +00:00
Michael Koch
392cd098c5 2004-11-22 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/SocketChannelImpl.java
	(read): Made check for blocking un-ambiguous.
	Removed wrong check for data array length.

From-SVN: r91028
2004-11-22 20:32:56 +00:00
David Edelsohn
23ba09f070 fixed some missed bits in the last commit.
From-SVN: r91027
2004-11-22 15:29:25 -05:00
Daniel Berlin
46b483a7c8 tree-ssa.c (verify_ssa): SSA_OP_ALL_USES should be SSA_OP_ALL_USES | SSA_OP_ALL_KILLS for verification...
2004-11-22 Daniel Berlin  <dberlin@dberlin.org>

        * tree-ssa.c (verify_ssa): SSA_OP_ALL_USES should be
	SSA_OP_ALL_USES | SSA_OP_ALL_KILLS for verification purposes.

From-SVN: r91026
2004-11-22 20:28:01 +00:00
David Edelsohn
ad630bef66 rs6000.c (rs6000_return_in_memory): Test TARGET_ALTIVEC_ABI.
2004-11-22  David Edelsohn  <edelsohn@gnu.org>
	    Fariborz Jahanian  <fjahanian@apple.com>

	* config/rs6000/rs6000.c (rs6000_return_in_memory): Test
	TARGET_ALTIVEC_ABI.
	(function_arg_boundary): Align 8 to 16 byte vectors like SPE.
	Align 16 byte and larger vectors like Altivec.
	(function_arg_advance): Pass any 16 byte vector like Altivec vector.
	(function_arg): Same.
	(rs6000_pass_by_references): Test TARGET_ALTIVEC_ABI.

Co-Authored-By: Fariborz Jahanian <fjahanian@apple.com>

From-SVN: r91025
2004-11-22 15:25:31 -05:00
Andrew Pinski
478e209287 re PR tree-optimization/18572 (Bus error compiling makegpr.adb on Mac OS X 10.3)
2004-11-22  Andrew Pinski  <pinskia@physics.uc.edu>

        PR tree-opt/18572
        * tree-sra.c (scalarize_init): Unshare the rhs before gimplifying
        it.

From-SVN: r91024
2004-11-22 12:02:16 -08:00
Richard Henderson
65c844e23d function.c (assign_parm_setup_block): Revert 11-13 change to forcably re-mode a (possibly BLKmode) hard register.
* function.c (assign_parm_setup_block): Revert 11-13 change to
        forcably re-mode a (possibly BLKmode) hard register.

From-SVN: r91023
2004-11-22 10:55:05 -08:00
Eric Botcazou
bf02e7fa52 ffi.c (ffi_prep_closure): Align doubles and 64-bit integers on a 8-byte boundary.
* src/sparc/ffi.c (ffi_prep_closure): Align doubles and 64-bit integers
	on a 8-byte boundary.
	* src/sparc/v8.S (ffi_closure_v8): Reserve frame space for
	arguments.

From-SVN: r91022
2004-11-22 18:35:16 +00:00
Eric Botcazou
167a1354b3 * config/sparc/sparc.c (mem_min_alignment): Check MEM_ALIGN.
From-SVN: r91021
2004-11-22 18:32:26 +00:00
David Edelsohn
4e596a097d power4.md: Remove delay between dispatch and issue associated with dispatch group slots 3...
* config/rs6000/power4.md: Remove delay between dispatch and issue
	associated with dispatch group slots 3 and 4.
	* config/rs6000/power5.md: Same.

From-SVN: r91020
2004-11-22 12:19:09 -05:00
Jeff Law
9ff3d2dea0 cfg.c (cached_make_edge): Use find_edge rather than an inlined variant.
* cfg.c (cached_make_edge): Use find_edge rather than an inlined
        variant.
        * cfgbuild.c (make_edges): Likewise.
        * cfghooks.c (can_duplicate_block_p): Likewise.
        * cfgloop.c (loop_latch_edge): Likewise.
        * cfgloopmanip.c (force_single_succ_latches): Likewise.
        * cfgrtl.c (rtl_flow_call_edges_add): Likewise.
        * predict.c (predict_loops, propagate_freq): Likewise.
        * tracer.c (tail_duplicate): Likewise.
        * tree-cfg.c (disband_implicit_edges): Likewise.
        (tree_forwarder_block_p, tree_flow_call_edges_add): Likewise.

From-SVN: r91019
2004-11-22 10:14:00 -07:00
Fariborz Jahanian
169c5767ef Fixing the testc case.
From-SVN: r91018
2004-11-22 17:06:13 +00:00
Nick Clifton
18b0f6cc7a sbitmap.c (sbitmap_union_of_preds): Remove redundant initialisation of 'e'.
From-SVN: r91017
2004-11-22 16:39:22 +00:00
Kazu Hirata
907109016b re PR rtl-optimization/18599 (Quadratic behavior in copyprop_hardreg_forward)
PR rtl-optimization/18599
	* regrename.c (copyprop_hardreg_forward): Speed up by putting
	BB_VISITED flags on basic blocks as we process them.

From-SVN: r91016
2004-11-22 15:18:50 +00:00
Nathan Sidwell
f96bc21354 altivec.md (VI_char): New mode attribute.
* config/rs6000/altivec.md (VI_char): New mode attribute.
	(addv16qi3, addv8hi3, addv4ai3): Replace with ...
	(add<mode>3): ... this.
	(subv16qi3, subv8hi3, subv4ai3): Replace with ...
	(sub<mode>3): ... this.
	(smaxv16qi3, smaxv8hi3, smaxv4ai3): Replace with ...
	(smax<mode>3): ... this.
	(sminv16qi3, sminv8hi3, sminv4ai3): Replace with ...
	(smin<mode>3): ... this.
	(umaxv16qi3, umaxv8hi3, umaxv4ai3): Replace with ...
	(umax<mode>3): ... this.
	(uminv16qi3, uminv8hi3, uminv4ai3): Replace with ...
	(umin<mode>3): ... this.
	(andv16qi3, andv8hi3, andv4ai3): Replace with ...
	(and<mode>3): ... this.
	(iorv16qi3, iorv8hi3, iorv4ai3): Replace with ...
	(ior<mode>3): ... this.
	(xorv16qi3, xorv8hi3, xorv4ai3): Replace with ...
	(xor<mode>3): ... this.
	(andv16qi3, andv8hi3, andv4ai3): Replace with ...
	(and<mode>3): ... this.
	(iorv16qi3, iorv8hi3, iorv4ai3): Replace with ...
	(ior<mode>3): ... this.
	(altivec_vnor): Replace with ...
	(altivec_nor<mode>): ... this.
	(one_cmplv16qi2, one_cmplv8hi2, one_complv4ai2): Replace with ...
	(one_cmpl<mode>2): ... this.
	(altivec_vandc): New expander.
	(*andc<mode>3): New insn.
	* config/rs6000/rs6000.c (bdesc_2arg): Adjust for new insn names.

From-SVN: r91015
2004-11-22 14:56:06 +00:00
Dorit Naishlos
618bb89c87 re PR tree-optimization/18536 (ICE: in emit_move_insn, at expr.c:2590 with -ftree-vectorize -msse2)
PR tree-opt/18536
        * tree-vectorizer.c (make_loop_iterate_ntimes): Use type of niters when
        creating iv instead of integer_type.
        (vect_build_loop_niters): Remove redundant code.
        (vect_transform_loop_bound): Removed (duplicates functionality of
        make_loop_iterate_ntimes.
        (vect_gen_niters_for_prolog_loop): Add documentation. Call
        lang_hooks.types.type_for_size to create a type of the required size.
        Use that type instead of integer_type. Remove redundant code.
        (vect_update_niters_after_peeling): Use type of niters instead of
        integer_type.
        (vect_transform_loop): Unify handling of known and unknown loop bound
        cases. Call make_loop_iterate_ntimes instead of
        vect_transform_loop_bound.

From-SVN: r91014
2004-11-22 13:55:05 +00:00
Andrew Pinski
9633a6ac62 re PR ada/17986 (Compile error for make.adb breaks bootstrap)
2004-11-22  Andrew Pinski  <pinskia@physics.uc.edu>

        PR ada/17986
        * ada-tree.h (lang_tree_node): Set chain_next to be the chain of the
        tree.

From-SVN: r91013
2004-11-22 05:50:41 -08:00
Andrew Pinski
b6a4e96391 re PR target/18217 (Ada Bootstrap failures on powerpc-darwin with undefined symbol (__Unwind_fallback_frame_state_for))
2004-11-22  Andrew Pinski  <pinskia@physics.uc.edu>

        PR target/18217
        * config/rs6000/t-darwin (LIB2FUNCS_EXTRA): Move darwin-fallback.c to
        (LIB2ADDEH): Here.

From-SVN: r91012
2004-11-22 05:49:40 -08:00
Dorit Naishlos
2fa2d802da re PR tree-optimization/18544 (ICE with -ftree-vectorize)
PR tree-opt/18544
        * tree-vectorizer.c (vect_analyze_data_refs): Fail if memtag not found.

From-SVN: r91011
2004-11-22 13:41:57 +00:00
Kazuhiro Inaoka
b94d4fe027 onfig.gcc: Use t-slibgcc-elf to build libgcc_s.so on m32r*linux.
config/m32r/t-linux (SHLIB_MAPFILES): Override to use m32r/libgcc-glibc.ver.
config/m32r/libgcc-glibc.ver: Add New file.

From-SVN: r91010
2004-11-22 12:34:37 +00:00
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