Commit Graph

58331 Commits

Author SHA1 Message Date
Steven Bosscher
6af8eb5714 Expanders cleanups after tree-ssa merge, part 1.
2004-05-19  Steven Bosscher  <stevenb@suse.de>

	Expanders cleanups after tree-ssa merge, part 1.

	* expr.c (store_constructor): Build loop start and end by hand
	instead of via loop functions from stmt.c.
	(expand_expr_real_1): Abort if we see an EXIT_EXPR or a LOOP_EXPR.
	Remove the code to expand them.

	* stmt.c (loop_stack): Remove this and everything related.
	(struct nesting, enum nesting_desc): Update.
	(expand_fixup): Likewise.
	(expand_loop_start, expand_start_loop_continue_elsewhere,
	expand_start_null_loop, expand_loop_continue_here, expand_end_loop,
	expand_end_null_loop, expand_continue_loop, expand_exit_loop,
	expand_exit_loop_if_false, expand_exit_loop_top_cond,
	expand_exit_something): Remove.
	* tree.h: Remove prototypes.

From-SVN: r82018
2004-05-19 06:26:21 +00:00
Andrew Pinski
cc52902d97 tree-ssa-phiopt.c (abs_replacement): New function.
* tree-ssa-phiopt.c (abs_replacement): New function.
        (empty_block_p): New function extracted from...
        (candidate_bb_for_phi_optimization): Break out empty block test.
        (conditional_replacement): Use empty_block_p.
        (value_replacement): Similarly.

        * gcc.dg/tree-ssa/20040514-2.c: Update expected output.
        * gcc.dg/tree-ssa/20040518-2.c: New test.

Co-Authored-By: Jeff Law <law@redhat.com>

From-SVN: r82017
2004-05-18 21:35:19 -06:00
Mike Stump
eeab4d81a6 tm.texi (TARGET_ASM_EMIT_UNWIND_LABEL): Add argument to indicate if this label is for eh.
* doc/tm.texi (TARGET_ASM_EMIT_UNWIND_LABEL): Add argument to indicate
	if this label is for eh.
	* config/darwin-protos.h (darwin_emit_unwind_label): Likewise.
	* config/darwin.c (darwin_emit_unwind_label): Likewise.
	* dwarf2out.c (output_call_frame_info): Likewise.
	* output.h (default_emit_unwind_label): Likewise.
	* target.h (unwind_label): Likewise.
	* varasm.c (default_emit_unwind_label): Likewise.

	* config/darwin.h (DWARF2_DEBUGGING_INFO, PREFERRED_DEBUGGING_TYPE,
	DEBUG_FRAME_SECTION, DEBUG_INFO_SECTION, DEBUG_ABBREV_SECTION,
	DEBUG_ARANGES_SECTION, DEBUG_MACINFO_SECTION, DEBUG_LINE_SECTION,
	DEBUG_LOC_SECTION, DEBUG_PUBNAMES_SECTION, DEBUG_STR_SECTION,
	DEBUG_RANGES_SECTION): Define.

Radar 3657068.

Co-Authored-By: Devang Patel <dpatel@apple.com>

From-SVN: r82016
2004-05-19 02:11:42 +00:00
Zack Weinberg
bb9a388dad * cgraph.c (hash_node, eq_node, cgraph_node, cgraph_remove_node)
(cgraph_varpool_hash_node, eq_cgraph_varpool_node)
	(cgraph_varpool_node):
	Use DECL_UID for the key, not DECL_ASSEMBLER_NAME.
	(cgraph_function_possibly_inlined_p): Use the decl itself for
	the key, not DECL_ASSEMBLER_NAME.
	(change_decl_assembler_name): No need to muck with the hash tables.
	(cgraph_node_for_identifier, cgraph_varpool_node_for_identifier):
	Delete.
	* cgraphunit.c (cgraph_mark_inline_edge): Use the decl itself
	for the key, not DECL_ASSEMBLER_NAME.
	* cgraph.h: Remove prototypes of deleted functions.
	* varasm.c (mark_referenced): Just set TREE_SYMBOL_REFERENCED.
	(mark_decl_referenced): New function.
	* tree.h: Prototype mark_decl_referenced.
	* final.c (output_addr_const) <case SYMBOL_REF>: Call
	mark_decl_referenced before assemble_name.
	* c-decl.c (finish_decl): Use mark_decl_referenced.
