OSDN Git Service

15 years agopatch to fix extraneous nop at function start, bug from David Mosberger
wilson [Thu, 17 Mar 2005 03:51:09 +0000 (03:51 +0000)]
patch to fix extraneous nop at function start, bug from David Mosberger
* config/ia64/ia64.c (issue_nops_and_insn): Check first_insn attribute,
and return without creating new state if before_nops_num is nonzero.
* config/ia64/ia64.md (first_insn): New attribute.
(alloc): Set it to yes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96597 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-16 Andrew Haley <aph@redhat.com>
bryce [Thu, 17 Mar 2005 02:53:21 +0000 (02:53 +0000)]
2005-03-16  Andrew Haley  <aph@redhat.com>

        * boehm.cc (_Jv_MarkObj): Mark the interpreted method line_table.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96596 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-16 Thomas Fitzsimmons <fitzsim@redhat.com>
fitzsim [Thu, 17 Mar 2005 00:59:33 +0000 (00:59 +0000)]
2005-03-16  Thomas Fitzsimmons  <fitzsim@redhat.com>

* Makefile.am (gtk_c_source_files): Remove jni/classpath/jcl.c,
jni/classpath/jnilink.c, jni/classpath/primlib.c.
(lib_gnu_java_awt_peer_gtk_la_SOURCES): jni/classpath/jcl.h,
jni/classpath/jnilink.h, jni/classpath/primlib.h.
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* external/Makefile.in: Regenerate.
* external/sax/Makefile.in: Regenerate.
* external/w3c_dom/Makefile.in: Regenerate.
* gcj/Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
* jni/classpath/jcl.h: Remove.
* jni/classpath/jcl.c: Likewise.
* jni/classpath/jnilink.h: Remove.
* jni/classpath/jnilink.c: Likewise.
* jni/classpath/primlib.h: Remove.
* jni/classpath/primlib.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96590 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * link.cc (ensure_class_linked): Removed #ifdef.
tromey [Thu, 17 Mar 2005 00:18:50 +0000 (00:18 +0000)]
* link.cc (ensure_class_linked): Removed #ifdef.
(print_class_loaded): Likewise.
(wait_for_state): Likewise.
* java/lang/Class.h (_Jv_IsInterpretedClass): Always declare.
* include/jvm.h (_Jv_IsInterpretedClass): Moved from...
* include/java-interp.h: ... here.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96589 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoDaily bump.
gccadmin [Thu, 17 Mar 2005 00:17:06 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96587 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * gnu/java/lang/MainThread.java (run): Load main class using
tromey [Wed, 16 Mar 2005 23:53:19 +0000 (23:53 +0000)]
* gnu/java/lang/MainThread.java (run): Load main class using
system class loader.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96582 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-16 Daniel Berlin <dberlin@dberlin.org>
dberlin [Wed, 16 Mar 2005 21:42:55 +0000 (21:42 +0000)]
2005-03-16  Daniel Berlin  <dberlin@dberlin.org>

* tree-vectorizer.c (new_vec_stmt_info): Initialize
* tree-vect-analyze.c (vect_analyze_data_refs): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96581 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-16 Andreas Tobler <a.tobler@schweiz.ch>
andreast [Wed, 16 Mar 2005 21:16:00 +0000 (21:16 +0000)]
2005-03-16  Andreas Tobler  <a.tobler@schweiz.ch>

* testsuite/libjava.jni/jni.exp (gcj_jni_invocation_test_one): Add
lgcc_s to the libraries to link for Darwin.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96579 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-16 Dale Johannesen <dalej@apple.com>
dalej [Wed, 16 Mar 2005 20:42:37 +0000 (20:42 +0000)]
2005-03-16 Dale Johannesen  <dalej@apple.com>

        * rtlanal.c (find_first_parameter_load):  Rewrite to
        return actual first param load or the call if none,
        instead of first in block, when not all loads exist.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96578 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * io.h: Setting higher default record length.
fxcoudert [Wed, 16 Mar 2005 19:33:07 +0000 (19:33 +0000)]
* io.h: Setting higher default record length.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96574 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * open.c (new_unit): set record length to max_offset rather than
fxcoudert [Wed, 16 Mar 2005 19:32:08 +0000 (19:32 +0000)]
* open.c (new_unit): set record length to max_offset rather than
  using a hard-coded limit (which was too low).

* write_big_array.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96573 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * optabs.c (expand_copysign_absneg): Make static.
sayle [Wed, 16 Mar 2005 18:29:26 +0000 (18:29 +0000)]
* optabs.c (expand_copysign_absneg): Make static.
* optabs.h (expand_copysign_absneg): Delete prototype.
* config/rs6000/rs6000.md (copysigntf3): Delete pattern.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96572 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-15 Andreas Tobler <a.tobler@schweiz.ch>
bryce [Wed, 16 Mar 2005 18:18:59 +0000 (18:18 +0000)]
2005-03-15  Andreas Tobler  <a.tobler@schweiz.ch>

        * stacktrace.cc (_Jv_StackTrace::UnwindTraceFn): Protect
        interpreter-specific code with #ifdef INTERPRETER.
        (_Jv_StackTrace::getLineNumberForFrame): Likewise.
        (_Jv_StackTrace::FillInFrameInfo): Likewise.
        (_Jv_StackTrace::non_system_trace_fn): Likewise.
        * include/java-stack.h (struct _Jv_InterpFrameInfo): Protect  with
        #ifdef INTERPRETER. Also protect declarations that use it.
        * java/lang/Class.h: Move _Jv_StackTrace friend declaration  outside
        #ifdef INTERPRETER block.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96571 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * MAINTAINERS: adding myself.
fxcoudert [Wed, 16 Mar 2005 18:15:02 +0000 (18:15 +0000)]
* MAINTAINERS: adding myself.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96569 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * write.c (output_float): special check when writing 0.0 with
fxcoudert [Wed, 16 Mar 2005 18:09:03 +0000 (18:09 +0000)]
    * write.c (output_float): special check when writing 0.0 with
          EN and ES formats.

        * pr20480.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96566 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR middle-end/15700
rth [Wed, 16 Mar 2005 17:15:11 +0000 (17:15 +0000)]
    PR middle-end/15700
        * varasm.c (struct alias_pair): Rename from struct output_def_pair.
        (alias_pairs): Rename from output_defs.
        (find_decl_and_mark_needed): Split out from assemble_alias.
        (do_assemble_alias): New.
        (assemble_output_def): Remove.
        (finish_aliases_1, finish_aliases_2): New.
        (process_pending_assemble_output_defs): Remove.
        (assemble_alias): Defer aliases for which we don't yet have a
        non-external decl for the target symbol.
        * passes.c (rest_of_decl_compilation): Register variables with cgraph.
        * cgraphunit.c (cgraph_finalize_compilation_unit): Use finish_aliases_1.        * toplev.c (compile_file): Use finish_aliases_2 instead of
        * tree.h (finish_aliases_1, finish_aliases_2): Declare.
        (process_pending_assemble_output_defs): Remove.

        * gcc.c-torture/compile/20040323-1.c: Don't xfail for solaris.
        (_rtld_global): New.
        * gcc.dg/weak/weak-3.c (ffoox1f, ffoox1g): Define.
        * gcc.dg/weak/weak-9.c (notf1, notf2, notf3, notf4): Define.

        * gcc.dg/alias-3.c: New.
        * gcc.dg/alias-4.c: New.
        * gcc.dg/alias-5.c: New.
        * gcc.dg/alias-6.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96564 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-16 Daniel Berlin <dberlin@dberlin.org>
dberlin [Wed, 16 Mar 2005 16:25:47 +0000 (16:25 +0000)]
2005-03-16  Daniel Berlin  <dberlin@dberlin.org>

Fix PR tree-optimization/20489

* tree-ssa-alias.c (push_fields_onto_fieldstack): DTRT
for empty structures.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96562 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago Fix PR tree-optimization/20490
dberlin [Wed, 16 Mar 2005 16:22:45 +0000 (16:22 +0000)]
Fix PR tree-optimization/20490
not 20940

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96561 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-16 Daniel Berlin <dberlin@dberlin.org>
dberlin [Wed, 16 Mar 2005 16:20:12 +0000 (16:20 +0000)]
2005-03-16  Daniel Berlin  <dberlin@dberlin.org>

Fix PR tree-optimization/20940

* tree-ssa-pre.c (create_expression_by_pieces): Use
force_gimple_operand on result of fold.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96560 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * Makefile.tpl (check-[+module+]): Fix shell statement inside if ... fi.
manfred [Wed, 16 Mar 2005 15:34:56 +0000 (15:34 +0000)]
* Makefile.tpl (check-[+module+]): Fix shell statement inside if ... fi.
* Makefile.in: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96559 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-16 Andrew Pinski <pinskia@physics.uc.edu>
pinskia [Wed, 16 Mar 2005 14:48:51 +0000 (14:48 +0000)]
2005-03-16  Andrew Pinski  <pinskia@physics.uc.edu>

        * config/i386/emmintrin.h (_mm_extract_epi16): Correct the number
        of closing parenthesis.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96556 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * builtins.c (expand_movstr): Update a call to
kazu [Wed, 16 Mar 2005 14:45:15 +0000 (14:45 +0000)]
* builtins.c (expand_movstr): Update a call to
(expand_builtin_strncpy): Update a call to
(fold_builtin_strcpy, fold_builtin_strncpy): Take decomosed
arguments of CALL_EXPR.
(fold_builtin_1): Update calls to fold_builtin_strcpy and
* tree-ssa-ccp.c (ccp_fold_builtin): Likewise.
* tree.h: Update the prototypes of fold_builtin_strcpy and

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96555 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * tree-vect-analyze.c (vect_enhance_data_refs_alignment): Copy
dorit [Wed, 16 Mar 2005 11:47:38 +0000 (11:47 +0000)]
    * tree-vect-analyze.c (vect_enhance_data_refs_alignment): Copy
        UNITS_PER_SIMD_WORD to a local variable to avoid a "division by zero"

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96552 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-16 Paolo Carlini <pcarlini@suse.de>
paolo [Wed, 16 Mar 2005 11:24:36 +0000 (11:24 +0000)]
2005-03-16  Paolo Carlini  <pcarlini@suse.de>

* testsuite/20_util/functional/binders.cc: Remove explicit
instantiations for non-weak systems.
* testsuite/20_util/memory/allocator/1.cc: Likewise.
* testsuite/20_util/memory/allocator/10378.cc: Likewise.
* testsuite/20_util/memory/allocator/10416.cc: Likewise.
* testsuite/20_util/memory/allocator/8230.cc: Likewise.
* testsuite/20_util/utility/rel_ops.cc: Likewise.
* testsuite/22_locale/ctype/is/char/2.cc: Likewise.
* testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.
* testsuite/23_containers/deque/cons/1.cc: Likewise.
* testsuite/23_containers/deque/cons/2.cc: Likewise.
* testsuite/23_containers/deque/invalidation/1.cc: Likewise.
* testsuite/23_containers/deque/invalidation/2.cc: Likewise.
* testsuite/23_containers/deque/invalidation/3.cc: Likewise.
* testsuite/23_containers/deque/invalidation/4.cc: Likewise.
* testsuite/23_containers/deque/modifiers/swap.cc: Likewise.
* testsuite/23_containers/deque/operators/1.cc: Likewise.
* testsuite/23_containers/list/capacity/1.cc: Likewise.
* testsuite/23_containers/list/cons/1.cc: Likewise.
* testsuite/23_containers/list/cons/2.cc: Likewise.
* testsuite/23_containers/list/cons/3.cc: Likewise.
* testsuite/23_containers/list/cons/4.cc: Likewise.
* testsuite/23_containers/list/cons/5.cc: Likewise.
* testsuite/23_containers/list/cons/6.cc: Likewise.
* testsuite/23_containers/list/cons/7.cc: Likewise.
* testsuite/23_containers/list/cons/8.cc: Likewise.
* testsuite/23_containers/list/cons/9.cc: Likewise.
* testsuite/23_containers/list/invalidation/1.cc: Likewise.
* testsuite/23_containers/list/invalidation/2.cc: Likewise.
* testsuite/23_containers/list/invalidation/3.cc: Likewise.
* testsuite/23_containers/list/invalidation/4.cc: Likewise.
* testsuite/23_containers/list/modifiers/1.cc: Likewise.
* testsuite/23_containers/list/modifiers/2.cc: Likewise.
* testsuite/23_containers/list/modifiers/3.cc: Likewise.
* testsuite/23_containers/list/operators/1.cc: Likewise.
* testsuite/23_containers/list/operators/2.cc: Likewise.
* testsuite/23_containers/list/operators/3.cc: Likewise.
* testsuite/23_containers/list/operators/4.cc: Likewise.
* testsuite/23_containers/map/insert/1.cc: Likewise.
* testsuite/23_containers/map/invalidation/1.cc: Likewise.
* testsuite/23_containers/map/invalidation/2.cc: Likewise.
* testsuite/23_containers/map/modifiers/swap.cc: Likewise.
* testsuite/23_containers/map/operators/1.cc: Likewise.
* testsuite/23_containers/multimap/invalidation/1.cc: Likewise.
* testsuite/23_containers/multimap/invalidation/2.cc: Likewise.
* testsuite/23_containers/multimap/modifiers/swap.cc: Likewise.
* testsuite/23_containers/multiset/insert/1.cc: Likewise.
* testsuite/23_containers/multiset/insert/2.cc: Likewise.
* testsuite/23_containers/multiset/invalidation/1.cc: Likewise.
* testsuite/23_containers/multiset/invalidation/2.cc: Likewise.
* testsuite/23_containers/multiset/modifiers/swap.cc: Likewise.
* testsuite/23_containers/priority_queue/members/7161.cc: Likewise.
* testsuite/23_containers/queue/members/7157.cc: Likewise.
* testsuite/23_containers/set/insert/1.cc: Likewise.
* testsuite/23_containers/set/invalidation/1.cc: Likewise.
* testsuite/23_containers/set/invalidation/2.cc: Likewise.
* testsuite/23_containers/set/modifiers/swap.cc: Likewise.
* testsuite/23_containers/stack/members/7158.cc: Likewise.
* testsuite/23_containers/vector/bool/6886.cc: Likewise.
* testsuite/23_containers/vector/capacity/1.cc: Likewise.
* testsuite/23_containers/vector/capacity/8230.cc: Likewise.
* testsuite/23_containers/vector/cons/1.cc: Likewise.
* testsuite/23_containers/vector/cons/2.cc: Likewise.
* testsuite/23_containers/vector/cons/3.cc: Likewise.
* testsuite/23_containers/vector/cons/6513.cc: Likewise.
* testsuite/23_containers/vector/element_access/1.cc: Likewise.
* testsuite/23_containers/vector/invalidation/1.cc: Likewise.
* testsuite/23_containers/vector/invalidation/2.cc: Likewise.
* testsuite/23_containers/vector/invalidation/3.cc: Likewise.
* testsuite/23_containers/vector/invalidation/4.cc: Likewise.
* testsuite/23_containers/vector/modifiers/1.cc: Likewise.
* testsuite/23_containers/vector/modifiers/2.cc: Likewise.
* testsuite/23_containers/vector/modifiers/swap.cc: Likewise.
* testsuite/23_containers/vector/resize/1.cc: Likewise.
* testsuite/24_iterators/back_insert_iterator.cc: Likewise.
* testsuite/24_iterators/front_insert_iterator.cc: Likewise.
* testsuite/24_iterators/insert_iterator.cc: Likewise.
* testsuite/24_iterators/iterator.cc: Likewise.
* testsuite/25_algorithms/copy/1.cc: Likewise.
* testsuite/25_algorithms/copy/2.cc: Likewise.
* testsuite/25_algorithms/copy/3.cc: Likewise.
* testsuite/25_algorithms/copy/4.cc: Likewise.
* testsuite/25_algorithms/equal.cc: Likewise.
* testsuite/25_algorithms/fill/1.cc: Likewise.
* testsuite/25_algorithms/fill/2.cc: Likewise.
* testsuite/25_algorithms/min_max.cc: Likewise.
* testsuite/25_algorithms/rotate.cc: Likewise.
* testsuite/25_algorithms/unique/1.cc: Likewise.
* testsuite/25_algorithms/unique/2.cc: Likewise.
* testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Likewise.
* testsuite/ext/concept_checks.cc: Likewise.
* testsuite/ext/hash_map/1.cc: Likewise.
* testsuite/ext/hash_set/1.cc: Likewise.
* testsuite/ext/rope/1.cc: Likewise.
* testsuite/ext/rope/2.cc: Likewise.
* testsuite/ext/rope/3.cc: Likewise.
* testsuite/thread/pthread1.cc: Likewise.
* testsuite/thread/pthread4.cc: Likewise.
* testsuite/thread/pthread5.cc: Likewise.
* testsuite/thread/pthread6.cc: Likewise.
* testsuite/thread/pthread7-rope.cc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96551 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * tree-inline.c (walk_type_fields, walk_tree,
steven [Wed, 16 Mar 2005 09:01:20 +0000 (09:01 +0000)]
    * tree-inline.c (walk_type_fields, walk_tree,
        walk_tree_without_duplicates): Move from here...
        * tree.c: ...to here.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96550 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoconfig:
zack [Wed, 16 Mar 2005 06:04:10 +0000 (06:04 +0000)]
* gcc-version.m4: Delete.
* Makefile.am (fastjar_TEXINFOS): Add gcc-vers.texi.
(BASEVER, DEVPHASE): New variables.
(POD2MAN): Adjust setting of --release option.
(fastjar.1, grepjar.1, gcc-vers.texi): New rules.
* Makefile.in: Regenerate.
* configure.ac: Do not invoke TL_AC_GCC_VERSION.
* aclocal.m4, configure: Regenerate.
* Makefile.in (gcc_version, gcc_version_trigger, ): Delete.
(BASEVER_s, DEVPHASE_s, DATESTAMP_s): New variables.
(version): Define using $(BASEVER_c).
(Makefile, config.status, build/gcov-iov.o): No longer depends on
(version.o): Depend on version files; add custom generation command.
(prefix.o): Define BASEVER on command line.
(s-iov): Depend on version files; adjust command.
Add gcc-vers.texi.
(gcc-vers.texi): New rule.
(doc/%.info, doc/%.dvi): Add -I . to command line.
(doc/gccinstall.dvi): Likewise.
(PACKAGE): Delete.  All uses replaced with "gcc".
* aclocal.m4: Do not include gcc-version.m4.
* configure.ac: Do not invoke TL_AC_GCC_VERSION.
Set is_release based on contents of DEV-PHASE.
Set gcc_version based on contents of BASE-VER.
Define WIN32_REGISTRY_KEY only if the user overrode the default.
* config.in, configure: Regenerate.
* gccbug.in: Determine version of GCC in use at runtime.
* gcov-iov.c: Get version number and development phase from
command line, not by including version.c.
* intl.c: Replace all uses of PACKAGE with "gcc".
* libada-mk.in: Delete unused "gcc_version" variable.
* prefix.c: Default WIN32_REGISTRY_KEY to BASEVER.
* version.c: (VERSUFFIX): New hook for redistributors; adjust
commentary to match.
(version_string): Put together from pieces.
* config/alpha/x-vms: Do not use $(gcc_version).
* config/i386/t-nwld: Likewise.
* doc/include/gcc-common.texi: Include gcc-vers.texi for
version-GCC and DEVELOPMENT.
* Make-lang.in (doc/gnat_ugn_unw.info, doc/gnat_rm.info)
(doc/gnat_ugn_unw.dvi, doc/gnat_rm.dvi): Add gcc-vers.texi
to dependencies.
* Make-lang.in (GFORTRAN_TEXI): Add gcc-vers.texi.
* Make-lang.in (TEXI_JAVA_FILES): Add gcc-vers.texi.
* Make-lang.in (TEXI_TREELANG_FILES): Add gcc-vers.texi.
* include/Makefile.am (c++config.h): Depend on DATESTAMP from gcc
subdirectory.  Generate #define of __GLIBCXX__ from contents of
that file.
* include/Makefile.in: Regenerate.
* include/bits/c++config: Do not define __GLIBCXX__.
* README: Update.
* gcc_release: Update gcc/DEV-PHASE if that file exists, instead
of gcc/version.c.
* update_version: Handle updating gcc/DATESTAMP.
* update_web_docs: Generate gcc-vers.texi first.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96549 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR tree-optimization/17454
sayle [Wed, 16 Mar 2005 02:20:05 +0000 (02:20 +0000)]
PR tree-optimization/17454
* tree.c (tree_size): Add case for TREE_BINFO.
* fold-const.c (fold_checksum_tree): Only clear the overloaded

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96548 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-15 Geoffrey Keating <geoffk@apple.com>
geoffk [Wed, 16 Mar 2005 00:59:31 +0000 (00:59 +0000)]
2005-03-15  Geoffrey Keating  <geoffk@apple.com>

* charset.c (_cpp_valid_ucn): In identifiers, reject a partial
UCN rather than printing an error.

Index: gcc/testsuite/ChangeLog
2005-03-15  Geoffrey Keating  <geoffk@apple.com>

* gcc.dg/cpp/ucnid-7.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96546 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * mlib-tgt-darwin.adb (Library_Exist_For, Library_File_Name_For):
bosch [Wed, 16 Mar 2005 00:32:38 +0000 (00:32 +0000)]
* mlib-tgt-darwin.adb (Library_Exist_For, Library_File_Name_For):
        Add new parameter In_Tree to specify the project tree: needed
        by the project manager. Adapt to changes in project manager
        using new parameter In_Tree.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96545 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoDaily bump.
gccadmin [Wed, 16 Mar 2005 00:16:26 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96543 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-15 Paolo Carlini <pcarlini@suse.de>
paolo [Tue, 15 Mar 2005 23:38:54 +0000 (23:38 +0000)]
2005-03-15  Paolo Carlini  <pcarlini@suse.de>

PR libstdc++/20352
* include/std/std_complex.h (pow(const complex<_Tp>&,
const _Tp&)): On non-c99 platforms, don't try to compute
log of complex zero.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96538 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * optabs.c (expand_doubleword_mult): Avoid clobbering op0 and
sayle [Tue, 15 Mar 2005 23:30:23 +0000 (23:30 +0000)]
* optabs.c (expand_doubleword_mult): Avoid clobbering op0 and
op1 whilst expanding the signed widenening multiply variant.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96537 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * toplev.c (display_target_options): Avoid unused variable warning if
rsandifo [Tue, 15 Mar 2005 23:02:37 +0000 (23:02 +0000)]
* toplev.c (display_target_options): Avoid unused variable warning if
TARGET_SWITCHES and TARGET_OPTIONS are both undefined.
* config/mips/mips.c (mips_arch_string, mips_tune_string): Make static.
(mips_isa_string, mips_abi_string, mips_fix_vr4130_string): Delete.
(mips_isa): Initialize to MIPS_ABI_DEFAULT.
(mips_isa_info): New variable.
(mips_parse_cpu): Remove the first argument and leave the caller
to report errors.
(TARGET_HANDLE_OPTION): Override default.
(mips_handle_option): New function.  Move option validation code from...
(override_options): ...here.  Update calls to mips_parse_cpu.
* config/mips/mips.h (mips_arch_string, mips_tune_string)
(mips_isa_string, mips_abi_string, TARGET_OPTIONS)
* config/mips/mips.opt (mabi=, march=, mflush-func=, mips)
(mno-flush-func, mtune=): New options.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96536 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR libgcj/20251
jakub [Tue, 15 Mar 2005 20:55:22 +0000 (20:55 +0000)]
PR libgcj/20251
* Makefile.am (libjawt_la_LIBADD): Add -L$(here)/.libs.
* Makefile.in: Rebuilt.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96533 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * ada/Make-lang.in (ada/treeprs.ads, ada/einfo.h, ada/sinfo.h,
jakub [Tue, 15 Mar 2005 20:51:17 +0000 (20:51 +0000)]
* ada/Make-lang.in (ada/treeprs.ads, ada/einfo.h, ada/sinfo.h,
ada/nmake.adb, ada/nmake.ads): Use unique subdirectories of
ada/bldtools to avoid make -jN failures.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96531 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * real.c (c4x_single_format, c4x_extended_format): Provide values
sayle [Tue, 15 Mar 2005 20:43:12 +0000 (20:43 +0000)]
* real.c (c4x_single_format, c4x_extended_format): Provide values
for signbit_ro for c4x's single and extended floating point formats.
* optabs.c (expand_copysign): Use the floating point format's
signbit_ro for expanding via expand_copysign_absneg, and it's
signbit_rw field for expanding via expand_copysign_bit.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96530 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * trans.c (gnat_to_gnu) <N_Return_Statement>: Set gnu_result
ebotcazou [Tue, 15 Mar 2005 19:21:36 +0000 (19:21 +0000)]
* trans.c (gnat_to_gnu) <N_Return_Statement>: Set gnu_result
to NULL_TREE on entry.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96528 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * lib/target-supports.exp (check_vmx_hw_available): Use -maltivec for
dorit [Tue, 15 Mar 2005 18:41:19 +0000 (18:41 +0000)]
    * lib/target-supports.exp (check_vmx_hw_available): Use -maltivec for

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96527 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * tree-vectorizer.h (unknown_alignment_for_access_p): Replaced by
dorit [Tue, 15 Mar 2005 18:33:09 +0000 (18:33 +0000)]
    * tree-vectorizer.h (unknown_alignment_for_access_p): Replaced by
        (known_alignment_for_access_p): New.
        (do_peeling_for_alignment): Field made int instead of bool and renamed
        to peeling_for_alignment.
        * tree-vect-analyze.c (vect_determine_vectorization_factor): New. This
        functionality used to be in vect_analyze_operations.
        (vect_analyze_operations): Code to determine vectorization factor was
        moved to vect_determine_vectorization_factor.
        (vect_enhance_data_refs_alignment): Update to correct alignment when it
        is known instead of -1.  Set LOOP_PEELING_FOR_ALIGNMENT to peeling
        (vect_analyze_loop): Call vect_determine_vectorization_factor (used to
        be part of vect_analyze_operations).
        * tree-vectorizer.c (slpeel_tree_peel_loop_to_edge): Use fold when
        creating the guard condition, as the number of iterations may be
        (slpeel_tree_peel_loop_to_edge): Use new name of
        LOOP_DO_PEELING_FOR_ALIGNMENT. Set it to 0 instead of false.
        * tree-vect-transform.c (vect_gen_niters_for_prolog_loop): Handle known
        alignment case more efficiently. Use LOOP_PEELING_FOR_ALIGNMENT.
        (vect_do_peeling_for_alignment): Use fold.
        (vect_transform_loop): Use new name of LOOP_DO_PEELING_FOR_ALIGNMENT.

        (vect_update_inits_of_dr): Renamed to
        (vect_update_inits_of_drs): Use new name of vect_update_inits_of_dr.
        (vectorizable_store): Fix assertion to use == instead of =.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96526 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * config/arm/arm.h (CONDITIONAL_REGISTER_USAGE): Don't clear
drow [Tue, 15 Mar 2005 17:45:55 +0000 (17:45 +0000)]
* config/arm/arm.h (CONDITIONAL_REGISTER_USAGE): Don't clear
call_used_regs for wCG registers.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96525 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * inclhack.def (hpux_htonl): New fix.
jsm28 [Tue, 15 Mar 2005 17:37:03 +0000 (17:37 +0000)]
* inclhack.def (hpux_htonl): New fix.
* tests/base/netinet/in.h: New test.
* fixincl.x: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96522 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-15 David Daney <ddaney@avtrex.com>
daney [Tue, 15 Mar 2005 16:46:51 +0000 (16:46 +0000)]
2005-03-15  David Daney  <ddaney@avtrex.com>

* gnu/java/net/natPlainSocketImplPosix.cc (read_helper): Handle
count == 0 case.

2005-03-15  David Daney  <ddaney@avtrex.com>

* java/io/BufferedInputStream.java (available): Use 'in' instead
of 'super' for underlying stream access.
(close): Ditto.
(read(byte[], int, int)): Ditto.
(refill): Ditto.
(skip): Call skip on underlying stream when possible.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96516 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoresync.
charlet [Tue, 15 Mar 2005 16:25:14 +0000 (16:25 +0000)]

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96514 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Geert Bosch <bosch@adacore.com>
charlet [Tue, 15 Mar 2005 16:20:14 +0000 (16:20 +0000)]
2005-03-08  Geert Bosch  <bosch@adacore.com>
    Arnaud Charlet  <charlet@adacore.com>
    Robert Dewar  <dewar@adacore.com>
    Cyrille Comar  <comar@adacore.com>
    Sergey Rybin  <rybin@adacore.com>

* gnat_ugn.texi: Remove extended inline assembly example, as it was far
too specific and long-winded to be appropriate for the GNAT User's
Warn about use of GCC switches not documented in the GNAT User's Guide,
as these may cause generated code to not conform to Ada semantics.
Remove mention of -gdwarf-2 for sparc64, since this is now the default.
Add documentation for -gnat95 and -gnat05 switches
Remove paragraph documenting obsolete way to refer to third party
Add a few references to Ada_05 that were missing.
Update documentation on -gnatZ/-gnatL.
Document limitation when using -m64 under Solaris.
Change the "Name Casing" subsection of the pretty-printer section
according to the changes in the dictionary processing.

* gnat_rm.texi: Document the Ada_05 pragma.
Section on record representation clauses describes the new more
relaxed rules about placement of large packed bit array components.
Add documentation of GNAT.UTF_32

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96513 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Robert Dewar <dewar@adacore.com>
charlet [Tue, 15 Mar 2005 16:19:40 +0000 (16:19 +0000)]
2005-03-08  Robert Dewar  <dewar@adacore.com>

* s-bitops.adb, s-bitops.ads,
s-taprop-os2.adb, s-intman-vms.ads, s-intman-vxworks.ads,
s-taprop-vxworks.adb, a-caldel.ads, a-calend.adb, a-tasatt.adb,
tbuild.ads, s-finimp.adb, s-imgwch.adb, s-intman.ads, s-intman.ads,
s-memory.adb, s-soflin.ads, s-taasde.ads, s-taprob.adb, s-taprop.ads,
s-taprop.ads, s-tasini.adb, s-tasini.ads, s-tasini.ads, s-tasini.ads,
s-taskin.ads, s-tasren.adb, s-tassta.adb, s-tassta.ads, s-tassta.ads,
s-tasuti.ads, s-tataat.ads, s-tataat.ads, s-tataat.ads, s-tataat.ads,
s-tpoben.adb, s-tpoben.adb, s-tpobop.ads: Update comments. Minor

2005-03-08  Eric Botcazou  <ebotcazou@adacore.com>

* utils2.c (build_binary_op): Fix typo.

2005-03-08  Doug Rupp  <rupp@adacore.com>

* s-crtl.ads (popen,pclose): New imports.

2005-03-08  Cyrille Comar  <comar@adacore.com>

* comperr.adb (Compiler_Abort): remove references to obsolete
procedures in the bug boxes for various GNAT builds.

2005-03-08  Vincent Celier  <celier@adacore.com>

* snames.ads, snames.adb: Save as Unix text file, not as DOS text file

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96512 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Robert Dewar <dewar@adacore.com>
charlet [Tue, 15 Mar 2005 16:19:12 +0000 (16:19 +0000)]
2005-03-08  Robert Dewar  <dewar@adacore.com>

* usage.adb: Add missing lines for -gnat95 and -gnat05 switches

* sem_ch7.adb: Minor change to propagate Is_Ada_2005 flag

* i-c.adb: Clarify that AI-258 behavior is also intended in Ada 95

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96511 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Matthew Gingell <gingell@adacore.com>
charlet [Tue, 15 Mar 2005 16:18:57 +0000 (16:18 +0000)]
2005-03-08  Matthew Gingell  <gingell@adacore.com>

* sysdep.c: Implement __gnat_localtime_r as call to localtime_r on AIX.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96510 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Gary Dismukes <dismukes@adacore.com>
charlet [Tue, 15 Mar 2005 16:18:42 +0000 (16:18 +0000)]
2005-03-08  Gary Dismukes  <dismukes@adacore.com>

* s-imgwch.adb: Add with and use of Interfaces.
(Img_Wide_Character): Change type of Val to Unsigned_16.
(Img_Wide_Wide_Character): Change type of Val to Unsigned_32.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96509 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Geert Bosch <bosch@adacore.com>
charlet [Tue, 15 Mar 2005 16:18:21 +0000 (16:18 +0000)]
2005-03-08  Geert Bosch  <bosch@adacore.com>

* s-fatgen.adb (Valid): Extend special exceptions to account for long
long float padding to also cover AMD64 and IA64.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96508 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 15 Mar 2005 16:18:01 +0000 (16:18 +0000)]
2005-03-08  Ed Schonberg  <schonberg@adacore.com>

* sem_ch8.adb (Analyze_Subprogram_Renaming): In a generic, if this is
a renaming a body, check that the renamed subprogram in not intrinsic.
(Find_Direct_Name): If several use_visible entities hide
each other, and the context is a predefined file compiled through
rtsfind, keep only the entity that comes from a predefined file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96507 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 15 Mar 2005 16:17:37 +0000 (16:17 +0000)]
2005-03-08  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Is_Private_Declaration): Verify that the declaration is
attached to a list before checking whether it appears in the private
declarations of the current package.
(Make_Inequality_Operator): Insert declaration in proper declarative
list rather than just setting the Parent field, so that
Is_Private_Declaration can handle it properly.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96506 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 15 Mar 2005 16:14:07 +0000 (16:14 +0000)]
2005-03-08  Ed Schonberg  <schonberg@adacore.com>