cp:
	* decl.c (cp_finish_decl): Use mark_decl_referenced.
	* decl2.c (maybe_make_one_only): Likewise.
	* method.c (use_thunk): Likewise.

From-SVN: r82015
2004-05-19 01:28:56 +00:00
Feng Wang
5b200ac2c7 f95-lang.c (gfc_init_builtin_functions): Use vold_list_node.
* f95-lang.c (gfc_init_builtin_functions): Use vold_list_node.
	Create decls for __builtin_pow{,f}.
	* gfortran.h (PREFIX_LEN): Define.
	* trans-decl.c (gfor_fndecl_math_powi): Add.
	(gfor_fndecl_math_powf, gfor_fndecl_math_pow): Remove.
	(gfc_build_intrinsic_function_decls): Create decls for powi.
	* trans-expr.c (powi_table): Add.
	(gfc_conv_integer_power): Remove.
	(gfc_conv_powi): New function.
	(gfc_conv_cst_int_power): New function.
	(gfc_conv_power_op): Use new powi routines.
	* trans.h (struct gfc_powdecl_list): Add.
	(gfor_fndecl_math_powi): Add.
	(gfor_fndecl_math_powf, gfor_fndecl_math_pow): Remove.
testsuite/
	* gfortran.fortran-torture/execute/power.f90: Test constant integers.
libgfortran/
	* Makefile.am (i_pow_c): Set it. Add build rule.
	(gfor_built_src): Use it.
	(m4_files): add m4/pow.m4.
	* Makefile.in: Regenerate.
	* m4/pow.m4: New file.
	* generated/pow_*.c: Regenerate.