* sem_ch4.adb (Analyze_Concatenation): Do not consider operators marked
Eliminated as candidates for resolution. Both efficient, and avoids
anomalies with operators declared in deleted code.
(Process_Implicit_Dereference_Prefix): Use this procedure whenever
expansion is disabled (as when compiling a generic) to prevent spurious
warnings on prefixes of selected components.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96505 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 15 Mar 2005 16:12:58 +0000 (16:12 +0000)]
2005-03-08  Ed Schonberg  <schonberg@adacore.com>
    Javier Miranda  <miranda@adacore.com>

PR ada/15608
* sem_util.adb (Get_Task_Body_Procedure): Type may be the completion
of a private type, in which case it is underlying_type that denotes
the proper task. Also modified to use the new entity attribute
that is directly available in the task type and task subtype entities
(Build_Actual_Subtype_Of_Component): Handle properly multidimensional
arrays when other dimensions than the first are constrained by
discriminants of an enclosing record.
(Insert_Explicit_Dereference): If the prefix is an indexed component or
a combination of indexed and selected components, find ultimate entity
and generate the appropriate reference for it, to suppress spurious
(Note_Possible_Modification): If an entity name has no entity, return.
(Is_Variable): A function call never denotes a variable.
(Requires_Transient_Scope): For record types, recurse only on
components, not on internal subtypes that may have been generated for
constrained components.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96504 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Javier Miranda <miranda@adacore.com>
charlet [Tue, 15 Mar 2005 16:12:36 +0000 (16:12 +0000)]
2005-03-08  Javier Miranda  <miranda@adacore.com>
    Ed Schonberg  <schonberg@adacore.com>