From-SVN: r82014
2004-05-19 00:34:59 +00:00
GCC Administrator
933520b9be Daily bump.
From-SVN: r82012
2004-05-19 00:16:12 +00:00
Tobias Schlüter
472ca416af * trans.c, trans-decl.c: Fix comment typos.
From-SVN: r82008
2004-05-19 01:37:47 +02:00
Jason Merrill
d7981fd95f * class.c (build_base_path): Tidy a bit.
From-SVN: r82004
2004-05-18 15:53:21 -04:00
Paul Brook
c9e66eda1a Makefile.am: Remove references to types.m4.
* Makefile.am: Remove references to types.m4.
	* m4/iparm.m4: Merge with types.m4.
	* m4/types.m4: Remove.
	* m4/cshift1.m4, m4/dotprod.m4, m4/dotprodc.m4, m4/dotprodl.m4,
	m4/eoshift1.m4, m4/eoshift3.m4, m4/iforeach.m4, m4/ifunction.m4,
	m4/in_pack.m4, m4/in_unpack.m4, m4/iparm.m4, m4/matmul.m4,
	m4/matmull.m4, m4/maxloc0.m4, m4/maxloc1.m4, m4/maxval.m4,
	m4/minloc0.m4, m4/minloc1.m4, m4/minval.m4, m4/reshape.m4,
	m4/shape.m4, m4/specific.m4, m4/specific2.m4, m4/transpose.m4):
	Update to use new iparm.m4.
	* generated/*.c: Regenerate.

From-SVN: r82003
2004-05-18 19:03:26 +00:00
Jan Beulich
b79634e3d8 re PR libstdc++/15489 (testsuite_files determined incorrectly)
2004-05-18  Jan Beulich  <jbeulich@novell.com>

        PR libstdc++/15489
        * scripts/create_testsuite_files: Also find source files through
          symbolic links.

2004-05-18  Jan Beulich  <jbeulich@novell.com>

	PR libstdc++/15488
	* testsuite/lib/libstdc++.exp: Make test files writable.

From-SVN: r82002
2004-05-18 18:42:27 +00:00
Andrew Pinski
3a3f4da937 Makefile.in (tree-ssa-phiopt.o): Depends on flags.h.
* Makefile.in (tree-ssa-phiopt.o): Depends on flags.h.
        * tree-ssa-phiopt.c: Include flags.h.
        (conditional_replacement): Remove argument names from prototype.
        Minor formatting and comment fixes.
        (tree_ssa_phiopt): If conditional_replacement returns false, then
        call value_replacement.
        (value_replacement): New function.

        * gcc.dg/tree-ssa/20040518-1.c: New test.

Co-Authored-By: Jeff Law <law@redhat.com>

From-SVN: r81999
2004-05-18 11:32:54 -06:00
Tobias Schlüter
e584e50152 * trans-const.c (gfc_conv_mpf_to_tree): Fix typo.
From-SVN: r81997
2004-05-18 18:48:09 +02:00
Jeff Law
1833df5cfe tree-ssa-phiopt.c (replace_phi_with_stmt): New function extracted from conditional_replacement.
* tree-ssa-phiopt.c (replace_phi_with_stmt): New function extracted
        from conditional_replacement.
        (candidate_bb_for_phi_optimization): Similarly.
        (conditional_replacement): Use replace_phi_with_stmt and
        candidate_bb_for_phi_optimization.

From-SVN: r81996
2004-05-18 10:23:25 -06:00
Jeff Law
14886ab7b7 * tree-ssa-phiopt.c: Fix various formatting issues.
From-SVN: r81995
2004-05-18 10:13:44 -06:00
Tobias Schlüter
81f4be3ce1 re PR libfortran/15235 (libgfortran doesn't build on Solaris 10)
PR fortran/15235
* gfortran.h (offset_t): Rename to ...
(gfc_offset): ... this.
* io/backspace.c (formatted_backspace, unformatted_backspace),
io/io.h (stream, gfc_unit, global_t, file_length, file_position),
transfer.c (us_read, us_write, next_record_r, next_record_w),
io/unit.c (init_units), unix.c (unix_stream, fd_alloc,
fd_alloc_r_at, fd_alloc_w_at, fd_seek, mmap_alloc,
mmap_alloc_r_at, mmap_alloc_w_at, mmap_seek, mem_alloc_r_at,
mem_alloc_w_at, mem_seek, file_length, file_position): Replace all
occurences of offset_t by gfc_offset.

From-SVN: r81994
2004-05-18 18:06:09 +02:00
Zack Weinberg
7d72d96efe * gcc.c-torture/execute/991216-3.c: Delete, duplicate of 991216-2.c.
From-SVN: r81993
2004-05-18 16:03:11 +00:00
Paolo Carlini
2ab20654a2 [multiple changes]
2004-05-18  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/mt_allocator.h:(__mt_alloc::allocate): Minor
	tweaks.

2004-05-18  Dhruv Matani  <dhruvbird@gmx.net>

	* include/ext/mt_allocator.h:(__mt_alloc::allocate): Re-write
	allocation loop which removes blocks from the global free list
	from O(N) to O(1) when the required blocks are <= the number
	available.

From-SVN: r81992
2004-05-18 15:58:33 +00:00
Steven Bosscher
70315fcdde s390.c (s390_expand_movstr, [...]): Do not use expand_start_loop and expand_end_loop, instead build the loop manually.
* config/s390/s390.c (s390_expand_movstr, s390_expand_clrstr,
	s390_expand_cmpmem): Do not use expand_start_loop and
	expand_end_loop, instead build the loop manually.

From-SVN: r81990
2004-05-18 14:43:58 +00:00
Steve Kargl
e332b68d76 arith.c (gfc_int2complex): Fix incorrect range checking.
2004-05-17  Steve Kargl  <kargls@comcast.net>

* arith.c (gfc_int2complex): Fix incorrect range checking.

From-SVN: r81985
2004-05-18 13:09:29 +02:00
Kaz Kojima
e72f28d00a acinclude.m4 (lt_cv_deplibs_check_method): Use pass_all on sh*.
* acinclude.m4 (lt_cv_deplibs_check_method): Use pass_all on sh*.
	* aclocal.m4, configure: Rebuilt.

From-SVN: r81981
2004-05-18 10:35:12 +00:00
Kaz Kojima
c779c42fc3 re PR bootstrap/15120 ([3.3 only] [libtool bug] hidden symbol `__sdivsi3_i4' is referenced by DSO)
PR bootstrap/15120
	* libtool.m4 (lt_cv_deplibs_check_method): Use pass_all on sh*.
	* */configure: Rebuilt.