* sem_ch12.adb (Instantiate_Object): If the analysis of the actual
parameter reported some error we immediately return. This improves the
behaviour of the frontend in case of errors.
(Install_Parent, Remove_Parent): Introduce new flag
Parent_Unit_Visible, to preserve the proper visibility of the ultimate
ancestor of a generic child unit, when the child is being instantiated.
(Inline_Instance_Body): If we are compiling the private
part or the body of a child unit, restore the proper visibility of the
parents after compiling the instance body.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96503 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 15 Mar 2005 16:12:20 +0000 (16:12 +0000)]
2005-03-08  Ed Schonberg  <schonberg@adacore.com>

* sem_ch10.adb (Build_Ancestor_Name): If the ancestor is an
instantiation that has been rewritten as a package body, retrieve spec
to generate proper name for implicit_with_clause.
(Install_Parents): Recognize a parent that is an instantiation but has
been rewritten as a package declaration during analysis.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96502 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Robert Dewar <dewar@adacore.com>
charlet [Tue, 15 Mar 2005 16:10:45 +0000 (16:10 +0000)]
2005-03-08  Robert Dewar  <dewar@adacore.com>

* Make-lang.in: Add g-utf_32 unit for gnat and gnatbind

* impunit.adb: Add GNAT.UTF_32