From-SVN: r81980
2004-05-18 10:11:38 +00:00
Jonathan Wakely
319da9da6b enc_filebuf.h: Move concept-check macro to class scope.
2004-05-18  Jonathan Wakely  <redi@gcc.gnu.org>

	* include/ext/enc_filebuf.h: Move concept-check macro to class scope.

From-SVN: r81978
2004-05-18 10:09:39 +01:00
Steven Bosscher
8eb14e2ebf fix broken CL entry
From-SVN: r81975
2004-05-18 07:30:14 +00:00
Alan Modra
f82ddcaedb rs6000.md (ctrsi_internal3): Delete.
* config/rs6000/rs6000.md (ctrsi_internal3): Delete.
	(ctrsi_internal4, ctrdi_internal3, ctrdi_internal4): Delete.

From-SVN: r81973
2004-05-18 15:05:30 +09:30
Benjamin Kosnik
261e5b9e6a [multiple changes]
2004-05-17  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/testsuite_hooks.h (__gnu_test::conversion): New class.
	* testsuite/23_containers/deque/14340.cc: New.
	* testsuite/23_containers/list/14340.cc: New.
	* testsuite/23_containers/map/14340.cc: New.
	* testsuite/23_containers/multimap/14340.cc: New.
	* testsuite/23_containers/multiset/14340.cc: New.
	* testsuite/23_containers/set/14340.cc: New.
	* testsuite/23_containers/vector/14340.cc: New.

2004-05-17  Douglas Gregor   <gregod@cs.rpi.edu>

	PR libstdc++/14340
	* include/debug/safe_iterator.h (_Safe_iterator converting
	constructor): Only allow declaration to instantiate when the
	incoming _Safe_iterator has exactly the right iterator type.

From-SVN: r81970
2004-05-18 03:27:57 +00:00
Jeff Law
85b87c94af Forgot to commit.
From-SVN: r81969
2004-05-17 20:55:41 -06:00
Jeff Law
dd7473111a toplev.h (flag_delete_null_pointer_checks): Move from here to...
* toplev.h (flag_delete_null_pointer_checks): Move from here to...
        * flags.h (flag_delete_null_pointer_checks): Here.
        * tree-flow.h (cprop_into_successor_phis): Add argument to prototype.
        * tree-phinodes.c (resize_phi_node): Initialize PHI_ARG_NONZERO.
        (add_phi_arg, remove_phi_arg_num): Similarly.
        * tree-ssa-copy.c (cprop_into_successor_phis): Propagate nonzero
        property into PHI nodes.
        * tree-ssa-dom.c: Remove redundant inclusion of flags.h.
        (record_equivalences_from_phis): If all PHI arguments are known to be
        nonzero, then the result must be nonzero as well.
        (cprop_into_phis): Pass nonzero_vars bitmap to cprop_into_successor_phis        (record_equivalences_from_stmt): Check flag_delete_null_pointer_checks
        appropriately.  Walk the USE-DEF chains and propagate nonzero property
        as appropriate.
        * tree.h (PHI_ARG_NONZERO): Define.
        (phi_arg_d): Add nonzero flag.

From-SVN: r81968
2004-05-17 20:53:55 -06:00
Zack Weinberg
b4117c3061 Makefile.def, [...]: Remove all mention of libf2c.
top:
	* Makefile.def, Makefile.tpl, configure.in: Remove all mention
	of libf2c.
	* configure, Makefile.in: Regenerate.
contrib:
	* gcc_update: Remove gcc/f/intdoc.texi and all libf2c files
	from list of files to be touched.
	* convert_to_f2c, convert_to_g2c, download_f2c: Delete.