* scng.adb: Use gnat.utf_32 instead of widechar for utf_32 stuff

* widechar.ads, widechar.adb: Remove redundant UTF-32 tables (scng
now uses GNAT.UTF_32).

* g-utf_32.ads, g-utf_32.adb: This is a new unit with full
capabilities for categorizing characters using Unicode categories

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96501 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Doug Rupp <rupp@adacore.com>
charlet [Tue, 15 Mar 2005 16:10:20 +0000 (16:10 +0000)]
2005-03-08  Doug Rupp  <rupp@adacore.com>
    Bernard Banner  <banner@adacore.com>
    Vincent Celier  <celier@adacore.com>
    Arnaud Charlet  <charlet@adacore.com>

PR ada/6852
This change works fine when gnatlib is built from the gcc directory,
but does not work when using the libada Makefile, since GCC_FOR_TARGET
is not passed to ada/Makefile.in, so more work is needed by a
Makefile/configure expert.

* Makefile.in(gnatlib): Use $(GCC_FOR_TARGET) for compiling library.
set GMEM_LIB on ia64 linux to add optional support for gnatmem.
Setup gnatlink switch -M for x86_64 linux, as it is already setup
for Linux x86.
(gnatlib-shared-default): Use GNATLIBCFLAGS as well.
Run ranlib on libgccprefix.a
Define PREFIX_OBJS for Darwin, to build libgccprefix.
(ADA_INCLUDE_SRCS): Split Ada packages.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96500 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Pascal Obry <obry@adacore.com>
charlet [Tue, 15 Mar 2005 16:02:26 +0000 (16:02 +0000)]
2005-03-08  Pascal Obry  <obry@adacore.com>
    Eric Botcazou  <ebotcazou@adacore.com>

PR ada/20226
PR ada/20344

* init.c (__gnat_initialize): Do not call __gnat_install_SEH_handler()
when IN_RTS. This is to work around a bootstrap path problem.

* misc.c (gnat_parse_file): Create a SEH (Structured Exception Handler)
table and pass it to __gnat_install_SEH_handler().
(gnat_handle_option): Accept OPT_fRTS_, not OPT_fRTS.

* lang.opt: Fix specification of -fRTS=.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96499 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Doug Rupp <rupp@adacore.com>
charlet [Tue, 15 Mar 2005 16:02:05 +0000 (16:02 +0000)]
2005-03-08  Doug Rupp  <rupp@adacore.com>

* gnatchop.adb (Locate_Executable): Normalize the possibly VMS style

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96498 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Thomas Quinot <quinot@adacore.com>
charlet [Tue, 15 Mar 2005 16:01:51 +0000 (16:01 +0000)]
2005-03-08  Thomas Quinot  <quinot@adacore.com>

* exp_tss.ads, exp_tss.adb (Find_Inherited_TSS): New subprogram, moved
here from exp_attr so it can be shared between exp_attr and exp_dist.
(TSS_Names): Renamed from OK_TSS_Names. This array contains the list of
all TSS names, not a subset thereof, and the previous name introduced
an unnecessarily confusion that a distinction might exist between
"OK" TSS names and some "not OK" TSS names.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96497 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Robert Dewar <dewar@adacore.com>
charlet [Tue, 15 Mar 2005 16:01:34 +0000 (16:01 +0000)]
2005-03-08  Robert Dewar  <dewar@adacore.com>

* exp_smem.adb, sem_attr.adb: Remove OK_For_Stream flag, not used,
not needed.
Add documentation to replace the use of this flag
Fix kludge for Maximum_Alignment on x86 so that it does not apply to
the x86_64.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96496 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 15 Mar 2005 16:01:19 +0000 (16:01 +0000)]
2005-03-08  Ed Schonberg  <schonberg@adacore.com>

* exp_intr.adb (Expand_Unc_Conversion): As a target type, use the type
that appears in the instantiation rather than the internal subtype
generated in the wrapper package, to avoid anomalies in gigi when the
target is derived from a private type whose full view is an access type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96495 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 15 Mar 2005 16:00:42 +0000 (16:00 +0000)]
2005-03-08  Ed Schonberg  <schonberg@adacore.com>

* exp_ch7.adb (Convert_View): Use base types of underlying types when
determining whether an unchecked conversion is needed for the argument
of an initialization call.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96494 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Robert Dewar <dewar@adacore.com>
charlet [Tue, 15 Mar 2005 16:00:26 +0000 (16:00 +0000)]
2005-03-08  Robert Dewar  <dewar@adacore.com>
    Ed Schonberg  <schonberg@adacore.com>
    Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>

PR ada/19900

* exp_pakd.adb (Create_Packed_Array_Type): Do not set
Must_Be_Byte_Aligned for cases where we do not need to use a
System.Pack_nn unit.

* exp_ch6.adb (Expand_Call): Call Expand_Actuals for functions as well
as procedures.
Needed now that we do some processing for IN parameters as well. This
may well fix some unrelated errors.
(Expand_Call): Handle case of unaligned objects (in particular those
that come from packed arrays).
(Expand_Inlined_Call): If the subprogram is a renaming as body, and the
renamed entity is an inherited operation, re-expand the call using the
original operation, which is the one to call.
Detect attempt to inline parameterless recursive subprogram.
(Represented_As_Scalar): Fix to work properly with private types
(Is_Possibly_Unaligned_Object): Major rewrite to get a much more
accurate estimate. Yields True in far fewer cases than before,
improving the quality of code that depends on this test.
(Remove_Side_Effects): Properly test for Expansion_Delayed and handle
case when it's inside an N_Qualified_Expression.

* exp_util.adb (Kill_Dead_Code): For a package declaration, iterate
over both visible and private declarations to remove them from tree,
and mark subprograms declared in package as eliminated, to prevent
spurious use in subsequent compilation of generic units in the context.

* exp_util.ads: Minor cleanup in variable names

* sem_eval.ads, sem_eval.adb: Minor reformatting
(Compile_Time_Known_Bounds): New function

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96493 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Eric Botcazou <ebotcazou@adacore.com>
charlet [Tue, 15 Mar 2005 15:59:54 +0000 (15:59 +0000)]
2005-03-08  Eric Botcazou  <ebotcazou@adacore.com>
    Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
    Nicolas Setton  <setton@adacore.com>
    Ed Schonberg  <schonberg@adacore.com>

PR ada/19900
PR ada/19408
PR ada/19140
PR ada/20255

* decl.c (gnat_to_gnu_field): Reject aliased components with a
representation clause that prescribes a size not equal to the rounded
size of their types.
(gnat_to_gnu_entity, case E_Component): Always look at
Original_Record_Component if Present and not the entity.
(gnat_to_gnu_entity, case E_Record_Subtype): Rework handling of subtypes
of tagged extension types by not making field for components that are
inside the parent.
(gnat_to_gnu_entity) <E_Record_Type>: Fix typo in the alignment formula
(gnat_to_gnu_entity) <E_Variable>: Do not convert again the
expression to the type of the object when the object is constant.
Reverse defer_debug_incomplete_list before traversing it, so that trees
are processed in the order at which they were added to the list. This
order is important when using the stabs debug format.
If we are deferring the output of debug information, also defer this
output for a function return type.
When adding fields to a record, prevent emitting debug information
for incomplete records, emit the information only when the record is
(components_to_record): New parameter defer_debug.
(gnat_to_gnu_entity, case E_Array_Subtype): Call copy_alias_set.
(gnat_to_gnu_field_decl): New function.
(substitution_list, annotate_rep): Call it.
(gnat_to_gnu_entity, case E_Record_Subtype): Likewise.
(gnat_to_gnu_entity, case E_Record_Type): Likewise.
No longer update discriminants to not be a COMPONENT_REF.
(copy_alias_set): Strip padding from input type; also handle
unconstrained arrays properly.

* gigi.h (write_record_type_debug_info): New function.
Convert to use ANSI-style prototypes. Remove unused
declarations for emit_stack_check, elab_all_gnat and
(gnat_to_gnu_field_decl): New decl.

* utils.c (write_record_type_debug_info): New function.
(finish_record_type): Delegate generation of debug information to
(update_pointer_to): Remove unneeded calls to rest_of_decl_compilation.
(update_pointer_to): Fix pasto.
(convert) <UNION_TYPE>: Accept slight type variations when
converting to an unchecked union type.

* exp_ch13.adb (Expand_N_Freeze_Entity): If Freeze_Type returns True,
replace the N_Freeze_Entity with a null statement.

* freeze.adb (Freeze_Expression): If the freeze nodes are generated
within a constrained subcomponent of an enclosing record, place the
freeze nodes in the scope stack entry for the enclosing record.
(Undelay_Type): New Subprogram.
(Set_Small_Size): Pass T, the type to modify; all callers changed.
(Freeze_Entity, Freeze_Record_Type): Change the way we handle types
within records; allow them to have freeze nodes if their base types
aren't frozen yet.

* sem_ch3.adb (Derived_Type_Declaration): New predicate
Comes_From_Generic, to recognize accurately that the parent type in a
derived type declaration can be traced back to a formal type, because
it is one or is derived from one, or because its completion is derived
from one.
(Constrain_Component_Type): If component comes from source and has no
explicit constraint, no need to constrain in in a subtype of the
enclosing record.
(Constrain_Access, Constrain_Array): Allow itypes to be delayed.
Minor change to propagate Is_Ada_2005 flag

* trans.c (gnat_to_gnu, case N_Aggregate): Verify that
Expansion_Delayed is False.
(assoc_to_constructor): Ignore fields that have a
(gnat_to_gnu) <N_Return_Statement>: Restructure. If the
function returns "by target", dereference the target pointer using the
type of the actual return value.
<all>: Be prepared for a null gnu_result.
(processed_inline_subprograms): Check flag_really_no_inline
instead of flag_no_inline.
(set_second_error_entity): Remove unused function.
(gnat_to_gnu, case N_Selected_Component): Call
(assoc_to_constructor): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96492 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Thomas Quinot <quinot@adacore.com>
charlet [Tue, 15 Mar 2005 15:58:36 +0000 (15:58 +0000)]
2005-03-08  Thomas Quinot  <quinot@adacore.com>

* checks.adb (Get_E_First_Or_Last): When the expression being retrieved
is an N_Raise_Constraint_Error node, create a new copy of it without
going through a call to Duplicate_Subexpr.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96491 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Doug Rupp <rupp@adacore.com>
charlet [Tue, 15 Mar 2005 15:57:58 +0000 (15:57 +0000)]
2005-03-08  Doug Rupp  <rupp@adacore.com>
    Vincent Celier  <celier@adacore.com>

* bindgen.adb (Gen_Main_C): Change WBI __posix_exit to decc$posix_exit
(Gen_Output_File_C): Likewise.
(Gen_Main_C): Issue #include <stdlib.h> to avoid warning

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96490 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Javier Miranda <miranda@adacore.com>
charlet [Tue, 15 Mar 2005 15:54:14 +0000 (15:54 +0000)]
2005-03-08  Javier Miranda  <miranda@adacore.com>
    Robert Dewar  <dewar@adacore.com>
    Thomas Quinot  <quinot@adacore.com>
    Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>

* atree.ads, atree.adb: Add support for Elist24 field

* atree.h: Fix wrong definition of Field27
Add support for Elist16 field
Add support for Elist24 field

* einfo.ads, einfo.adb (Abstract_Interfaces,
Set_Abstract_Interfaces): New subprograms.
(Abstract_Interface_Alias, Set_Abstract_Interface_Alias): New
(Access_Disp_Table, Set_Access_Disp_Table): Modified to handle a list of
entities rather than a single node.
(Is_Interface, Set_Is_Interface): New subprogram
(First_Tag_Component): New syntesized attribute
(Next_Tag_Component): New synthesized attribute
(Write_Entity_Flags): Upgraded to write Is_Interface
(Write_Field24_Name): Upgraded to write Abstract_Interfaces
(Write_Field25_Name): Upgraded to write Abstract_Interface_Alias
(Task_Body_Procedure): New subprogram to read this attribute.
(Set_Task_Body_Procedure): New subprogram to set this attribute.
(Has_Controlled_Component): Now applies to all entities.
This is only a documentation change, since it always worked to apply
this to other than composite types (yielding false), but now this is
Update documentation on Must_Be_Byte_Aligned for new spec

* tbuild.adb, exp_dist.adb, exp_disp.adb, exp_ch3.ads, exp_ch3.adb,
exp_attr.adb, exp_aggr.adb, exp_ch4.adb, exp_ch5.adb: Upgrade all the
uses of the Access_Disp_Table attribute to reference the first dispatch
table associated with a tagged type. As
part of the implementation of abstract interface types,
Access_Disp_Table has been redefined to contain a list of dispatch
tables (rather than a single dispatch table).
Similarly, upgrade all the references to Tag_Component by the
new attribute First_Tag_Component.
(Find_Inherited_TSS): Moved to exp_tss.
Clean up test in Expand_N_Object_Declaration for cases
where we need to do a separate assignment of the initial value.
(Expand_N_Object_Declaration): If the expression in the
declaration of a tagged type is an aggregate, no need to generate an
additional tag assignment.
(Freeze_Type): Now a function that returns True if the N_Freeze_Entity
is to be deleted.
Bit packed array ops are only called if operands are known to be
(Component_Equality): When returning an N_Raise_Program_Error statement,
ensure that its Etype is set to Empty to avoid confusing GIGI (which
expects that only expressions have a bona fide type).
(Make_Tag_Ctrl_Assignment): Use Build_Actual_Subtype to correctly
determine the amount of data to be copied.

* par.adb (P_Interface_Type_Definition): New subprogram that parses the
new syntax rule of Ada 2005 interfaces (for AI-251 and AI-345):
      [limited | task | protected | synchronized] interface
        [AND interface_list]

* par-ch3.adb (P_Type_Declaration): Modified to give support to
(P_Derived_Type_Def_Or_Private_Ext_Decl): Modified to give support to
(P_Interface_Type_Definition): New subprogram that parses the new
syntax rule of Ada 2005 interfaces
(P_Identifier_Declarations): fix two occurrences of 'RENAMES' in error
messages by the correct RENAMES (quotes removed).

* sem_prag.adb: Upgrade all the references to Tag_Component by the new
attribute First_Tag_Component.

* sinfo.ads, sinfo.adb: Remove OK_For_Stream flag, not used, not needed
(Interface_List, Set_Interface_List): New subprograms.
(Interface_Present, Set_Interface_Present): New subprograms.
(Limited_Present, Set_Limited_Present): Available also in derived
type definition nodes.
(Protected_Present, Set_Protected_Present): Available also in
record type definition and
derived type definition nodes.
(Synchronized_Present, Set_Synchronized_Present): New subprograms.
(Task_Present, Set_Task_Present): New subprogram.
(Task_Body_Procedure): Removed.
(Set_Task_Body_Procedure): Removed.
These subprogram have been removed because the attribute
Task_Body_Procedure has been moved to the corresponding task type
or task subtype entity to leave a field free to store the list
of interfaces implemented by a task (for AI-345)
Add Expression field to N_Raise_Statement node for Ada 2005 AI-361
(Null_Exclusion_Present): Change to Flag11, to avoid conflict with
expression flag Do_Range_Check
(Exception_Junk): Change to Flag7 to accomodate above change
(Box_Present, Default_Name, Specification, Set_Box_Present,
Set_Default_Name, Set_Specification): Expand the expression
"X in N_Formal_Subprogram_Declaration" into the corresponding
two comparisons. Required to use the csinfo tool.

* exp_ch11.adb (Expand_N_Raise_Statement): Deal with case where
"with string" given.

        * sem_ch11.adb (Analyze_Raise_Statement): Handle case where string
        expression given.