gcc:
	* f: Entire directory removed

	* c-common.h (CTI_G77_INTEGER_TYPE, CTI_G77_UINTEGER_TYPE)
	(CTI_G77_LONGINT_TYPE, CTI_G77_ULONGINT_TYPE)
	(g77_integer_type_node, g77_uinteger_type_node)
	(g77_longint_type_node, or g77_ulongint_type_node): Delete.
	* c-common.c (c_common_nodes_and_builtins): Do not initialize
	the above set of variables.

	* config/i386/uwin.h: No need to define WIN32_UWIN_TARGET.
	* doc/invoke.texi, doc/standards.texi: Remove cross-references
	to g77 manual.
gcc/po:
	* exgettext (spec_error_string): Do not scan beyond the end of
	the string for a close brace.  Do not bail out at the first
	incidence of %%e.
	* gcc.pot: Regenerate.

From-SVN: r81967
2004-05-18 01:26:21 +00:00
Paul Brook
54b4ba60f2 re PR fortran/13930 (derived type with intent(in) attribute not accepted)
PR fortran/13930
	* decl.c (add_init_expr_to_sym): Remove incorrect check.
	(default_initializer): Move to expr.c.
	(variable_decl): Don't assign default initializer to variables.
	* expr.c (gfc_default_initializer): Move to here.
	* gfortran.h (gfc_default_initializer): Add prototype.
	* resolve.c (resolve_symbol): Check for illegal initializers.
	Assign default initializer.
testsuite/
	* gfortran.fortran-torture/execute/der_init_4.f90: New test.

From-SVN: r81966
2004-05-18 00:48:05 +00:00
GCC Administrator
b7cefb87f0 Daily bump.
From-SVN: r81964
2004-05-18 00:16:13 +00:00
Tobias Schlüter
24f8f5ec56 cmplx.f90: Add test for bug in constant folding.
* gfortran.fortran-torture/execute/cmplx.f90: Add test for bug in
constant folding.

From-SVN: r81961
2004-05-18 02:13:51 +02:00
Steve Kargl
f12f786b86 arith.c (gfc_arith_power): Complex number raised to 0 power is 1.
2004-05-17  Steve Kargl  <kargls@comcast.net>

* arith.c (gfc_arith_power): Complex number raised to 0 power is 1.

From-SVN: r81959
2004-05-18 01:54:09 +02:00
Kelley Cook
2f70118592 gcc_release (build_sources): Change CRCs from brik to md5sum.
[maintainer-scripts/]
2004-05-17  Kelley Cook  <kcook@gcc.gnu.org>

	* gcc_release (build_sources): Change CRCs from brik to md5sum.
[htdocs/]
2004-05-17  Kelley Cook  <kcook@gcc.gnu.org>

	* snapshots.html: Update docs for checking with md5sum.

From-SVN: r81958
2004-05-17 23:26:49 +00:00
Steve Kargl
e876acbd25 arith.c (gfc_real2complex): Range checking wrong part of complex number.
2004-05-17  Steve Kargl  <kargls@comcast.net>

* arith.c (gfc_real2complex): Range checking wrong part of complex
        number.

From-SVN: r81957
2004-05-18 01:19:47 +02:00
Jonathan Wakely
b2342b5484 boost_concept_check.h: Fix old attribute syntax.
2004-05-17  Jonathan Wakely  <redi@gcc.gnu.org>

	* include/bits/boost_concept_check.h: Fix old attribute syntax.
	* testsuite/23_containers/map/modifiers/swap.cc: Define operator<
	to pass concept-checks.
	* testsuite/23_containers/multimap/modifiers/swap.cc: Same.
	* testsuite/23_containers/set/modifiers/swap.cc: Same.
	* testsuite/23_containers/multiset/modifiers/swap.cc: Same.