* par-ch11.adb (P_Raise_Statement): Recognize with string expression
in 2005 mode

* exp_ch9.adb (Build_Task_Proc_Specification): Modified to use entity
attribute Task_Body_Procedure rather than the old semantic field that
was available in the task_type_declaration node.

* par-ch12.adb (P_Formal_Type_Definition): Modified to handle formal
interface type definitions.
(P_Formal_Derived_Type_Definition): Modified to handle the list of

* par-ch9.adb (P_Task): Modified to handle the list of interfaces in a
task type declaration.
(P_Protected): Modified to handle the list of interfaces in a
protected type declaration.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96489 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Robert Dewar <dewar@adacore.com>
charlet [Tue, 15 Mar 2005 15:53:10 +0000 (15:53 +0000)]
2005-03-08  Robert Dewar  <dewar@adacore.com>

PR ada/13470

* a-stunau.ads, a-stunau.adb:
Change interface to allow efficient (and correct) implementation
The previous changes to allow extra space in unbounded strings had
left this interface a bit broken.

* a-suteio.adb: Avoid unnecessary use of Get/Set_String

* g-spipat.ads, g-spipat.adb: New interface for Get_String
Minor reformatting (function specs)

* g-spitbo.adb: New interface for Get_String

* g-spitbo.ads: Minor reformatting

* a-swunau.ads, a-swunau.adb: New interface for Get_Wide_String

* a-szunau.ads, a-szunau.adb: New interface for Get_Wide_Wide_String

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96488 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Robert Dewar <dewar@adacore.com>
charlet [Tue, 15 Mar 2005 15:52:27 +0000 (15:52 +0000)]
2005-03-08  Robert Dewar  <dewar@adacore.com>

* a-stzunb.adb, a-stzunb.adb a-stzunb.ads, a-stzunb.ads,
a-stwiun.ads, a-stwiun.adb, a-strunb.ads, a-strunb.adb: Move
Realloc_For_Chunk to private part of package.
New subprograms for AI-301

* a-szuzti.adb, a-suteio.adb, a-swuwti.adb: Improve efficiency of
Get_Line procedure.
Avoid unnecessary use of Get/Set_Wide_String

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96487 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Robert Dewar <dewar@adacore.com>
charlet [Tue, 15 Mar 2005 15:51:53 +0000 (15:51 +0000)]
2005-03-08  Robert Dewar  <dewar@adacore.com>

* a-reatim.ads, a-reatim.adb: Add functions Minutes and Seconds for

* a-retide.ads: Minor comment changes

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96486 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Nicolas Setton <setton@adacore.com>
charlet [Tue, 15 Mar 2005 15:51:35 +0000 (15:51 +0000)]
2005-03-08  Nicolas Setton  <setton@adacore.com>

* tracebak.c: Under Darwin, use the same unwinding mechanisms as under

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96485 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Doug Rupp <rupp@adacore.com>
charlet [Tue, 15 Mar 2005 15:50:36 +0000 (15:50 +0000)]
2005-03-08  Doug Rupp  <rupp@adacore.com>

* adaint.c: Prefix #include of VMS system header files with vms/
Do not define a dummy function "convert_addresses" under Darwin,
not needed.

* tb-alvms.c, expect.c: Prefix #include of VMS system header files
with vms/

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96484 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Olivier Hainque <hainque@adacore.com>
charlet [Tue, 15 Mar 2005 15:48:37 +0000 (15:48 +0000)]
2005-03-08  Olivier Hainque  <hainque@adacore.com>

* s-intman-posix.adb (Notify_Exception): Adjust signature, as handler
for sigactions with SA_SIGINFO set. Call
__gnat_adjust_context_for_raise before raising, to perform the
potentially required adjustments to the machine context for the GCC

* raise.h (__gnat_adjust_context_for_raise): New prototype.

* init.c (__gnat_adjust_context_for_raise) HPUX: Initial revision.
Adjust PC by one in the provided machine context.
(__gnat_install_handler) HPUX: Set SA_SIGINFO in the sigaction flags,
so that the handler is passed the context structure to adjust prior to
the raise.
(__gnat_error_handler) HPUX: Adjust the signature to match what an
SA_SIGINFO sigaction should look like. Call
__gnat_adjust_context_for_raise before actually raising.
(__gnat_adjust_context_for_raise): Default noop to help PC
adjustments before raise from signal handlers.
(__gnat_error_handler): Indirectly call a predicate function to
determine if a condition should be resignaled or not.
(__gnat_set_resignal_predicate): User interface to modify the predicate.
(__gnat_default_resignal_p): Default GNAT predicate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96482 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Vincent Celier <celier@adacore.com>
charlet [Tue, 15 Mar 2005 15:46:57 +0000 (15:46 +0000)]
2005-03-08  Vincent Celier  <celier@adacore.com>

* mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb,
mlib-tgt-hpux.adb, mlib-tgt-linux.adb, mlib-tgt-solaris.adb,
mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb, mlib-tgt-mingw.adb,
mlib-tgt-vxworks.adb, mlib-tgt-lynxos.adb (Library_Exist_For,
Library_File_Name_For): Add new parameter In_Tree
to specify the project tree: needed by the project manager.
Adapt to changes in project manager using new parameter In_Tree.
Remove local imports, use functions in System.CRTL.

* make.adb, clean.adb, gnatcmd.adb (Project_Tree): New constant needed
to use the project manager.

* makeutl.ads, makeutl.adb (Linker_Options_Switches): New parameter
In_Tree to designate the project tree. Adapt to changes in the project
manager, using In_Tree.

* mlib-prj.ads, mlib-prj.adb (Build_Library, Check_Library,
Copy_Interface_Sources): Add new parameter In_Tree to specify the
project tree: needed by the project manager.
(Build_Library): Check that Arg'Length >= 6 before checking if it
contains "--RTS=...".

* mlib-tgt.ads, mlib-tgt.adb (Library_Exist_For,
Library_File_Name_For): Add new parameter In_Tree to specify the
project tree: needed by the project manager.

* prj.ads, prj.adb: Major modifications to allow several project trees
in memory at the same time.
Change tables to dynamic tables and hash tables to dynamic hash
tables. Move tables and hash tables from Prj.Com (in the visible part)
and Prj.Env (in the private part). Move some constants from the visible
part to the private part. Make other constants deferred.
(Project_Empty): Make it a variable, not a function
(Empty_Project): Add parameter Tree. Returns the data with the default
naming data of the project tree Tree.
(Initialize): After updating Std_Naming_Data, copy its value to the
component Naming of Project Empty.
(Register_Default_Naming_Scheme): Use and update the default naming
component of the project tree, instead of the global variable
(Standard_Naming_Data): Add defaulted parameter Tree. If project tree
Tree is not defaulted, return the default naming data of the Tree.
(Initial_Buffer_Size): Constant moved from private part
(Default_Ada_Spec_Suffix_Id, Default_Ada_Body_Suffix_Id, Slash_Id); new
variables initialized in procedure Initialize.
(Add_To_Buffer): Add two in out parameters to replace global variables
Buffer and Buffer_Last.
(Default_Ada_Spec_Suffix, Default_Body_Spec_Suffix, Slash): New
Adapt to changes to use new type Project_Tree_Ref and dynamic tables and
hash tables.
(Initialize, Reset, register-Default_Namng-Scheme): Add a new parameter
for the project tree.
(Project_Tree_Data, Project_Tree_Ref, No_Project): Declare types and
constant at the beginning of the package spec, so that they cane be used
in subprograms before their full declarations.
(Standard_Naming_Data): Add defaulted parameter of type Project_Node_Ref
(Empty_Project): Add parameter of type Project_Node_Ref
(Private_Project_Tree_Data): Add component Default_Naming of type
(Buffer, Buffer_Last): remove global variables
(Add_To_Buffer): Add two in out parameters to replace global variables
Buffer and Buffer_Last.
(Current_Packages_To_Check): Remove global variable
(Empty_Name): Move to private part
(No-Symbols): Make it a constant
(Private_Project_Tree_Data): New type for the private part of the
project tree data.
(Project_Tree_Data): New type for the data of a project tree
(Project_Tree_Ref): New type to designate a project tree
(Initialize, Reset, register-Default_Namng-Scheme): Add a new parameter
for the project tree.

* prj-attr.ads: Add with Table; needed, as package Prj no longer
imports package Table.

* prj-com.adb: Remove empty, no longer needed body

* prj-com.ads: Move most of the content of this package to package Prj.

* prj-dect.ads, prj-dect.adb (Parse): New parameters In_Tree to
designate the project node tree and Packages_To_Check to replace
global variable Current_Packages_To_Check.
Add new parameters In_Tree and Packages_To_Check to local subprograms,
when needed. Adapt to changes in project manager with project node tree

* prj-env.ads, prj-env.adb: Add new parameter In_Tree to designate the
project tree to most subprograms. Move tables and hash tables to
private part of package Prj.
Adapt to changes in project manager using project tree In_Tree.

* prj-makr.adb (Tree): New constant to designate the project node tree
Adapt to change in project manager using project node tree Tree

* prj-nmsc.ads, prj-nmsc.adb (Check_Stand_Alone_Library): Correctly
display the Library_Src_Dir and the Library_Dir.
Add new parameter In_Tree to designate the project node tree to most
subprograms. Adapt to changes in the project manager, using project tree
(Check_Naming_Scheme): Do not alter the casing on platforms where
the casing of file names is not significant.
(Check): Add new parameter In_Tree to designate the

* prj-pars.ads, prj-pars.adb (Parse): Add new parameter In_Tree to
designate the project tree.
Declare a project node tree to call Prj.Part.Parse and Prj.Proc.Process

* prj-part.ads, prj-part.adb (Buffer, Buffer_Last): Global variables,
to replace those that were in the private part of package Prj.
Add new parameter In__Tree to designate the project node tree to most
subprograms. Adapt to change in Prj.Tree with project node tree In_Tree.
(Post_Parse_Context_Clause): When specifying the project node of a with
clause, indicate that it is a limited with only if there is "limited"
in the with clause, not necessarily when In_Limited is True.
(Parse): Add new parameter In_Tree to designate the project node tree

* prj-pp.ads, prj-pp.adb (Pretty_Print): Add new parameter In_Tree to
designate the project node tree. Adapt to change in Prj.Tree with
project node tree In_Tree.

* prj-proc.ads, prj-proc.adb (Recursive_Process): Specify the project
tree In_Tree in the call to function Empty_Process to give its initial
value to the project data Processed_Data.
Add new parameters In_Tree to designate the project tree and
From_Project_Node_Tree to designate the project node tree to several
subprograms. Adapt to change in project manager with project tree
In_Tree and project node tree From_Project_Node_Tree.