From-SVN: r81953
2004-05-17 22:56:18 +01:00
Steven Bosscher
5e806501e1 oh oh oh. forgot to add the PR number.
From-SVN: r81952
2004-05-17 21:28:56 +00:00
Steven Bosscher
6944d9ddb0 tree-ssa-operands.c (get_expr_operands): Do not treat malloc attributed functions as pure or const.
* tree-ssa-operands.c (get_expr_operands): Do not treat malloc
	attributed functions as pure or const.

From-SVN: r81951
2004-05-17 21:25:32 +00:00
Volker Reichelt
719df717e2 * gcc.dg/loop-4.c: New test.
From-SVN: r81946
2004-05-17 20:53:55 +00:00
Frank Ch. Eigler
e1564e1d4e tree-mudflap.c (mx_register_decls): Tolerate decl trees resulting from source code with errors.
2004-05-17  Frank Ch. Eigler  <fche@redhat.com>

	* tree-mudflap.c (mx_register_decls): Tolerate decl trees resulting
	from source code with errors.

From-SVN: r81945
2004-05-17 20:35:52 +00:00
Frank Ch. Eigler
9193542205 libmudflap.exp (libmudflap-init): For C++ test cases only...
2004-05-17  Frank Ch. Eigler  <fche@redhat.com>

	* lib/libmudflap.exp (libmudflap-init): For C++ test cases only,
	import some build settings from libstdc++-v3 testsuite_flags.
	* .../cfrags.exp, .../c++frags.exp, .../cthfrags.exp: Corresponding
	changes to pass test language.

	* mf-runtime.c (__mfu_check): Poison the cache with antidote for
	quicker mode-nop handling.

From-SVN: r81944
2004-05-17 20:34:19 +00:00
Ranjit Mathew
66ba727348 * check-init.c: Correct minor typos.
From-SVN: r81940
2004-05-17 15:57:48 +00:00
Ranjit Mathew
a2824db366 Enable tree browser for all front ends.
* Makefile.in (cc1): Moved @TREEBROWSER@ from here...
	(BACKEND): ...to here.

From-SVN: r81939
2004-05-17 15:51:22 +00:00
Jan Hubicka
2c6b27c369 i386.c (construct_container): Do not produce BLKmode registers.
* i386.c (construct_container): Do not produce BLKmode registers.
	(classify_argument): Properly compute alignment of complex types.

From-SVN: r81937
2004-05-17 15:23:12 +00:00
H.J. Lu
044b389201 re PR target/15084 (-O/-O2 generate wrong code on structure modification)
2004-05-17  H.J. Lu  <hongjiu.lu@intel.com>

	PR target/15084
	* config/i386/i386.md (*movsi_insv_1_rex64): Changed to DImode
	and renamed to movdi_insv_1_rex64.
	(insv): Support SImode for 32bit and DImode for 64bit.

From-SVN: r81936
2004-05-17 07:30:18 -07:00
Arnaud Charlet
b5e792e209 [multiple changes]
2004-05-17  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>

	Part of function-at-a-time conversion

	* misc.c (adjust_decl_rtl): Deleted.
	(LANG_HOOKS_PUSHLEVEL, LANG_HOOKS_POPLEVEL, LANG_HOOKS_SET_BLOCK):
	Define.

	* gigi.h: (adjust_decl_rtl, kept_level_p, set_block): Deleted.
	(add_decl_stmt, add_stmt, block_has_vars): New functions.
	(gnat_pushlevel, gnat_poplevel): Renamed from pushlevel and poplevel.

	* decl.c (elaborate_expression, maybe_pad_type): Call add_decl_stmt
	when making a decl.
	(gnat_to_gnu_entity): Likewise.
	Use add_stmt to update setjmp buffer.
	Set TREE_ADDRESSABLE instead of calling put_var_into_stack and
	flush_addressof.
	No longer call adjust_decl_rtl.
	(DECL_INIT_BY_ASSIGN_P): New macro.
	(DECL_STMT_VAR): Likewise.

	* trans.c (gigi): Call start_block_stmt to make the outermost
	BLOCK_STMT.
	(gnat_to_code, gnu_to_gnu, tree_transform, process_decls, process_type):
	Call start_block_stmt and end_block_stmt temporarily.
	Use gnat_expand_stmt instead of expand_expr_stmt.
	(add_decl_stmt): New function.
	(tree_transform): Call it.
	(add_stmt): Also emit initializing assignment for DECL_STMT if needed.
	(end_block_stmt): Set type and NULL_STMT.
	(gnat_expand_stmt): Make recursize call instead of calling
	expand_expr_stmt.
	(gnat_expand_stmt, case DECL_STMT): New case.
	(set_lineno_from_sloc): Do nothing if global.
	(gnu_block_stmt_node, gnu_block_stmt_free_list): New variables.
	(start_block_stmt, add_stmt, end_block_stmt): New functions.
	(build_block_stmt): Call them.
	(gnat_to_code): Don't expand NULL_STMT.
	(build_unit_elab): Rename pushlevel and poplevel to gnat_* and change
	args.
	(tree_transform): Likewise.
	(tree_transform, case N_Null_Statement): Return NULL_STMT.
	(gnat_expand_stmt, case NULL_STMT): New case.
	(gnat_expand_stmt, case IF_STMT): Allow nested IF_STMT to have no
	IF_STMT_TRUE.

	* utils2.c (gnat_mark_addressable, case VAR_DECL): Do not set
	TREE_ADDRESSABLE.

	* utils.c (create_var_decl): Do not call expand_decl or
	expand_decl_init.
	Set TREE_ADDRESSABLE instead of calling gnat_mark_addressable.
	Set DECL_INIT_BY_ASSIGN_P when needed and do not generate MODIFY_EXPR
	here.
	(struct e_stack): Add chain_next to GTY.
	(struct binding_level): Deleted.
	(struct ada_binding_level): New struct.
	(free_block_chain): New.
	(global_binding_level, clear_binding_level): Deleted.
	(global_bindings_p): Rework to see if no chain.
	(kept_level_p, set_block): Deleted.
	(gnat_pushlevel): Renamed from pushlevel and extensive reworked to use
	new data structure and work directly on BLOCK node.
	(gnat_poplevel): Similarly.
	(get_decls): Look at BLOCK_VARS.
	(insert_block): Work directly on BLOCK node.
	(block_has_var): New function.
	(pushdecl): Rework for new binding structures.
	(gnat_init_decl_processing): Rename and rework calls to pushlevel and
	poplevel.
	(build_subprog_body): Likewise.
	(end_subprog_body): Likewise; also set up BLOCK in DECL_INITIAL.

	* ada-tree.def (DECL_STMT, NULL_STMT): New codes.

	* ada-tree.h: (DECL_INIT_BY_ASSIGN_P): New macro.
	(DECL_STMT_VAR): Likewise.

2004-05-17  Robert Dewar  <dewar@gnat.com>

	* restrict.ads, restrict.adb (Process_Restriction_Synonym): New
	procedure

	* sem_prag.adb (Analyze_Pragma, case Restrictions): Cleanup handling
	of restriction synonyums by using
	Restrict.Process_Restriction_Synonyms.

	* snames.ads, snames.adb: Add entries for Process_Restriction_Synonym

	* s-restri.ads (Tasking_Allowed): Correct missing comment

	* s-rident.ads: Add entries for restriction synonyms

	* ali.adb: Fix some problems with badly formatted ALI files that can
	result in infinite loops.

	* s-taprop-lynxos.adb, s-tpopsp-lynxos.adb, s-taprop-tru64.adb,
	s-tpopsp-posix-foreign.adb, s-taprop-irix.adb, s-interr-sigaction.adb,
	s-taprop-irix-athread.adb, s-taprop-hpux-dce.adb, s-taprop-linux.adb,
	s-taprop-dummy.adb, s-interr-dummy.adb, s-taprop-os2.adb,
	s-taprop-solaris.adb, s-tpopsp-solaris.adb, s-asthan-vms.adb,
	s-inmaop-vms.adb, s-interr-vms.adb, s-taprop-vms.adb,
	s-tpopde-vms.adb, s-taprop-mingw.adb, s-interr-vxworks.adb,
	s-taprop-vxworks.adb, s-tpopsp-vxworks.adb, s-taprop-posix.adb,
	s-tpopsp-posix.adb, s-tratas-default.adb, a-dynpri.adb,
	a-tasatt.adb, a-taside.adb, a-taside.ads, exp_attr.adb,
	exp_ch9.adb, g-thread.adb, rtsfind.ads, sem_attr.adb,
	s-interr.adb, s-interr.ads, s-soflin.ads, s-taasde.adb,
	s-taasde.ads, s-taenca.adb, s-taenca.ads, s-taprop.ads,
	s-tarest.adb, s-tarest.ads, s-tasdeb.adb, s-tasdeb.ads,
	s-tasini.adb, s-tasini.ads, s-taskin.adb, s-taskin.ads,
	s-tasque.adb, s-tasque.ads, s-tasren.adb, s-tasren.ads,
	s-tassta.adb, s-tassta.ads, s-tasuti.adb, s-tasuti.ads,
	s-tataat.adb, s-tataat.ads, s-tpinop.adb, s-tpinop.ads,
	s-tpoben.adb, s-tpobop.adb, s-tpobop.ads, s-tporft.adb,
	s-tposen.adb, s-tposen.ads, s-tratas.adb, s-tratas.ads: Change Task_ID
	to Task_Id (minor cleanup).