* prj-strt.ads, prj-strt.adb (Buffer, Buffer_Last): Global variables,
to replace those that were in the private part of package Prj.
Add new parameter In_Tree to designate the project node tree to most
subprograms. Adapt to change in Prj.Tree with project node tree In_Tree.

* prj-tree.ads, prj-tree.adb: Add new parameter of type
Project_Node_Tree_Ref to most subprograms.
Use this new parameter to store project nodes in the designated project
node tree.
(Project_Node_Tree_Ref): New type to designate a project node tree
(Tree_Private_Part): Change table to dynamic table and hash tables to
dynamic hash tables.

* prj-util.ads, prj-util.adb: Add new parameter In_Tree to designate
the project tree to most subprograms. Adapt to changes in project
manager using project tree In_Tree.

* makegpr.adb (Project_Tree): New constant needed to use project

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96481 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * config/s390/s390.c (s390_secondary_output_reload_class): Adapt check
uweigand [Tue, 15 Mar 2005 15:46:52 +0000 (15:46 +0000)]
* config/s390/s390.c (s390_secondary_output_reload_class): Adapt check
for non-offsettable memory references to cope with outstanding reload
replacements, take 2.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96480 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Eric Botcazou <ebotcazou@adacore.com>
charlet [Tue, 15 Mar 2005 15:46:15 +0000 (15:46 +0000)]
2005-03-08  Eric Botcazou  <ebotcazou@adacore.com>

* s-osinte-tru64.ads, s-osinte-tru64.adb (Get_Stack_Base): New function
(Hide_Yellow_Zone): New procedure to hide the Yellow Zone of the
calling thread.
(Stack_Base_Available): New flag.
(Get_Page_Size): New overloaded functions imported from C.
PROT_ON, PROT_OFF): New constants.
(mprotect): New function imported from C.
(pthread_teb_t): New record type.

* s-taprop-tru64.adb: (Enter_Task): Invoke Hide_Yellow_Zone.
(Create_Task): Account for the Yellow Zone and the guard page.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96479 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-08 Robert Dewar <dewar@adacore.com>
charlet [Tue, 15 Mar 2005 15:45:59 +0000 (15:45 +0000)]
2005-03-08  Robert Dewar  <dewar@adacore.com>

* system-unixware.ads, system-linux-ia64.ads, system-freebsd-x86.ads,
system-lynxos-ppc.ads, system-lynxos-x86.ads, system-linux-x86_64.ads,
system-tru64.ads, system-aix.ads, system-vxworks-sparcv9.ads,
system-vxworks-xscale.ads, system-solaris-x86.ads, system-irix-o32.ads,
system-irix-n32.ads, system-hpux.ads, system-vxworks-m68k.ads,
system-linux-x86.ads, system-vxworks-mips.ads, system-os2.ads,
system-interix.ads, system-solaris-sparc.ads,
system-solaris-sparcv9.ads, system-vms.ads, system-mingw.ads,
system-vms-zcx.ads, system-vxworks-ppc.ads, system-vxworks-alpha.ads,
system-vms_64.ads, system-darwin-ppc.ads, system-vxworks-x86.ads,
system-linux-ppc.ads, system-linux-alpha.ads, system-linux-sparc.ads,
system-linux-s390.ads, system-linux-s390x.ads: Add line defining
Compiler_System_Version to be False.

* opt.ads: Add new flag Opt.Address_Is_Private

* targparm.ads, targparm.adb: Set new flag Opt.Address_Is_Private
Add new parameter Compiler_System_Version to avoid checking for
completeness of parameters when compiler is compiling itself.
Allows old versions of GNAT to be compiled with new compiler.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96478 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR target/18668
uros [Tue, 15 Mar 2005 14:44:09 +0000 (14:44 +0000)]
PR target/18668
* config/i386/i386.h (x86_fisttp): New.
(TARGET_FISTTP): New macro.
* config/i386/i386.c (x86_fisttp): Set for NOCONA.
(output_fix_trunc): Add fisttp parameter.  Generate fisttp x87
instruction when fisttp flag is set.
* config/i386/i386-protos.h (output_fix_trunc): Change declaration.

* config/i386/i386.md (type attribute): Add fisttp.
(unit attribute): Set to i387 for fisttp type.
(X87MODEF, X87MODEI, SSEMODEF, SSEMODEI24): New mode macros.
(fix_truncxfdi2, fix_truncxfsi2): Generate fisttp patterns for
(fix_truncdfdi2, fix_truncsfdi2, fix_truncdfsi2, fix_truncsfsi2):
Generate fisttp patterns for TARGET_FISTTP. Implement using mode
(fix_truncxfhi2, fix_truncdfhi2, fix_truncsfhi2): Generate fisttp
patterns for TARGET_FISTTP.  Enable patterns for
(TARGET_FISTTP && !TARGET_SSE_MATH). Implement using mode macros.
(fix_trunc<mode>_i387_fisttp_1, fix_trunc<mode>_i387_fisttp,
fix_trunc<mode>_i387_fisttp_with_temp): New instruction patterns to
implement fisttp x87 insn.
(fix_trunc*_i387_fisttp splitters): New patterns.
(*fix_truncdi_i387, *fix_truncsi_i387, *fix_trunchi_i387):
Rename to *fix_trunc<mode>_i387_1.  Implement using mode macros.
Disable patterns for TARGET_FISTTP.  Add comment about FLAGS_REG
(fix_truncdi_memory, fix_truncdi_nomemory, fix_trunchi_nomemory):
Rename to fix_trunc<mode>_i387 and fix_trunc<mode>_i387_with_temp.
Implement using mode macros. Disable patterns for TARGET_FISTTP.
(fix_truncsi_memory, fix_truncsi_nomemory, fix_trunchi_memory,
fix_trunchi_nomemory): Rename to fix_trunc<mode>_i387 and
fix_trunc<mode>_i387_with_temp. Implement using mode macros.
Disable patterns for TARGET_FISTTP.
(fix_trunc*_i387 splitters): Implement usign mode macros.
(fix_truncdfdi_sse, fix_truncsfdi_sse, fix_truncdfsi_sse,
fix_truncsfsi_sse): Disable for (TARGET_FISTTP && !TARGET_SSE_MATH).
(fix_trunx*_sse peephole2s): Implement using mode macros.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96477 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR rtl-optimization/20291
amylaar [Tue, 15 Mar 2005 12:39:01 +0000 (12:39 +0000)]
PR rtl-optimization/20291
* combine.c (try_combine): If splitting fails, re-try with
original combined pattern, i.e. before clobber stripping.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96476 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoIndex: libcpp/ChangeLog
geoffk [Tue, 15 Mar 2005 09:55:41 +0000 (09:55 +0000)]
Index: libcpp/ChangeLog
2005-03-14  Geoffrey Keating  <geoffk@apple.com>

* lex.c (forms_identifier_p): Disable UCNs in C89 mode.

Index: gcc/testsuite/ChangeLog
2005-03-14  Geoffrey Keating  <geoffk@apple.com>

* gcc.dg/cpp/ucnid-6.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96475 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-14 Eric Christopher <echristo@redhat.com>
echristo [Tue, 15 Mar 2005 05:53:10 +0000 (05:53 +0000)]
2005-03-14  Eric Christopher  <echristo@redhat.com>

* config/mips/mips.h (DWARF_CIE_DATA_ALIGNMENT): Change for

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96474 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * real.h (struct real_format): Split the signbit field into two
sayle [Tue, 15 Mar 2005 04:24:02 +0000 (04:24 +0000)]
* real.h (struct real_format): Split the signbit field into two
two fields, signbit_ro and signbit_rw.
* real.c (ieee_single_format, mips_single_format, ieee_double_format,
mips_double_format, ieee_extended_motorola_format,
ieee_extended_intel_96_format, ieee_extended_intel_96_round_53_format,
ieee_extended_intel_128_format, ibm_extended_format,
mips_extended_format, ieee_quad_format, mips_quad_format,
vax_f_format, vax_d_format, vax_g_format, i370_single_format,
i370_double_format, c4x_single_format, c4x_extended_format,
real_internal_format): Update initializers for new field.
* builtins.c (expand_builtin_signbit): Use signbit_ro field of the
real_format structure.
* optabs.c (expand_absneg_bit, expand_copysign): Use signbit_rw
field of the real_format structure.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96471 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-15 Feng Wang <fengwang@nudt.edu.cn>
fengwang [Tue, 15 Mar 2005 03:26:09 +0000 (03:26 +0000)]
2005-03-15  Feng Wang  <fengwang@nudt.edu.cn>

* trans-stmt.c (gfc_trans_label_assign): Don't set DECL_ARTIFICIAL flag
        to zero on label_tree.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96468 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agofortran/
fengwang [Tue, 15 Mar 2005 02:52:38 +0000 (02:52 +0000)]
2005-03-15  Feng Wang  <fengwang@nudt.edu.cn>

        PR fortran/18827
        * io.c (resolve_tag): Add checking on assigned label.
        (match_dt_format): Does not set symbol assign attribute.
        * match.c (gfc_match_goto):Does not set symbol assign attribute.
        * resolve.c (resolve_code): Add checking on assigned label.
        * trans-common.c (build_field): Deals with common variable assigned
        a label.
        * trans-stmt.c (gfc_conv_label_variable): New function.
        (gfc_trans_label_assign): Use it.
        (gfc_trans_goto): Ditto.
        * trans-io.c (set_string): Ditto.
        * trans.h (gfc_conv_label_variable): Add prototype.
2005-03-15  Feng Wang  <fengwang@nudt.edu.cn>

        PR fortran/18827
        * gfortran.dg/assign_2.f90: New test.
        * gfortran.dg/assign_3.f90: New test.
        * gfortran.dg/assign.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96467 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * g++.dg/other/cv_func.C, g++.dg/other/offsetof3.C,
jsm28 [Tue, 15 Mar 2005 02:16:25 +0000 (02:16 +0000)]
* g++.dg/other/cv_func.C, g++.dg/other/offsetof3.C,
g++.dg/parse/error11.C, g++.dg/tc1/dr108.C,
g++.dg/template/local4.C, g++.dg/template/nontype6.C,
g++.dg/warn/deprecated.C: Ensure uniqueness of test assertion

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96463 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2005-03-14 Daniel Berlin <dberlin@dberlin.org>
dberlin [Tue, 15 Mar 2005 01:26:35 +0000 (01:26 +0000)]
2005-03-14  Daniel Berlin <dberlin@dberlin.org>