2004-05-17  Vincent Celier  <celier@gnat.com>

	* g-os_lib.adb (Normalize_Pathname.Final_Value): Remove trailing
	directory separator.

	* prj-proc.adb (Recursive_Process): Inherit attribute Languages from
	project being extended, if Languages is not declared in extending
	project.

2004-05-17  Javier Miranda  <miranda@gnat.com>

	* sem_ch10.adb (Install_Limited_Withed_Unit): Do not install the
	limited view of a visible sibling.

From-SVN: r81935
2004-05-17 15:20:48 +02:00
Richard Sandiford
646ca712a1 mips.h (MASK_DEBUG_G, [...]): Delete.
* config/mips/mips.h (MASK_DEBUG_G, TARGET_DEBUG_G_MODE): Delete.
	(TARGET_SWITCHES): Remove debugg.
	* config/mips/mips.md (adddi3, ashldi3, ashrdi3, lshrdi3): Only handle
	TARGET_64BIT.
	(subdi3): Replace the define_expand with a define_insn, the latter
	renamed from subdi3_internal_3.
	(negdi2): Likewise negdi2_internal_2.
	(adddi3_internal_[12], subdi3_internal, ashldi3_internal{,2,3})
	(ashrdi3_internal{,2,3}, lshrdi3_internal{,2,3}): Remove patterns
	and associated define_splits.
	(adddi3_internal): Renamed from adddi3_internal_3.
	(ashldi3_internal): Likewise ashldi3_internal4.
	(ashrdi3_internal): Likewise ashrdi3_internal4.
	(lshrdi3_internal): Likewise lshrdi3_internal4.

From-SVN: r81934
2004-05-17 06:52:43 +00:00
Richard Sandiford
d83aba0f8b optabs.c (expand_unop): Try implementing negation using subtraction from zero.
* optabs.c (expand_unop): Try implementing negation using subtraction
	from zero.

From-SVN: r81933
2004-05-17 06:50:51 +00:00
John David Anglin
15581992c8 pa.md: Fix typo from last change.
* pa.md:  Fix typo from last change.  Remove DFmode move to and from
	SAR register.

From-SVN: r81932
2004-05-17 03:01:23 +00:00
GCC Administrator
43d95aeec1 Daily bump.
From-SVN: r81930
2004-05-17 00:16:46 +00:00
Richard Earnshaw
2a2789d84a re PR target/10982 ([arm] poor optimisation of "if (var & const)")
PR target/10982
* arm.md (ne_zeroextractsi): Convert to insn-and-split.
(ne_zeroextractsi_shifted): New pattern.
(ite_ne_zeroextractsi): New pattern.
(ite_ne_zeroextractsi_shifted): New pattern.

From-SVN: r81926
2004-05-16 22:22:49 +00:00