Fix PR tree-optimization/20458

* tree-flow-inline.h (mark_call_clobbered): Don't fiddle
(clear_call_clobbered): Ditto.
* tree-ssa-operands.c (note_addressable): Make sure the original
variable doesn't slip into the addressable list if we have
* tree-tailcall.c (suitable_for_tail_opt_p): Look at STRUCT_FIELD
tags too.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96462 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoIndex: gcc/ChangeLog
geoffk [Tue, 15 Mar 2005 00:36:33 +0000 (00:36 +0000)]
Index: gcc/ChangeLog
2005-03-14  Geoffrey Keating  <geoffk@apple.com>

* doc/cppopts.texi (-fexec-charset): Add concept index entry.
(-fwide-exec-charset): Likewise.
(-finput-charset): Likewise.
* doc/invoke.texi (Warning Options): Document -Wnormalized=.
* c-opts.c (c_common_handle_option): Handle -Wnormalized=.
* c.opt (Wnormalized): New.

Index: libcpp/ChangeLog
2005-03-14  Geoffrey Keating  <geoffk@apple.com>

* init.c (cpp_create_reader): Default warn_normalize to normalized_C.
* charset.c: Update for new format of ucnid.h.
(ucn_valid_in_identifier): Update for new format of ucnid.h.
Add NST parameter, and update it; update callers.
(cpp_valid_ucn): Add NST parameter, update callers.  Replace abort
with cpp_error.
(convert_ucn): Pass normalize_state to cpp_valid_ucn.
* internal.h (struct normalize_state): New.
(_cpp_valid_ucn): New.
* lex.c (warn_about_normalization): New.
(forms_identifier_p): Add normalize_state parameter, update callers.
(lex_identifier): Add normalize_state parameter, update callers.  Keep
the state current.
(lex_number): Likewise.
(_cpp_lex_direct): Pass normalize_state to subroutines.  Check
it with warn_about_normalization.
* makeucnid.c: New.
* ucnid.h: Replace.
* ucnid.pl: Remove.
* ucnid.tab: Make appropriate for input to makeucnid.c.  Remove
comments about obsolete version of C++.
* include/cpplib.h (enum cpp_normalize_level): New.
(struct cpp_options): Add warn_normalize field.

Index: gcc/testsuite/ChangeLog
2005-03-14  Geoffrey Keating  <geoffk@apple.com>

* gcc.dg/cpp/normalize-1.c: New.
* gcc.dg/cpp/normalize-2.c: New.
* gcc.dg/cpp/normalize-3.c: New.
* gcc.dg/cpp/normalize-4.c: New.
* gcc.dg/cpp/ucnid-4.c: New.
* gcc.dg/cpp/ucnid-5.c: New.
* g++.dg/cpp/normalize-1.C: New.
* g++.dg/cpp/ucnid-1.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96459 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoDaily bump.
gccadmin [Tue, 15 Mar 2005 00:16:23 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96457 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * doc/invoke.texi: Add reference to Visibility document.
dpatel [Mon, 14 Mar 2005 22:34:36 +0000 (22:34 +0000)]
   * doc/invoke.texi: Add reference to Visibility document.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96453 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * config.gcc (mips*-*-*): Rename MASK_SPLIT_ADDRS to
rsandifo [Mon, 14 Mar 2005 20:40:57 +0000 (20:40 +0000)]
* config.gcc (mips*-*-*): Rename MASK_SPLIT_ADDRS to
* config/mips/mips.h (target_flags, mips_fix_vr4130_string): Delete.
(TARGET_OPTIONS): Remove entry for -mfix-vr4130.
* config/mips/mips.c (TARGET_DEFAULT_TARGET_FLAGS): Define.
(override_options): Set MASK_LONG64 if -mint64 is given and no
-mlongXX option is.  Complain about -mint64 -mlong32.
(override_options, CMP_BUILTINS, mips_bdesc, sb1_desc): Rename
* config/mips/mips.opt: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96452 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * config.gcc (extra_options): New variable for listing option files.
rsandifo [Mon, 14 Mar 2005 20:18:43 +0000 (20:18 +0000)]
* config.gcc (extra_options): New variable for listing option files.
Add ${cpu_type}/${cpu_type}.opt to it if that file exists.
* configure.ac (extra_opt_files): New AC_SUBST variable.
(tm_file_list, tm_include_list): Include options.h first.
* configure: Regenerate.
* Makefile.in (extra_opt_files, ALL_OPT_FILES): New variables.
(s-options): Use $(ALL_OPT_FILES) instead of $(lang_opt_files)
(s-options-h): New rule.
(options.h): Depend on it.
(TEXI_GCCINT_FILES): Add options.texi.
* hooks.h (hook_bool_size_t_constcharptr_int_true): Declare.
* hooks.c (hook_bool_size_t_constcharptr_int_true): New function.
* target.h (gcc_target): Add default_target_flags and handle_option.
* opt-functions.awk (opt_args, nth_arg): New functions.
(switch_flags): Handle the "Target" flag.
(var_args): Delete.
(var_name): Use opt_args and nth_arg.
(var_set, var_ref): Likewise.  Handle "Mask" and "InverseMask".
* opth-gen.awk: Declare target_flags.  Declare MASK_* and TARGET_*
macros for the "Mask" and "InverseMask" options.
* opts.h (cl_var_cond): New enum.
(cl_option): Replace the "has_set_value" and "set_value" fields with
"var_cond" and "var_value".
(CL_TARGET): New macro.
(option_enabled, print_filtered_help): Declare.
(decode_options): Move definition.
* opts.c (handle_option): Search for the original option before
removing any "no-" prefix.  Handle CL_TARGET.  Adjust for the new
var_cond and var_value fields.  Use targetm.handle_option to handle
target options.
(decode_options): Set target_flags to targetm.default_target_flags.
(print_filtered_help): Make global.  Handle CL_TARGET.
(option_enabled): New function.
* toplev.c (target_switches): Guard with #ifdef TARGET_SWITCHES.
(display_target_options, set_target_switch, print_switch_values)
(default_pch_valid_p): Guard uses of target_switches with
#ifdef TARGET_SWITCHES.  Also...
(display_target_options): Display the CL_TARGET entries in cl_options.
(set_target_option): Don't complain about the "" option when
TARGET_SWITCHES is undefined.
(print_switch_values): Use option_enabled.
(default_pch_valid_p): Check cl_options[] when looking for something
that has changed the value of target_flags.
* c.opt: Remove documentation from top of file.
* doc/gccint.texi: Add an "Options" chapter.  Include options.texi.
* doc/sourecebuild.texi: Refer to the new options documentation
instead of c.opt.  Document machine-specific .opt files.
* doc/tm.texi (target_flags): Say that this variable is declared
by options.h.
(TARGET_SWITCHES, TARGET_OPTIONS): Refer to the option files as
an alternative.
* doc/options.texi: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96448 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agogcc/ChangeLog:
aoliva [Mon, 14 Mar 2005 20:06:23 +0000 (20:06 +0000)]
PR middle-end/18628
* cse.c (fold_rtx_mem): Don't fold a load from a jumptable into a
* gcc.dg/pr18628.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96445 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agogcc/ChangeLog:
aoliva [Mon, 14 Mar 2005 20:02:05 +0000 (20:02 +0000)]
PR c++/20280
* gimplify.c (gimplify_cond_expr): Add fallback argument.  Use a
temporary variable of pointer type if an lvalues is required.
(gimplify_modify_expr_rhs): Request an rvalue from it.
(gimplify_expr): Pass fallback on.
PR c++/20280
* g++.dg/tree-ssa/pr20280.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96444 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agofortran/
tobi [Mon, 14 Mar 2005 19:55:02 +0000 (19:55 +0000)]
PR fortran/20467
* symbol.c (check_conflict): A dummy argument can't be a statement

PR fortran/20467
* gfortran.dg/stfunc_2.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96443 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * cfgbuild.c: Update comments.
kazu [Mon, 14 Mar 2005 19:12:14 +0000 (19:12 +0000)]
* cfgbuild.c: Update comments.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96442 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR rtl-optimization/17236
sayle [Mon, 14 Mar 2005 18:24:15 +0000 (18:24 +0000)]
PR rtl-optimization/17236
* optabs.c (expand_doubleword_mult): New helper function split out
from expand_binop.  Permute the order in which instructions are
emitted to minimize the number of simultaneously live registers.
(expand_binop): Call expand_doubleword_mult to synthesize a double
word multiplication.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96441 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * basic-block.h: Update the prototypes of cached_make_edge and
kazu [Mon, 14 Mar 2005 17:43:01 +0000 (17:43 +0000)]
* basic-block.h: Update the prototypes of cached_make_edge and
* cfg.c (cached_make_edge): Take edge_cache representing one
row of the adjacency matrix of edges.
* cfgbuild.c (make_label_edge, rtl_make_eh_edge): Likewise.
(make_edges): Initialize edge_cache to represent one row of
the adjacency matrix of edges.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96440 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * tree-ssa-phiopt.c (minmax_replacement, blocks_in_phiopt_order):
rakdver [Mon, 14 Mar 2005 16:26:11 +0000 (16:26 +0000)]
* tree-ssa-phiopt.c (minmax_replacement, blocks_in_phiopt_order):
New functions.
(tree_ssa_phiopt): Use blocks_in_phiopt_order and minmax_replacement.
Remove unused removed_phis variable.
(conditional_replacement): Use build1/build2.
(abs_replacement): Use last_and_only_stmt and build1/build2.

* gcc.dg/tree-ssa/phi-opt-5.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96439 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * builtin-attrs.def (ATTR_NOVOPS, ATTR_NOVOPS_LIST,
rakdver [Mon, 14 Mar 2005 16:21:16 +0000 (16:21 +0000)]
* builtin-attrs.def (ATTR_NOVOPS, ATTR_NOVOPS_LIST,
(BUILT_IN_PREFETCH): Set the NOVOPS attribute.
* c-common.c (handle_novops_attribute): New function.
(c_common_attribute_table): Add "no vops" entry.
* c-decl.c (merge_decls): Copy DECL_IS_NOVOPS.
* calls.c (flags_from_decl_or_type): Set ECF_NOVOPS.
* tree-ssa-operands.c (get_call_expr_operands): Do not
create virtual operands for calls with ECF_NOVOPS flag.
* tree.h (DECL_IS_NOVOPS): New macro.
(struct tree_decl): Add novops_flag.
(ECF_NOVOPS): New constant.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96438 138bc75d-0d04-0410-961f-82ee72b054a4