gcc.git
20 years agomt_allocator.html: Add docs for _Tune.
Benjamin Kosnik [Wed, 14 Jul 2004 06:37:17 +0000 (06:37 +0000)]
mt_allocator.html: Add docs for _Tune.

2004-07-13  Benjamin Kosnik  <bkoz@redhat.com>

* docs/html/ext/mt_allocator.html: Add docs for _Tune.
* include/ext/mt_allocator.h (__mt_alloc::_S_get_options): Make public.
(__mt_alloc::_S_set_options): Same.
Add to comments.

2004-07-13  Benjamin Kosnik  <bkoz@redhat.com>

* acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add allocator defaults
for linux.
* configure: Regenerated.

From-SVN: r84674

20 years ago* vec.h: Comment fix.
Ben Elliston [Wed, 14 Jul 2004 06:31:03 +0000 (06:31 +0000)]
* vec.h: Comment fix.

From-SVN: r84673

20 years agotarget.h (struct gcc_target): Add calls.pass_by_reference.
Richard Henderson [Wed, 14 Jul 2004 06:24:27 +0000 (23:24 -0700)]
target.h (struct gcc_target): Add calls.pass_by_reference.

* target.h (struct gcc_target): Add calls.pass_by_reference.
* target-def.h (TARGET_PASS_BY_REFERENCE): New.
* function.c (pass_by_reference): Use the hook.
* system.h (FUNCTION_ARG_PASS_BY_REFERENCE): Poison.
* targhooks.c, targhooks.h (hook_pass_by_reference_false): New.
(hook_pass_by_reference_must_pass_in_stack): New.
* config/alpha/alpha.c (function_arg): Don't query pass-by-ref.
(alpha_pass_by_reference): New.
(TARGET_PASS_BY_REFERENCE): New.
* config/alpha/alpha.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
* config/arc/arc.c (arc_pass_by_reference): New.
(TARGET_PASS_BY_REFERENCE): New.
* config/arc/arc.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
(FUNCTION_ARG_CALLEE_COPIES): True.
* config/arm/arm-protos.h (arm_function_arg_pass_by_reference): Remove.
* config/arm/arm.c (TARGET_PASS_BY_REFERENCE): New.
(arm_pass_by_reference): Rename from arm_function_arg_pass_by_reference.
* config/arm/arm.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
* config/c4x/c4x.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
* config/cris/cris.c (cris_pass_by_reference): New.
(TARGET_PASS_BY_REFERENCE): New.
* config/cris/cris.h (FUNCTION_ARG): Don't query pass-by-ref.
(FUNCTION_INCOMING_ARG, FUNCTION_ARG_ADVANCE): Likewise.
(FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
* config/fr30/fr30.c (TARGET_PASS_BY_REFERENCE): New.
* config/fr30/fr30.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
* config/frv/frv-protos.h (frv_function_arg_pass_by_reference): Kill.
* config/frv/frv.c (TARGET_PASS_BY_REFERENCE): New.
(frv_function_arg_pass_by_reference): Remove.
* config/frv/frv.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
* config/i386/i386-protos.h (function_arg_pass_by_reference): Remove.
* config/i386/i386.c (TARGET_PASS_BY_REFERENCE): New.
(ix86_pass_by_reference): Rename from function_arg_pass_by_reference.
* config/i386/i386.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
* config/ia64/ia64-protos.h (ia64_function_arg_pass_by_reference): Kill.
* config/ia64/ia64.c (TARGET_PASS_BY_REFERENCE): New.
(ia64_pass_by_reference): Rename from
ia64_function_arg_pass_by_reference.
* config/ia64/ia64.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
* config/ip2k/ip2k.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
* config/iq2000/iq2000-protos.h (function_arg_pass_by_reference): Kill.
* config/iq2000/iq2000.c (TARGET_PASS_BY_REFERENCE): New.
(iq2000_pass_by_reference): Rename from function_arg_pass_by_reference.
* config/iq2000/iq2000.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
(FUNCTION_ARG_CALLEE_COPIES): Don't reference pass-by-ref.
* config/m32r/m32r-protos.h (m32r_pass_by_reference): Remove.
* config/m32r/m32r.c (TARGET_PASS_BY_REFERENCE): New.
(m32r_pass_by_reference): Adjust prototype.  Make static.
Handle mode sizes correctly.
* config/m32r/m32r.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
* config/m68hc11/m68hc11-protos.h, config/m68hc11/m68hc11.c
(m68hc11_function_arg_pass_by_reference): Remove.
* config/m68hc11/m68hc11.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
(FUNCTION_ARG_CALLEE_COPIES): Don't reference pass-by-ref.
* config/mcore/mcore.c (TARGET_PASS_BY_REFERENCE): New.
* config/mcore/mcore.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
* config/mips/mips-protos.h (function_arg_pass_by_reference): Remove.
* config/mips/mips.c (TARGET_PASS_BY_REFERENCE): New.
(mips_va_arg): Use pass_by_reference.
(mips_pass_by_reference): Rename from function_arg_pass_by_reference.
Handle mode sizes correctly.
* config/mips/mips.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
        (FUNCTION_ARG_CALLEE_COPIES): Don't reference pass-by-ref.
* config/mmix/mmix-protos.h (mmix_function_arg_pass_by_reference): Kill.
* config/mmix/mmix.c (TARGET_PASS_BY_REFERENCE): New.
(mmix_pass_by_reference): Rename from
mmix_function_arg_pass_by_reference.
* config/mmix/mmix.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
(FUNCTION_ARG_CALLEE_COPIES): True.
* config/mn10300/mn10300.c (TARGET_PASS_BY_REFERENCE): New.
(mn10300_pass_by_reference): New.
* config/mn10300/mn10300.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
(FUNCTION_ARG_CALLEE_COPIES): True.
* config/pa/pa.c (pa_pass_by_reference): New.
(TARGET_PASS_BY_REFERENCE): New.
* config/pa/pa.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
        (FUNCTION_ARG_CALLEE_COPIES): True.
* config/rs6000/rs6000-protos.h (function_arg_pass_by_reference): Kill.
* config/rs6000/rs6000.c (TARGET_PASS_BY_REFERENCE): New.
(rs6000_pass_by_reference): Rename from function_arg_pass_by_reference.
* config/rs6000/rs6000.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
* config/s390/s390-protos.h (s390_function_arg_pass_by_reference): Kill.
* config/s390/s390.c (TARGET_PASS_BY_REFERENCE): New.
(s390_pass_by_reference): Rename from
s390_function_arg_pass_by_reference.
(s390_function_arg_advance): Don't query pass-by-ref.
(s390_function_arg): Likewise.
(s390_gimplify_va_arg): Use pass_by_reference.
(s390_call_saved_register_used): Likewise.
* config/s390/s390.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
* config/sh/sh.c (TARGET_PASS_BY_REFERENCE): New.
(shcompact_byref, sh_pass_by_reference): New.
* config/sh/sh.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
(SHCOMPACT_BYREF): Remove.
* config/sparc/sparc-protos.h (function_arg_pass_by_reference): Kill.
* config/sparc/sparc.c (TARGET_PASS_BY_REFERENCE): New.
(sparc_pass_by_reference): Rename from function_arg_pass_by_reference.
(sparc_gimplify_va_arg): Use pass_by_reference.
* config/sparc/sparc.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
* config/stormy16/stormy16.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
* config/v850/v850.c (TARGET_PASS_BY_REFERENCE): New.
(v850_pass_by_reference): New.
* config/v850/v850.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
(FUNCTION_ARG_CALLEE_COPIES): True.
* doc/tm.texi (TARGET_PASS_BY_REFERENCE): Update from
FUNCTION_ARG_PASS_BY_REFERENCE docs.

From-SVN: r84672

20 years agomips-protos.h (mips_va_arg): Delete.
Richard Henderson [Wed, 14 Jul 2004 05:58:30 +0000 (22:58 -0700)]
mips-protos.h (mips_va_arg): Delete.

* config/mips/mips-protos.h (mips_va_arg): Delete.
* config/mips/mips.h (EXPAND_BUILTIN_VA_ARG): Delete.
* config/mips/mips.c: Include tree-gimple.h.
(TARGET_GIMPLIFY_VA_ARG_EXPR): Define.
(mips_arg_info): Remove special handling of must_pass_in_stck args.
(mips_gimplify_va_arg_expr): Rewritten from mips_va_arg.
(function_arg_pass_by_reference): Return true if must_pass_in_stack.

Co-Authored-By: Richard Sandiford <rsandifo@redhat.com>
From-SVN: r84671

20 years agojava-tree.h (all_class_filename): Remove useless macro.
Per Bothner [Wed, 14 Jul 2004 02:36:38 +0000 (19:36 -0700)]
java-tree.h (all_class_filename): Remove useless macro.

* java-tree.h (all_class_filename):  Remove useless macro.
(enum java_tree_index):  Remove JTI_ALL_CLASS_FILENAME constant.
(BUILD_FILENAME_IDENTIFIER_NODE):  Remove useless macro.
* parse.y (java_parser_context_restore_global):  Replace
BUILD_FILENAME_IDENTIFIER_NODE by plain get_identifier.
* jcf-parse.c (read_class, java_parse_file):  Likewise.

From-SVN: r84667

20 years agoDaily bump.
GCC Administrator [Wed, 14 Jul 2004 00:16:12 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r84660

20 years agoxtensa.c (xtensa_gimplify_va_arg_expr): Swap arguments for COND_EXPR in big-endian...
Bob Wilson [Tue, 13 Jul 2004 23:20:16 +0000 (23:20 +0000)]
xtensa.c (xtensa_gimplify_va_arg_expr): Swap arguments for COND_EXPR in big-endian adjustment code.

* config/xtensa/xtensa.c (xtensa_gimplify_va_arg_expr): Swap
arguments for COND_EXPR in big-endian adjustment code.

From-SVN: r84655

20 years agopa-64.h (ARG_POINTER_REGNUM, [...]): Delete.
John David Anglin [Tue, 13 Jul 2004 22:17:11 +0000 (22:17 +0000)]
pa-64.h (ARG_POINTER_REGNUM, [...]): Delete.

* pa-64.h (ARG_POINTER_REGNUM, STATIC_CHAIN_REGNUM): Delete.
* pa.h (ARG_POINTER_REGNUM, STATIC_CHAIN_REGNUM): Modify for hppa64.
* pa32-regs.h (REG_ALLOC_ORDER): Reorder caller-saved registers.
* pa64-regs.h (REG_ALLOC_ORDER): Likewise.

From-SVN: r84649

20 years agoInputContext.java: Initialze in, line.
Michael Koch [Tue, 13 Jul 2004 22:06:11 +0000 (22:06 +0000)]
InputContext.java: Initialze in, line.

2004-07-14  Michael Koch  <konqueror@gmx.de>
            Matthias Klose  <doko@debian.org>

        * java/awt/im/InputContext.java: Initialze in, line.

Co-Authored-By: Matthias Klose <doko@debian.org>
From-SVN: r84648

20 years ago[multiple changes]
Arnaud Charlet [Tue, 13 Jul 2004 21:40:51 +0000 (23:40 +0200)]
[multiple changes]

2004-07-13  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>

* decl.c: (gnat_to_gnu_entity, object case): Convert initializer to
object type.
(gnat_to_gnu_entity, case E_Record_Subtype): Properly set
TYPE_STUB_DECL.

* misc.c (gnat_types_compatible_p): New function.
(LANG_HOOKS_TYPES_COMPATIBLE_P): New hook, to use it.
(LANG_HOOKS_TYPE_MAX_SIZE, gnat_type_max_size): New.

* trans.c (gigi): Move processing of main N_Compilation_Unit here.
(gnat_to_gnu, case N_Compilation_Unit): Just handle nested case here.
(add_stmt): Force walking of sizes and DECL_INITIAL for DECL_EXPR.
(mark_visited): Don't mark dummy type.
(tree_transform <N_Procedure_Call_Statement>): Unless this is an In
parameter, we must remove any LJM building from GNU_NAME.
(gnat_to_gnu, case N_String_Literal): Fill in indices in CONSTRUCTOR.
(pos_to_constructor): Use int_const_binop.
(gnat_to_gnu, case N_Identifier): Don't reference DECL_INITIAL of
PARM_DECL.

* utils.c (gnat_init_decl_processing): Don't make two "void" decls.
(gnat_pushlevel): Set TREE_USE on BLOCK node.
(gnat_install_builtins): Add __builtin_memset.

2004-07-13  Olivier Hainque  <hainque@act-europe.fr>

* decl.c (gnat_to_gnu_entity <E_Variable>): If we are making a pointer
for a renaming, stabilize the initialization expression if we are at a
local level.  At the local level, uses of the renaming may be performed
by a direct dereference of the initializing expression, and we don't
want possible variables there to be evaluated for every use.

* trans.c (gnat_stabilize_reference, gnat_stabilize_reference_1):
Propagate TREE_SIDE_EFFECTS and TREE_THIS_VOLATILE to avoid loosing
them on the way.  Account for the fact that we may introduce side
effects in the process.

From-SVN: r84647

20 years agore PR c++/16518 (mutable specifier only applies to first item in declaration list)
Mark Mitchell [Tue, 13 Jul 2004 21:11:52 +0000 (21:11 +0000)]
re PR c++/16518 (mutable specifier only applies to first item in declaration list)

PR c++/16518
PR c++/16337
* decl.c (grokvardecl): Make declspecs parameter const.
(grokdeclarator): Likewise.  Adjust accordingly.
* decl.h (grokdeclarator): Adjust declaration.
* parser.c (cp_parser_init_declarator): Do not clear
decl_specifiers->attributes.

PR c++/16518
* g++.dg/parse/mutable1.C: New test.

From-SVN: r84646

20 years agointerpret.cc (run): Correctly access libffi return values of integral smaller-than...
Ulrich Weigand [Tue, 13 Jul 2004 21:06:33 +0000 (21:06 +0000)]
interpret.cc (run): Correctly access libffi return values of integral smaller-than-int type...

* interpret.cc (run): Correctly access libffi return values of
integral smaller-than-int type; these are implicitly promoted.

From-SVN: r84645

20 years agore PR libgcj/7587 (direct threaded interpreter not thread-safe)
Bryce McKinlay [Tue, 13 Jul 2004 21:03:03 +0000 (21:03 +0000)]
re PR libgcj/7587 (direct threaded interpreter not thread-safe)

2004-07-13  Bryce McKinlay  <mckinlay@redhat.com>

PR libgcj/7587
* interpret.cc (compile_mutex): New.
(_Jv_InitInterpreter): New. Initialize compile_mutex.
(run): Lock compile_mutex before calling compile() if compilation is
required.
* prims.cc (_Jv_CreateJavaVM): Call _Jv_InitInterpreter().
* include/java-interp.h (_Jv_InitInterpreter): Declare.

From-SVN: r84644

20 years agolibiberty.h (XNEW, [...]): Move here from libcpp/internal.h.
Bernardo Innocenti [Tue, 13 Jul 2004 20:59:09 +0000 (22:59 +0200)]
libiberty.h (XNEW, [...]): Move here from libcpp/internal.h.

* libiberty.h (XNEW, XCNEW, XNEWVEC, XCNEWVEC, XOBNEW): Move here from
libcpp/internal.h.
(XDELETE, XRESIZEVEC, XDELETEVEC, XNEWVAR, XCNEWVAR, XRESIZEVAR): New
macros.

From-SVN: r84643

20 years agolibiberty.h (ASTRDUP): Add casts required for stricter type conversion rules of C++.
Bernardo Innocenti [Tue, 13 Jul 2004 20:54:38 +0000 (22:54 +0200)]
libiberty.h (ASTRDUP): Add casts required for stricter type conversion rules of C++.

* libiberty.h (ASTRDUP): Add casts required for stricter
type conversion rules of C++.
* obstack.h (obstack_free): Likewise.

From-SVN: r84642

20 years agore PR tree-optimization/16443 (ICE during linux kernel compilation)
Diego Novillo [Tue, 13 Jul 2004 20:51:02 +0000 (20:51 +0000)]
re PR tree-optimization/16443 (ICE during linux kernel compilation)

PR tree-optimization/16443
* tree-ssa-alias.c: Add more description for
CALL_CLOBBERED_VARS and ADDRESSABLE_VARS.
* tree-ssa-operands.c (get_asm_expr_operands): Re-order the
clobbering of call-clobbered and addressable variables.  If
there are any before aliases have been computed, add them.

testsuite/ChangeLog

PR tree-optimization/16443
* gcc.dg/tree-ssa/20040713-1.c: New test.

From-SVN: r84641

20 years agonew2.C: Use first operand of type __SIZE_TYPE__ for operator new.
Ulrich Weigand [Tue, 13 Jul 2004 20:46:01 +0000 (20:46 +0000)]
new2.C: Use first operand of type __SIZE_TYPE__ for operator new.

* g++.dg/lookup/new2.C: Use first operand of type __SIZE_TYPE__
for operator new.

From-SVN: r84640

20 years agotree-optimize.c (execute_todo): Flush DUMP_FILE before verification.
Diego Novillo [Tue, 13 Jul 2004 20:39:09 +0000 (20:39 +0000)]
tree-optimize.c (execute_todo): Flush DUMP_FILE before verification.

* tree-optimize.c (execute_todo): Flush DUMP_FILE before
verification.

From-SVN: r84639

20 years agos390.c (s390_gimplify_va_arg): Use size_int instead of build_int_2.
Ulrich Weigand [Tue, 13 Jul 2004 17:22:41 +0000 (17:22 +0000)]
s390.c (s390_gimplify_va_arg): Use size_int instead of build_int_2.

* config/s390/s390.c (s390_gimplify_va_arg): Use size_int instead
of build_int_2.  Convert both operands of PLUS_EXPR and MULT_EXPR
to the same type.

From-SVN: r84632

20 years ago* collect2.c (main): Handle --no-demangle and --demangle flags.
Per Bothner [Tue, 13 Jul 2004 17:19:14 +0000 (10:19 -0700)]
* collect2.c (main):  Handle --no-demangle and --demangle flags.

From-SVN: r84631

20 years agoMakefile.in (OBJS-common): Add tree-data-ref.o.
Sebastian Pop [Tue, 13 Jul 2004 16:43:32 +0000 (18:43 +0200)]
Makefile.in (OBJS-common): Add tree-data-ref.o.

* Makefile.in (OBJS-common): Add tree-data-ref.o.
(tree-scalar-evolution.o): Add missing dependences on tree-pass.h flags.h.
(tree-data-ref.o): New rule.
* lambda.h: New file.
* tree-data-ref.c: New file.
* tree-data-ref.h: New file.
* tree.c (int_cst_value, tree_fold_gcd): New functions.
* tree.h (int_cst_value, tree_fold_gcd): Declared here.

From-SVN: r84630

20 years agocp-tree.h (lang_identifier): Remove class_value.
Mark Mitchell [Tue, 13 Jul 2004 16:22:06 +0000 (16:22 +0000)]
cp-tree.h (lang_identifier): Remove class_value.

* cp-tree.h (lang_identifier): Remove class_value.
(IDENTIFIER_CLASS_VALUE): Remove.
(pop_class_decls): Likewise.
(init_search_processing): Likewise.
* class.c (handle_using_decl): Use lookup_member, not
IDENTIFIER_CLASS_VALUE.
(restore_class_cache): New function, split out from ...
(pushclass): ... here.  Do not call clear_identifier_class_values.
(invalidate_class_lookup_cache): Do not clear
IDENTIFIER_CLASS_VALUE.
(popclass): Do not call pop_class_decls.
(maybe_note_name_used_in_class): Do not save names looked up after
the class is complete.  Use lookup_member, not
IDENTIFIER_CLASS_VALUE.
* config-lang.in (gtfiles): Add $(srcdir)/cp/search.c.
* decl.c (cxx_init_decl_processing): Do not call
init_search_processing.
* method.c (do_build_copy_constructor): Remove unnecessary code.
(do_build_assign_ref): Likewise.
* name-lookup.c (pushdecl): Use lookup_member, not
IDENTIFIER_CLASS_VALUE.
(set_identifier_type_value_with_scope): Set TREE_TYPE on the
type_shadowed list.
(poplevel_class): Do not restore IDENTIFIER_CLASS_VALUE.
(push_class_binding): Do not set it.
(clear_identifier_class_values): Remove.
(push_class_level_binding): Do not set IDENTIFIER_CLASS_VALUE.
(store_binding): Do not save it.
(pop_from_top_level): Do not restore it.
* name-lookup.h (cxx_saved_binding): Remove class_value.
(clear_identifier_class_values): Remove.
* ptree.c (cxx_print_identifier): Do not print
IDENTIFIER_CLASS_VALUE.
* search.c (search_obstack): Remove.
(push_stack_level): Remove.
(pop_stack_level): Remove.
(search_level): Remove.
(search_stack): Remove.
(lookup_member): Don't check IDENTIFIER_CLASS_VALUE.
(setup_class_bindings): Use IDENTIFIER_MARKED, not
IDENTIFIER_CLASS_VALUE.
(marked_identifiers): New variable.
(push_class_decls): Clear IDENTIFIER_MARKED.
(pop_class_decls): Don't call pop_search_level.
(init_search_processing): Remove.

From-SVN: r84629

20 years agoREADME: New file
David Billinghurst [Tue, 13 Jul 2004 13:27:52 +0000 (13:27 +0000)]
README: New file

2004-07-13  David Billinghurst (David.Billinghurst@riotinto.com)

* gfortran.dg/g77/README: New file
* gfortran.dg/g77/19981216-0.f:  Copy from
g77.f-torture/noncompile.  Add "dg-do compile" and
dg-error as required.
* gfortran.dg/g77/19990218-1.f: Likewise
* gfortran.dg/g77/19990905-1.f: Likewise
* gfortran.dg/g77/9263.f: Likewise
* gfortran.dg/g77/980615-0.f: Likewise
* gfortran.dg/g77/980616-0.f: Likewise
* gfortran.dg/g77/check0.f: Likewise
* gfortran.dg/g77/select_no_compile.f: Likewise

From-SVN: r84622

20 years agore PR target/13926 (GCC generates jumps that are too large to fit in word displacemen...
Eric Botcazou [Tue, 13 Jul 2004 13:14:06 +0000 (15:14 +0200)]
re PR target/13926 (GCC generates jumps that are too large to fit in word displacement field)

PR target/13926
* config/sparc/sparc-protos.h (output_ubranch): New prototype.
* config/sparc/sparc.c (output_ubranch): New function.
* config/sparc/sparc.md (jump pattern): Use it.

From-SVN: r84621

20 years agore PR target/16494 ([3.3.2/3.4/3.5] Pessimization with FP conditional branches)
Eric Botcazou [Tue, 13 Jul 2004 12:08:56 +0000 (14:08 +0200)]
re PR target/16494 ([3.3.2/3.4/3.5] Pessimization with FP conditional branches)

PR target/16494
* config/sparc/sparc.c (output_cbranch): Properly guard
the code handling far branches with TARGET_V9.
* config/sparc/sparc.md (length attribute): Document the
side-effect of having a length greater or equal to 3.

From-SVN: r84618

20 years agore PR target/15186 (-compat-bsd -m64 does not pick up the 64bit libraries)
Eric Botcazou [Tue, 13 Jul 2004 11:16:33 +0000 (13:16 +0200)]
re PR target/15186 (-compat-bsd -m64 does not pick up the 64bit libraries)

PR target/15186
* config/sparc/sol2-bi.h (LINK_ARCH64_SPEC_BASE): Pass
/usr/ucblib/sparcv9 as -R path when -compat-bsd is specified.

Co-Authored-By: Lloyd Parkes <lloyd@must-have-coffee.gen.nz>
From-SVN: r84615

20 years agore PR target/12602 (-pthreads and -threads undocumented for Solaris/SPARC)
Eric Botcazou [Tue, 13 Jul 2004 10:36:29 +0000 (12:36 +0200)]
re PR target/12602 (-pthreads and -threads undocumented for Solaris/SPARC)

PR target/12602
* doc/invoke.texi (SPARC options): Document -threads
and -pthreads on Solaris.

Co-Authored-By: Martin Sebor <sebor@roguewave.com>
From-SVN: r84612

20 years ago12658_thread.cc: Move/rename to 12658_thread-1.cc and xfail.
Paolo Carlini [Tue, 13 Jul 2004 09:08:21 +0000 (09:08 +0000)]
12658_thread.cc: Move/rename to 12658_thread-1.cc and xfail.

2004-07-13  Paolo Carlini  <pcarlini@suse.de>

* testsuite/22_locale/locale/cons/12658_thread.cc: Move/rename
to 12658_thread-1.cc and xfail.
* testsuite/22_locale/locale/cons/12658_thread-2.c: New, much
simpler version of 12658_thread-1.cc, still failing on 3_3 and
not failing on 3_4/mainline - both on single processor and
multiprocessor machines.

From-SVN: r84610

20 years agooops - forgot to commit ChangeLog entry for sh-symbianelf patch
Nick Clifton [Tue, 13 Jul 2004 08:57:01 +0000 (08:57 +0000)]
oops - forgot to commit ChangeLog entry for sh-symbianelf patch

From-SVN: r84609

20 years agobuiltins.c (std_gimplify_va_arg_expr): Handle types passed by reference.
Richard Henderson [Tue, 13 Jul 2004 08:43:41 +0000 (01:43 -0700)]
builtins.c (std_gimplify_va_arg_expr): Handle types passed by reference.

        * builtins.c (std_gimplify_va_arg_expr): Handle types passed
        by reference.
        (ind_gimplify_va_arg_expr): Remove.
        * tree.h (ind_gimplify_va_arg_expr): Remove.
        * config/pa/pa.c (hppa_gimplify_va_arg_expr): Don't use it.
        * config/mmix/mmix.c (mmix_function_arg_pass_by_reference): Allow
        argsp to be null.

        * config/arc/arc.c (arc_gimplify_va_arg_expr): Remove.
        (TARGET_GIMPLIFY_VA_ARG_EXPR): Remove.
        * config/cris/cris.c, config/fr30/fr30.c, config/frv/frv.c,
        config/iq2000/iq2000.c, config/m32r/m32r.c, config/mmix/mmix.c,
        config/mn10300/mn10300.c, config/v850/v850.c: Similarly.

From-SVN: r84608

20 years agofunction.c (pass_by_reference): New.
Richard Henderson [Tue, 13 Jul 2004 08:22:03 +0000 (01:22 -0700)]
function.c (pass_by_reference): New.

        * function.c (pass_by_reference): New.
        (assign_parm_find_data_types): Use it.
        * calls.c (initialize_argument_information): Likewise.
        (emit_library_call_value_1): Likewise.
        * expr.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove.
        * function.h (pass_by_reference): Declare.
ada/
        * misc.c (default_pass_by_ref): Use pass_by_reference.

From-SVN: r84607

20 years agotarget-def.h (TARGET_MUST_PASS_IN_STACK): New.
Richard Henderson [Tue, 13 Jul 2004 07:45:09 +0000 (00:45 -0700)]
target-def.h (TARGET_MUST_PASS_IN_STACK): New.

* target-def.h (TARGET_MUST_PASS_IN_STACK): New.
* target.h (struct gcc_target): Add calls.must_pass_in_stack.
* expr.h (MUST_PASS_IN_STACK): Remove.
* system.h (MUST_PASS_IN_STACK): Poison.
* tree.h (must_pass_in_stack_var_size): Declare.
(must_pass_in_stack_var_size_or_pad): Declare.
* calls.c (must_pass_in_stack_var_size): New.
(must_pass_in_stack_var_size_or_pad): Rename from
default_must_pass_in_stack.
* config/alpha/alpha.c (unicosmk_must_pass_in_stack): New.
(TARGET_MUST_PASS_IN_STACK): New.
* config/alpha/unicosmk.h (MUST_PASS_IN_STACK): Remove.
* config/fr30/fr30.c (fr30_must_pass_in_stack): New.
(TARGET_MUST_PASS_IN_STACK): New.
* config/fr30/fr30.h (MUST_PASS_IN_STACK): Remove.
* config/frv/frv.c (frv_must_pass_in_stack): New.
(TARGET_MUST_PASS_IN_STACK): New.
* config/frv/frv.h (MUST_PASS_IN_STACK): Remove.
* config/i386/i386-protos.h (ix86_must_pass_in_stack): Remove.
* config/i386/i386.c (TARGET_MUST_PASS_IN_STACK): New.
(ix86_must_pass_in_stack): Make static.
* config/i386/i386.h (MUST_PASS_IN_STACK): Remove.
* config/ia64/ia64.c (TARGET_MUST_PASS_IN_STACK): New.
* config/ia64/ia64.h (MUST_PASS_IN_STACK): Remove.
* config/m32r/m32r.c (TARGET_MUST_PASS_IN_STACK): New.
* config/m32r/m32r.h (MUST_PASS_IN_STACK): Remove.
* config/mcore/mcore-protos.h (mcore_must_pass_on_stack): Remove.
* config/mcore/mcore.c (TARGET_MUST_PASS_IN_STACK): New.
(mcore_must_pass_on_stack): Remove.
* config/mcore/mcore.h (MUST_PASS_IN_STACK): Remove.
* config/mips/mips.c (TARGET_MUST_PASS_IN_STACK): New.
* config/mips/mips.h (MUST_PASS_IN_STACK): Remove.
* config/pa/pa.c (TARGET_MUST_PASS_IN_STACK): New.
* config/pa/pa.h (MUST_PASS_IN_STACK): Remove.
* config/rs6000/aix.h (MUST_PASS_IN_STACK): Remove.
* config/rs6000/linux64.h (MUST_PASS_IN_STACK): Remove.
* config/rs6000/rs6000.c (rs6000_must_pass_in_stack): New.
(TARGET_MUST_PASS_IN_STACK): New.
* config/sh/sh.c (TARGET_MUST_PASS_IN_STACK): New.
* config/sh/sh.h (MUST_PASS_IN_STACK): Remove.
* config/sparc/sparc.c (TARGET_MUST_PASS_IN_STACK): New.
* config/sparc/sparc.h (MUST_PASS_IN_STACK): Remove.
* config/xtensa/xtensa.c (TARGET_MUST_PASS_IN_STACK): New.
* config/xtensa/xtensa.h (MUST_PASS_IN_STACK): Remove.
* doc/tm.texi (TARGET_MUST_PASS_IN_STACK): Update from
MUST_PASS_IN_STACK.

* calls.c, function.c, config/alpha/alpha.c, config/alpha/alpha.h,
config/alpha/unicosmk.h, config/alpha/vms.h, config/c4x/c4x.c,
config/cris/cris.h, config/fr30/fr30.c, config/fr30/fr30.h,
config/frv/frv.c, config/i386/i386.c, config/iq2000/iq2000.c,
config/mcore/mcore.c, config/mcore/mcore.h, config/mips/mips.c,
config/mmix/mmix.c, config/mmix/mmix.h, config/rs6000/rs6000.c,
config/sh/sh.c, config/sh/sh.h, config/stormy16/stormy16.c,
config/xtensa/xtensa.c: Use target hook.

From-SVN: r84606

20 years agoCopy files from g77.f-torture/compile.
David Billinghurst [Tue, 13 Jul 2004 07:08:22 +0000 (07:08 +0000)]
Copy files from g77.f-torture/compile.

2004-07-13  David Billinghurst (David.Billinghurst@riotinto.com)

Copy files from g77.f-torture/compile.
Add "{ dg-do compile}".  Other changes as noted
* gfortran.dg/g77/19990905-0.f: XFAIL PR 16511
* gfortran.dg/g77/20010519-1.f: Add dg-warning as required
* gfortran.dg/g77/20030115-1.f: Add dg-warning as required
* gfortran.dg/g77/20030326-1.f: XFAIL PR 16511
* gfortran.dg/g77/970125-0.f: Add dg-excess-errors.
* gfortran.dg/g77/980519-2.f: Declare hd_S,hd_Z,hd_T
* gfortran.dg/g77/990115-1.f: Declare RANK as INTEGER
* gfortran.dg/g77/alpha1.f: Separate declaration and DATA
statement to conform to standard.  Append alpha1.x for reference.
* gfortran.dg/g77/xformat.f: Add dg-warning

From-SVN: r84605

20 years agoconfigure.ac (gcc_cv_as_offsetable_lo10): Fix a typo.
Anthony Heading [Tue, 13 Jul 2004 06:57:13 +0000 (06:57 +0000)]
configure.ac (gcc_cv_as_offsetable_lo10): Fix a typo.

2004-07-13  Anthony Heading  <aheading@jpmorgan.com>

* configure.ac (gcc_cv_as_offsetable_lo10: Fix a typo.
* configure: Rebuilt.

From-SVN: r84603

20 years agoinvoke.texi: Remove documentation for MIPS -mrnames option.
Richard Sandiford [Tue, 13 Jul 2004 06:50:27 +0000 (06:50 +0000)]
invoke.texi: Remove documentation for MIPS -mrnames option.

* doc/invoke.texi: Remove documentation for MIPS -mrnames option.
* config/mips/mips.h (mips_reg_names): Don't declare.
(MASK_NAME_REGS): Delete.  Shuffle other MASK_* values down.
(TARGET_NAME_REGS): Delete.
(TARGET_SWITCHES): Remove -mrnames.
(REGISTER_NAMES): Initialise with the old contents of mips_reg_names[].
(ADDITIONAL_REGISTER_NAMES): Remove entries for names mentioned
in REGISTER_NAMES.
* config/mips/mips.c (mips_reg_names, mips_sw_reg_names): Delete.
(override_options): Remove handling of TARGET_NAME_REGS.

From-SVN: r84602

20 years ago* config/mips/mips.h (TARGET_*): Boolify.
Richard Sandiford [Tue, 13 Jul 2004 05:53:28 +0000 (05:53 +0000)]
* config/mips/mips.h (TARGET_*): Boolify.

From-SVN: r84601

20 years agoFix NM/AR propagation from toplevel for recursive makes.
James E Wilson [Tue, 13 Jul 2004 02:21:30 +0000 (02:21 +0000)]
Fix NM/AR propagation from toplevel for recursive makes.

* Makefile.in (AR): Use @AR@ not ar.
(NM): New.
(AR_FOR_TARGET): Use $(AR) not ar for native.
(NM_FOR_TARGET): Use $(NM) not nm for native.
* configure.ac: Add AC_CHECK_PROG calls for NM and AR.
* configure: Regenerate.

From-SVN: r84600

20 years agosparc.md (ashlsi3): Eliminate const 1 special case.
David S. Miller [Tue, 13 Jul 2004 01:36:38 +0000 (01:36 +0000)]
sparc.md (ashlsi3): Eliminate const 1 special case.

2004-07-12  David S. Miller  <davem@nuts.davemloft.net>

* config/sparc/sparc.md (ashlsi3): Eliminate const 1
special case.
(ashldi3_sp64): Likewise.

From-SVN: r84599

20 years agore PR target/16477 (Failure of gcc.c-torture/execute/strct-stdarg-1.c)
John David Anglin [Tue, 13 Jul 2004 01:35:43 +0000 (01:35 +0000)]
re PR target/16477 (Failure of gcc.c-torture/execute/strct-stdarg-1.c)

PR target/16477
* pa.c (function_arg): Update comment.
* pa.h (BLOCK_REG_PADDING): Define.

From-SVN: r84598

20 years agore PR libgcj/15713 (compile interpret.cc with -fno-strict-aliasing)
Bryce McKinlay [Tue, 13 Jul 2004 01:04:47 +0000 (01:04 +0000)]
re PR libgcj/15713 (compile interpret.cc with -fno-strict-aliasing)

2004-07-12  Bryce McKinlay  <mckinlay@redhat.com>

PR libgcj/15713
* include/jvm.h (_Jv_value): New union type.
* gcj/field.h (_Jv_Field): Add new _addr union field variants
* interperet.cc (run): Use _Jv_value union type and *_addr _Jv_Field
union members.

From-SVN: r84596

20 years agore PR tree-optimization/16461 (ICE: expected ssa_name, have integer_cst in independen...
Zdenek Dvorak [Tue, 13 Jul 2004 01:03:21 +0000 (03:03 +0200)]
re PR tree-optimization/16461 (ICE: expected ssa_name, have integer_cst in independent_of_stmt_p, at tree-tailcall.c:210)

PR tree-optimization/16461
* tree-tailcall.c (independent_of_stmt_p): Handle non-SSA name
arguments of phi nodes.

From-SVN: r84595

20 years ago* doc/invoke.texi (Darwin Options): Document -gused and -gfull.
Devang Patel [Tue, 13 Jul 2004 00:18:41 +0000 (17:18 -0700)]
* doc/invoke.texi (Darwin Options): Document -gused and -gfull.

From-SVN: r84594

20 years agoDaily bump.
GCC Administrator [Tue, 13 Jul 2004 00:16:13 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r84592

20 years agocpp.F: Copy from g77.f-torture/compile.
David Billinghurst [Tue, 13 Jul 2004 00:04:02 +0000 (00:04 +0000)]
cpp.F: Copy from g77.f-torture/compile.

2004-07-13  David Billinghurst (David.Billinghurst@riotinto.com)

* gfortran.dg/g77/cpp.F: Copy from g77.f-torture/compile.
Add {dg-do compile} directive.
* gfortran.dg/g77/cpp2.F: Likewise

From-SVN: r84589

20 years agocp-tree.h (get_aggr_typedef): Remove.
Mark Mitchell [Mon, 12 Jul 2004 23:53:13 +0000 (23:53 +0000)]
cp-tree.h (get_aggr_typedef): Remove.

* cp-tree.h (get_aggr_typedef): Remove.
* init.c (get_aggr_typedef): Likewise.

From-SVN: r84588

20 years agore PR c++/5402 (ICE in pop_binding)
Volker Reichelt [Mon, 12 Jul 2004 23:51:18 +0000 (23:51 +0000)]
re PR c++/5402 (ICE in pop_binding)

PR c++/5402
* g++.dg/lookup/name-clash1.C: New test.

PR c++/9777
* g++.dg/lookup/name-clash2.C: New test.

PR c++/12102
* g++.dg/lookup/name-clash3.C: New test.

From-SVN: r84587

20 years agoabi.html: Remove non-public qualification.
Benjamin Kosnik [Mon, 12 Jul 2004 23:40:49 +0000 (23:40 +0000)]
abi.html: Remove non-public qualification.

2004-07-12  Benjamin Kosnik  <bkoz@redhat.com>

* docs/html/abi.html: Remove non-public qualification.

* include/bits/concurrence.h: Tweak comments.

From-SVN: r84586

20 years ago* name-lookup.c (push_class_level_binding): Simplify.
Mark Mitchell [Mon, 12 Jul 2004 22:53:47 +0000 (22:53 +0000)]
* name-lookup.c (push_class_level_binding): Simplify.

From-SVN: r84585

20 years agofunction.c (expand_function_start): Ensure r_save is in Pmode.
Steve Ellcey [Mon, 12 Jul 2004 22:45:14 +0000 (22:45 +0000)]
function.c (expand_function_start): Ensure r_save is in Pmode.

        * function.c (expand_function_start): Ensure r_save is in Pmode.
* calls.c (prepare_call_address): Ensure static_chain_value is
  in Pmode.
* builtins.c (expand_builtin_nonlocal_goto): Ensure r_label and
          r_save_area are in Pmode.
* config/ia64/ia64.c (ia64_initialize_trampoline): Ensure addr,
  fnaddr, and static_chain are in Pmode.

From-SVN: r84584

20 years agore PR c++/16475 (FAIL: g++.dg/rtti/tinfo1.C scan-assembler _ZTIP9CTemplateIhE:)
Andrew Pinski [Mon, 12 Jul 2004 22:28:54 +0000 (22:28 +0000)]
re PR c++/16475 (FAIL: g++.dg/rtti/tinfo1.C scan-assembler _ZTIP9CTemplateIhE:)

2004-07-12  Andrew Pinski  <apinski@apple.com>

        PR c++/16475
        Revert:
        2004-07-07  H.J. Lu  <hongjiu.lu@intel.com>
                PR c++/16276
                * rtti.c (emit_tinfo_decl): Turn off DECL_ONE_ONLY if typeinfo
                is not public.

From-SVN: r84583

20 years agore PR target/16445 (Gcc 3.4 ICE on valid code)
Vladimir Makarov [Mon, 12 Jul 2004 22:20:38 +0000 (22:20 +0000)]
re PR target/16445 (Gcc 3.4 ICE on valid code)

2004-07-12  Vladimir Makarov  <vmakarov@redhat.com>

PR target/16445
* config/ia64/ia64.c (bundling): Don't count ignored insns.

From-SVN: r84580

20 years agotarget.h (struct gcc_target): Move gimplify_va_arg_expr next to build_builtin_va_list.
Richard Henderson [Mon, 12 Jul 2004 22:16:09 +0000 (15:16 -0700)]
target.h (struct gcc_target): Move gimplify_va_arg_expr next to build_builtin_va_list.

        * target.h (struct gcc_target): Move gimplify_va_arg_expr
        next to build_builtin_va_list.
        * target-def.h (TARGET_GIMPLIFY_VA_ARG_EXPR): Update to match.
        * builtins.c (gimplify_va_arg_expr): Likewise.
        * gimplify.c (copy_if_shared_r): Likewise.

From-SVN: r84578

20 years agopasses.c (rest_of_decl_compilation): Don't defer call of assemble_variable if its...
Alexandre Oliva [Mon, 12 Jul 2004 21:51:03 +0000 (21:51 +0000)]
passes.c (rest_of_decl_compilation): Don't defer call of assemble_variable if its DECL_RTL is already set.

* passes.c (rest_of_decl_compilation): Don't defer call of
assemble_variable if its DECL_RTL is already set.

From-SVN: r84576

20 years agocfgloop.h (struct loop): Add nb_iterations field.
Sebastian Pop [Mon, 12 Jul 2004 19:31:16 +0000 (21:31 +0200)]
cfgloop.h (struct loop): Add nb_iterations field.

* cfgloop.h (struct loop): Add nb_iterations field.
(current_loops): Declare.
* tree-chrec.c (chrec_not_analyzed_yet,
chrec_dont_know, chrec_known, count_ev_in_wider_type,
chrec_contains_symbols_defined_in_loop): Remove the temporary
hooks.
* tree-flow-inline.h (loop_containing_stmt): New function.
* tree-scalar-evolution.c: Add implementation.
* tree-scalar-evolution.h: Add declarations.

From-SVN: r84573

20 years agoparser.c (cp_parser_class_head): Remove unused variable.
Eric Christopher [Mon, 12 Jul 2004 19:10:03 +0000 (19:10 +0000)]
parser.c (cp_parser_class_head): Remove unused variable.

2004-07-12  Eric Christopher  <echristo@redhat.com>

        * parser.c (cp_parser_class_head): Remove unused variable.

From-SVN: r84571

20 years agore PR java/16474 (gcjh: Illegal C++ produced for some non-gcj bytecode)
Bryce McKinlay [Mon, 12 Jul 2004 18:06:03 +0000 (18:06 +0000)]
re PR java/16474 (gcjh: Illegal C++ produced for some non-gcj bytecode)

2004-07-12  Bryce McKinlay  <mckinlay@redhat.com>

        PR java/16474
        gjavah.c (print_field_info): Emit constant only if field is static.

From-SVN: r84570

20 years agore PR rtl-optimization/15921 (gcc.c-torture/compile/920501-4.c fails on powerpc-*)
Vladimir Makarov [Mon, 12 Jul 2004 18:01:44 +0000 (18:01 +0000)]
re PR rtl-optimization/15921 (gcc.c-torture/compile/920501-4.c fails on powerpc-*)

2004-07-12 Vladimir Makarov <vmakarov@redhat.com>

PR rtl-optimization/15921
* Makefile.in (global.o): Add recog.h.

* global.c (recog.h): Add the include-clause.
(bb_info): New member earlyclobber.
(allocate_bb_info, free_bb_info): Initialize/finish the new
member.
(earlyclobber_regclass, earlyclobber_regclass_length): The new
global variables.
(check_earlyclobber, regclass_intersect,
mark_reg_use_for_earlyclobber, mark_reg_use_for_earlyclobber_1):
New functions.
(calculate_local_reg_bb_info): Calculate value of earlyclobber.
(make_accurate_live_analysis): Modify pavin.

From-SVN: r84569

20 years agodecl.c (grok_op_properties): Reject [de-]allocation functions declared in a namespace...
Giovanni Bajo [Mon, 12 Jul 2004 17:54:49 +0000 (17:54 +0000)]
decl.c (grok_op_properties): Reject [de-]allocation functions declared in a namespace, or declared as static.

* decl.c (grok_op_properties): Reject [de-]allocation functions
declared in a namespace, or declared as static.

* g++.dg/lookup/new2.C: New test.
* g++.old-deja/g++.ns/new1.C: Remove (ill-formed).

From-SVN: r84567

20 years agocp-tree.h (make_binfo): Remove.
Nathan Sidwell [Mon, 12 Jul 2004 17:11:35 +0000 (17:11 +0000)]
cp-tree.h (make_binfo): Remove.

* cp-tree.h (make_binfo): Remove.
* decl.c (xref_basetypes): Use make_tree_binfo directly.
* tree.h (copy_base_binfos): Likewise.
(make_binfo): Remove.

From-SVN: r84566

20 years agoXCanvasPeer.java (createImage): Implement.
Scott Gilbertson [Mon, 12 Jul 2004 16:26:07 +0000 (16:26 +0000)]
XCanvasPeer.java (createImage): Implement.

2004-07-12  Scott Gilbertson  <scottg@mantatest.com>

* gnu/awt/xlib/XCanvasPeer.java (createImage): Implement.
* gnu/awt/xlib/XOffScreenImage.java
  (XOffScreenImage): Add ImageConsumer interface. Add ColorModel
  constructor argument. Add constructor using ImageProducer.
  (getSource): Implement.
  (imageComplete): New method.
  (setColorModel): New method.
  (setDimensions): New method.
  (setHints): New method.
  (setPixels): New method.
  (setProperties): New method.
* gnu/gcj/xlib/GC.java (drawPoint): New native method.
* gnu/gcj/xlib/natGC.cc (drawPoint): New native method.

From-SVN: r84564

20 years agomissed in previous commit
Nathan Sidwell [Mon, 12 Jul 2004 16:16:38 +0000 (16:16 +0000)]
missed in previous commit

From-SVN: r84563

20 years agocall.c (build_user_type_conversion_1, [...]): Pass type directly to lookup_fnfields...
Nathan Sidwell [Mon, 12 Jul 2004 16:06:40 +0000 (16:06 +0000)]
call.c (build_user_type_conversion_1, [...]): Pass type directly to lookup_fnfields & build_special_member_call.

* call.c (build_user_type_conversion_1, build_new_op,
check_constructor_callable, build_temp,
perform_direct_initialization_of_possible): Pass type directly to
lookup_fnfields & build_special_member_call.
(build_special_member_call): Accept a type, and complete it.
* class.c (finish_stuct_bits): Copy the BINFOs here.
* cvt.c (ocp_convert): Pass type directly to
build_special_member_call.
* decl.c (build_ptrmemfunc_type): Call xref_bastypes here.
(xref_basetypes): Allocate the binfo here. Adjust.
* init.c (build_init, build_new_1): Pass type directly to
build_special_member_call.
* lex.c (cxx_make_type): Do not allocate binfo here.
* name-lookup.c (arg_assoc_class): Incomplete types have no binfo.
* parser.c (cp_parser_class_head): Always call xref_basetypes.
* pt.c (instantiate_class_template): Likewise. Inhibit access
checking for template friends.
* ptree.c (cxx_print_type): Adjust record printing.
* search.c (lookup_base): When taking a type, complete it before
looking for a binfo.
(lookup_member): Delay completing a type.
(push_class_decls): Don't walk an incomplete type.
(lookup_conversions): Likewise.
* semantics.c (finish_stmt_expr_expr): Pass type directly to
build_special_member_call.
* tree.c (copy_base_binfos): Adjust.
(make_binfo): Likewise.
* typeck.c (build_modify_expr): Pass type directly to
build_special_member_call.
* typeck2.c (process_init_constructor): Check a binfo exists.
(build_m_component_ref): Allow accessing an incomplete type.
(build_functional_cast): Pass type directly to
build_special_member_call.

From-SVN: r84562

20 years agotree-cfg.c (find_taken_edge): Statically compute the truth value of a predicate compa...
Diego Novillo [Mon, 12 Jul 2004 15:38:25 +0000 (15:38 +0000)]
tree-cfg.c (find_taken_edge): Statically compute the truth value of a predicate comparing an SSA_NAME to itself.

* tree-cfg.c (find_taken_edge): Statically compute the truth
value of a predicate comparing an SSA_NAME to itself.

From-SVN: r84561

20 years agors6000.c (rs6000_rtx_costs): Indicate that the rs6000 doesn't have shift-and-add...
Roger Sayle [Mon, 12 Jul 2004 13:42:28 +0000 (13:42 +0000)]
rs6000.c (rs6000_rtx_costs): Indicate that the rs6000 doesn't have shift-and-add or shift-and-sub...

* config/rs6000/rs6000.c (rs6000_rtx_costs): Indicate that the
rs6000 doesn't have shift-and-add or shift-and-sub instructions
by returning the cost of a multiplication plus an addition.

From-SVN: r84556

20 years ago004-07-12 David Billinghurst (David.Billinghurst@riotinto.com)
David Billinghurst [Mon, 12 Jul 2004 12:49:11 +0000 (12:49 +0000)]
004-07-12  David Billinghurst (David.Billinghurst@riotinto.com)

        * gfortran.dg/g77/12002.f: Copy from g77.f-torture/compile.
        Add {dg-do compile} directive.
        * gfortran.dg/g77/13060.f: Likewise
        * gfortran.dg/g77/19990218-0.f: Likewise
        * gfortran.dg/g77/19990305-0.f: Likewise
        * gfortran.dg/g77/19990419-0.f: Likewise
        * gfortran.dg/g77/19990502-0.f: Likewise
        * gfortran.dg/g77/19990502-1.f: Likewise
        * gfortran.dg/g77/19990525-0.f: Likewise
        * gfortran.dg/g77/19990826-1.f: Likewise
        * gfortran.dg/g77/19990826-3.f: Likewise
        * gfortran.dg/g77/19990905-2.f: Likewise
        * gfortran.dg/g77/20000412-1.f: Likewise
        * gfortran.dg/g77/20000511-1.f: Likewise
        * gfortran.dg/g77/20000511-2.f: Likewise
        * gfortran.dg/g77/20000518.f: Likewise
        * gfortran.dg/g77/20000601-1.f: Likewise
        * gfortran.dg/g77/20000601-2.f: Likewise
        * gfortran.dg/g77/20000629-1.f: Likewise
        * gfortran.dg/g77/20000630-2.f: Likewise
        * gfortran.dg/g77/20010115.f: Likewise
        * gfortran.dg/g77/20010321-1.f: Likewise
        * gfortran.dg/g77/20010426.f: Likewise
        * gfortran.dg/g77/20020307-1.f: Likewise
        * gfortran.dg/g77/8485.f: Likewise
        * gfortran.dg/g77/960317-1.f: Likewise
        * gfortran.dg/g77/970915-0.f: Likewise
        * gfortran.dg/g77/980310-1.f: Likewise
        * gfortran.dg/g77/980310-2.f: Likewise
        * gfortran.dg/g77/980310-3.f: Likewise
        * gfortran.dg/g77/980310-4.f: Likewise
        * gfortran.dg/g77/980310-6.f: Likewise
        * gfortran.dg/g77/980310-7.f: Likewise
        * gfortran.dg/g77/980310-8.f: Likewise
        * gfortran.dg/g77/980419-2.f: Likewise
        * gfortran.dg/g77/980424-0.f: Likewise
        * gfortran.dg/g77/980427-0.f: Likewise
        * gfortran.dg/g77/980729-0.f: Likewise
        * gfortran.dg/g77/981117-1.f: Likewise
        * gfortran.dg/g77/toon_1.f: Likewise

From-SVN: r84553

20 years agore PR c++/2204 (G++ doesn't check (member) function parameter for abstract-ness.)
Giovanni Bajo [Mon, 12 Jul 2004 10:07:30 +0000 (10:07 +0000)]
re PR c++/2204 (G++ doesn't check (member) function parameter for abstract-ness.)

PR c++/2204
* config-lang.in (gtfiles): Add typeck2.c.
* Make-lang.in: Tweak typeck2.c dependencies, and add rule for
gt-cp-typeck2.h.
* cp-tree.h: Declare complete_type_check_abstract.
* typeck2.c (pat_calc_hash, pat_compare,
complete_type_check_abstract): New functions.
(abstract_virtuals_error): If the type is abstract, register the
declaration within abstract_pending_vars for further checks.
Inspect also dependent types. Handle IDENTIFIER_NODEs as decl.
* decl.c (cp_finish_decl): Do not strip array types.
(create_array_type_for_decl): Check for abstractness of the element
type.
(complete_vars): Call complete_type_check_abstract.
* class.c (finish_struct): Prepare a list of virtual functions for
template types, and call complete_vars on it to check for abstractness.

PR c++/2204
* g++.dg/other/abstract2.C: New test.

From-SVN: r84552

20 years agoconfig.gcc: Add sh-*-symbianelf target.
Nick Clifton [Mon, 12 Jul 2004 08:45:00 +0000 (08:45 +0000)]
config.gcc: Add sh-*-symbianelf target.

* config.gcc: Add sh-*-symbianelf target.
* config/sh/sh.c: Add new target macros:
  TARGET_ENCODE_SECTION_INFO, TARGET_STRIP_NAME_ENCODING,
  TARGET_CXX_IMPORT_EXPORT_CLASS.
  (sh_file_start): Create a definition of the .directive section.
  (sh_attribute): Add dllimport and dllexport attributes.
* config/sh/symbian-pre.h: New file.
* config/sh/symbian-post.h: New file.
* config/sh/symbian.c: New file. Contains Symbian specific functions.
* config/sh/sh-protos.h: Add prototypes for new functions provided by symbian.c.
* config/sh/t-symbian: New file.
* doc/extend.texi: Document support for dllimport and dllexport attributes by
  the sh-symbianelf target.

From-SVN: r84551

20 years agore PR tree-optimization/14107 (Return warnings don't work without optimizations enabled)
Paolo Bonzini [Mon, 12 Jul 2004 06:56:45 +0000 (06:56 +0000)]
re PR tree-optimization/14107 (Return warnings don't work without optimizations enabled)

gcc/ChangeLog:
2004-06-29  Paolo Bonzini  <bonzini@gnu.org>

PR tree-optimization/14107
* gimplify.c (gimplify_return_expr): Accept a
RETURN_EXPR with an error argument.
* tree-optimize.c (init_tree_optimization_passes):
Run pass_warn_function_return at -O0.

gcc/cp/ChangeLog:
2004-06-29  Paolo Bonzini  <bonzini@gnu.org>

PR tree-optimization/14107
* decl.c (finish_function): Remove temporary band-aid.

From-SVN: r84550

20 years agoinvoke.texi: Correct -fasynchronous-unwind-tables option index entry.
Roger Sayle [Mon, 12 Jul 2004 06:21:16 +0000 (06:21 +0000)]
invoke.texi: Correct -fasynchronous-unwind-tables option index entry.

* doc/invoke.texi: Correct -fasynchronous-unwind-tables option
index entry.

From-SVN: r84549

20 years agomips.c (mips_use_dfa_pipeline_interface): Delete.
Richard Sandiford [Mon, 12 Jul 2004 05:21:29 +0000 (05:21 +0000)]
mips.c (mips_use_dfa_pipeline_interface): Delete.

* config/mips/mips.c (mips_use_dfa_pipeline_interface): Delete.
(TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE): Define to hook_int_void_1.
* config/mips/3000.md: Add copyright notice.  Remove automota and
function units; use generic ones instead.  Only define reservations
for things that are different from generic.md.  Extend each clause
to include r3900.
* config/mips/{4000,4100,4300,4600,5000,6000,generic}.md: New files.
* config/mips/mips.md: Include them. Remove define_function_units.
(alu, imuldiv): New automata and units.

From-SVN: r84547

20 years agoinvoke.texi (Optimize Options): Document -frename-registers not being enabled by...
Ben Elliston [Mon, 12 Jul 2004 03:35:17 +0000 (03:35 +0000)]
invoke.texi (Optimize Options): Document -frename-registers not being enabled by default at -O3.

* doc/invoke.texi (Optimize Options): Document -frename-registers
not being enabled by default at -O3.

From-SVN: r84546

20 years agocall.c (build_operator_new_call): Avoid using push_to_top_level.
Mark Mitchell [Mon, 12 Jul 2004 01:33:47 +0000 (01:33 +0000)]
call.c (build_operator_new_call): Avoid using push_to_top_level.

* call.c (build_operator_new_call): Avoid using push_to_top_level.
(build_new_op): Adjust call to lookup_function_nonclass.
* name-lookup.c (identifier_type_value): Adjust call to
lookup_name_real.
(lookup_name_real): Add block_p parameter.
(lookup_name_nonclass): Adjust call to lookup_name_real.
(lookup_function_nonclass): Likewise.
(lookup_name): Likewise.
* name-lookup.h (lookup_name_real): Change prototype.
(lookup_name_nonclass): Likewise.
* parser.c (cp_parser_lookup_name): Likewise.

From-SVN: r84543

20 years agoexpr.c (gfc_check_assign_symbol): Handle pointer assignments.
Paul Brook [Mon, 12 Jul 2004 01:23:39 +0000 (01:23 +0000)]
expr.c (gfc_check_assign_symbol): Handle pointer assignments.

* expr.c (gfc_check_assign_symbol): Handle pointer assignments.
* trans-array.c (gfc_trans_auto_array_allocation): Remove
initialization code.
* trans-common.c (create_common): Use gfc_conv_initializer.
* trans-decl.c (gfc_get_symbol_decl): Use gfc_conv_initializer.
* trans-expr.c (gfc_conv_initializer): New function.
(gfc_conv_structure): Use it.
* trans.h (gfc_conv_initializer): Add prototype.
testsuite/
* gfortran.dg/pointer_init_1.f90: New test.

From-SVN: r84542

20 years agoexpr.c (java_truthvalue_conversion, [...]): Convert calls to "build" into calls to...
Roger Sayle [Mon, 12 Jul 2004 01:05:28 +0000 (01:05 +0000)]
expr.c (java_truthvalue_conversion, [...]): Convert calls to "build" into calls to the prefered "buildN" functions.

* expr.c (java_truthvalue_conversion, flush_quick_stack,
java_stack_swap, java_stack_dup, build_java_athrow, build_java_jsr,
build_java_ret, build_java_throw_out_of_bounds_exception,
build_java_array_length_access, java_check_reference,
build_java_arrayaccess, build_java_arraystore_check, build_newarray,
build_anewarray, expand_java_multianewarray, expand_java_arraystore,
expand_java_arrayload, build_java_monitor, expand_java_return,
expand_load_internal, expand_java_NEW, build_get_class,
build_instanceof, expand_java_CHECKCAST, expand_iinc,
build_java_soft_divmod, build_java_binop, build_field_ref,
expand_compare, expand_java_goto, expand_java_switch,
expand_java_add_case, build_class_init, build_known_method_ref,
invoke_build_dtable, build_invokevirtual, build_invokeinterface,
expand_invoke, build_jni_stub, expand_java_field_op,
java_expand_expr, expand_byte_code, STORE_INTERNAL,
force_evaluation_order, emit_init_test_initialization): Convert
calls to "build" into calls to the prefered "buildN" functions.

From-SVN: r84541

20 years agoDaily bump.
GCC Administrator [Mon, 12 Jul 2004 00:16:13 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r84539

20 years agore PR fortran/15986 (Forward referenced procedure not handled correctly)
Paul Brook [Sun, 11 Jul 2004 23:00:08 +0000 (23:00 +0000)]
re PR fortran/15986 (Forward referenced procedure not handled correctly)

PR fortran/15986
* parse.c (gfc_fixup_sibling_symbols): Also look for untyped
variables.
(parse_contained): Mark contained symbols as referenced.
testsuite/
* gfortran.dg/contained_1.f90: New test.

From-SVN: r84536

20 years agofold-const.c (fold): Canonicalize X + -C as X - C for floating point additions...
Roger Sayle [Sun, 11 Jul 2004 21:56:37 +0000 (21:56 +0000)]
fold-const.c (fold): Canonicalize X + -C as X - C for floating point additions...

* fold-const.c (fold) <PLUS_EXPR>: Canonicalize X + -C as X - C for
floating point additions, to keep real immediate constant positive.
<MINUS_EXPR>:  For floating point subtractions, only transform X - -C
into X + C, and leave positive real constants as X - C.

From-SVN: r84535

20 years agore PR libgcj/16478 (Hash synchronization deadlock with finalizers)
Bryce McKinlay [Sun, 11 Jul 2004 21:31:49 +0000 (22:31 +0100)]
re PR libgcj/16478 (Hash synchronization deadlock with finalizers)

2004-07-11  Bryce McKinlay  <mckinlay@redhat.com>

PR libgcj/16478
* prims.cc (_Jv_CreateJavaVM): Fix comment.
* gnu/gcj/runtime/FinalizerThread.java (init): New. Native.
(finalizerReady): Now native.
(run): Likewise.
(runFinalizers): Removed.
* gnu/gcj/runtime/natFinalizerThread.cc (run): Implement here. Use
a primitive lock, and don't hold it while running the finalizers.
(runFinalizers): Implement. Don't aquire any Java lock.
(finalizerReady): Use lock primitives to signal finalizer thread.

From-SVN: r84534

20 years agore PR awt/16748 (IAA.ImageComponentsTest: Freezes When Window Is Resized)
Bryce McKinlay [Sun, 11 Jul 2004 21:19:47 +0000 (21:19 +0000)]
re PR awt/16748 (IAA.ImageComponentsTest: Freezes When Window Is Resized)

2004-07-11  Bryce McKinlay  <mckinlay@redhat.com>

PR libgcj/16748
* prims.cc (_Jv_CreateJavaVM): Fix comment.
* gnu/gcj/runtime/FinalizerThread.java (init): New. Native.
(finalizerReady): Now native.
(run): Likewise.
(runFinalizers): Removed.
* gnu/gcj/runtime/natFinalizerThread.cc (run): Implement here. Use
a primitive lock, and don't hold it while running the finalizers.
(runFinalizers): Implement. Don't aquire any Java lock.
(finalizerReady): Use lock primitives to signal finalizer thread.

From-SVN: r84531

20 years agocp-tree.h (saved_scope): Make old_bindings a vector.
Mark Mitchell [Sun, 11 Jul 2004 21:02:31 +0000 (21:02 +0000)]
cp-tree.h (saved_scope): Make old_bindings a vector.

* cp-tree.h (saved_scope): Make old_bindings a vector.
(unuse_fields): Remove.
* name-lookup.h (cxx_saved_binding): Define it.
* class.c (pushclass): Don't use unuse_fields.
* name-lookup.c (cxx_saved_binding_make): Remove.
(store_binding): Add new bindings to a vector, using an
accumulator style, rather than adding them to a list.
(store_bindings): Adjust accordingly.
(store_class_bindings): Likewise.
(push_to_top_level): Likewise.
(pop_from_top_level): Likewise.
* optimize.c (maybe_clone_body): Must push_to_top_level and
pop_from_top_level calls outside of loop.
* parser.c (cp_parser_class_specifier): Move push_scope/pop_scope
calls here from cp_parser_late_parsing_default_args.
(cp_parser_save_default_args): Record the class type in which the
function is declared.
(cp_parser_late_parsing_default_args): Do not call
push_nested_class/pop_nested_class.
* search.c (dfs_unuse_fields): Remove.
(unuse_fields): Remove.

* g++.dg/parse/defarg8.C: New test.

From-SVN: r84530

20 years ago* pa.c (hppa_gimplify_va_arg_expr): Remove comment.
John David Anglin [Sun, 11 Jul 2004 20:28:11 +0000 (20:28 +0000)]
* pa.c (hppa_gimplify_va_arg_expr): Remove comment.

From-SVN: r84529

20 years agore PR tree-optimization/15654 (ICE in calculate_live_on_entry with -O2 -fno-tree...
Zdenek Dvorak [Sun, 11 Jul 2004 19:57:47 +0000 (21:57 +0200)]
re PR tree-optimization/15654 (ICE in calculate_live_on_entry with -O2 -fno-tree-dominator-opts)

PR tree-optimization/15654
* tree-tailcall.c (eliminate_tail_call): Remove unreachable code.

From-SVN: r84527

20 years agoAdd wchar_t counterparts of the basic_streambbuf<char> tests.
Paolo Carlini [Sun, 11 Jul 2004 19:13:59 +0000 (19:13 +0000)]
Add wchar_t counterparts of the basic_streambbuf<char> tests.

2004-07-11  Paolo Carlini  <pcarlini@suse.de>

Add wchar_t counterparts of the basic_streambbuf<char> tests.
* testsuite/27_io/basic_streambuf/cons/wchar_t/1.cc: New.
* testsuite/27_io/basic_streambuf/imbue/wchar_t/1.cc, 9322.cc:
Likewise.
* testsuite/27_io/basic_streambuf/in_avail/wchar_t/9701-3.cc: Likewise.
* testsuite/27_io/basic_streambuf/overflow/wchar_t/1.cc, 2.cc,
3599.cc: Likewise.
* testsuite/27_io/basic_streambuf/sgetc/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/sgetn/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/sputbackc/wchar_t/9538.cc: Likewise.
* testsuite/27_io/basic_streambuf/sputc/wchar_t/1057.cc: Likewise.
* testsuite/27_io/basic_streambuf/sputn/wchar_t/1.cc, 1057.cc:
Likewise.
* testsuite/27_io/basic_streambuf/sync/wchar_t/1057.cc: Likewise.

* testsuite/27_io/basic_streambuf/imbue/char/1.cc, 9322.cc: Minor
tweaks.
* testsuite/27_io/basic_streambuf/overflow/char/2.cc, 3599.cc:
Likewise.
* testsuite/27_io/basic_streambuf/sputn/char/1057.cc: Likewise.
* testsuite/27_io/basic_streambuf/sync/char/1057.cc: Likewise.

From-SVN: r84526

20 years agobuiltins.c (fold_builtin_fputs): Don't bother converting the return type to integer_t...
Roger Sayle [Sun, 11 Jul 2004 18:14:48 +0000 (18:14 +0000)]
builtins.c (fold_builtin_fputs): Don't bother converting the return type to integer_type_node...

* builtins.c (fold_builtin_fputs): Don't bother converting the
return type to integer_type_node, as we've already checked that
the result will be ignored.

* tree-eh.c (tree_could_trap_p): Add support for -ftrapv such
that signed addition, subtraction, multiplication, division,
remainder, negation and absolute value may potentially trap.

* fold-const.c (fold_ignored_result): New function to strip
non-side-effecting tree nodes from an expression whose result
is ignored.
(fold_convert): Call fold_ignored_result when casting a value
to VOID_TYPE.
(omit_one_operand):  Call fold_ignored_result on the "omitted"
operand when building a COMPOUND_EXPR.
(pedantic_omit_one_operand): Likewise.
* tree.h (fold_ignored_result): Prototype here.
* tree-ssa-ccp.c (ccp_fold_builtin): Call fold_ignored_result
when we're going to ignore the result.

From-SVN: r84525

20 years agore PR tree-optimization/16383 (internal compiler error: in generate_element_copy...
Richard Henderson [Sun, 11 Jul 2004 17:41:52 +0000 (10:41 -0700)]
re PR tree-optimization/16383 (internal compiler error: in generate_element_copy, at tree-sra.c:1466)

        PR tree-opt/16383
        * tree-ssa-ccp.c (fold_stmt_r): Split out...
        * tree.c (fields_compatible_p, find_compatible_field): ... new.
        * tree.h (fields_compatible_p, find_compatible_field): Declare.
        * tree-sra.c (sra_hash_tree): Hash fields by offset.
        (sra_elt_eq): Use fields_compatible_p.
        (generate_one_element_ref): Use find_compatible_field.

From-SVN: r84524

20 years agore PR tree-optimization/16422 (gcc.c-torture/execute/980223.c fails)
Richard Henderson [Sun, 11 Jul 2004 17:33:02 +0000 (10:33 -0700)]
re PR tree-optimization/16422 (gcc.c-torture/execute/980223.c fails)

        PR tree-opt/16422
        * tree-sra.c (generate_one_element_init): New.
        (generate_element_init): Use it.
        (scalarize_init): Push/pop gimplify context around it.
        (find_new_referenced_vars_1, find_new_referenced_vars): New.
        * gimplify.c (gimplify_expr): Allow SSA_NAME.

From-SVN: r84523

20 years agore PR fortran/15754 (Accepts assignment of the form P = NULL())
Tobias Schlüter [Sun, 11 Jul 2004 17:00:13 +0000 (19:00 +0200)]
re PR fortran/15754 (Accepts assignment of the form P = NULL())

PR fortran/17574
* gfortran.dg/pr15754.f90: New test.

Add ChangeLog missing from previous commit.

From-SVN: r84522

20 years agore PR fortran/15754 (Accepts assignment of the form P = NULL())
Tobias Schlüter [Sun, 11 Jul 2004 16:58:48 +0000 (18:58 +0200)]
re PR fortran/15754 (Accepts assignment of the form P = NULL())

fortran/
PR fortran/15754
* expr.c (gfc_check_assign): Print ranks if incompatible. Issue
warning if assigning NULL().

testsuite/
PR fortran/17574
* gfortran.dg/pr15754.f90: New test.
the changes to expr.c were accidentally committed previously

From-SVN: r84521

20 years agoRevert accidental commit
Tobias Schlüter [Sun, 11 Jul 2004 16:55:00 +0000 (18:55 +0200)]
Revert accidental commit

From-SVN: r84520

20 years agore PR fortran/16433 (wrong hexadecimal constant warning)
Tobias Schlüter [Sun, 11 Jul 2004 16:52:50 +0000 (18:52 +0200)]
re PR fortran/16433 (wrong hexadecimal constant warning)

PR fortran/16433
* gfortran.dg/pr16433.f: New test.

From-SVN: r84519

20 years agoReported by Roman Kennke <roman@ontographics.com> (bug #9331)
Mark Wielaard [Sun, 11 Jul 2004 16:48:29 +0000 (16:48 +0000)]
Reported by Roman Kennke <roman@ontographics.com> (bug #9331)

Reported by Roman Kennke <roman@ontographics.com> (bug #9331)
* java/net/URLStreamHandler.java (parseURL): When url file part
doesn't contain a '/' just ignore context.

From-SVN: r84518

20 years agore PR fortran/16303 (Complex logarithm function sometimes chooses a non-principal...
Paul Brook [Sun, 11 Jul 2004 16:05:08 +0000 (16:05 +0000)]
re PR fortran/16303 (Complex logarithm function sometimes chooses a non-principal branch)

PR fortran/16303
* m4/cexp.m4 (carg): Return -pi to pi.
* generated/exp_c?.c: Regenerate.

From-SVN: r84516

20 years agore PR fortran/16433 (wrong hexadecimal constant warning)
Tobias Schlüter [Sun, 11 Jul 2004 15:21:51 +0000 (17:21 +0200)]
re PR fortran/16433 (wrong hexadecimal constant warning)

PR fortran/16433
* gfortran.dg/pr16433.f: New test.

From-SVN: r84515

20 years agore PR fortran/16433 (wrong hexadecimal constant warning)
Tobias Schlüter [Sun, 11 Jul 2004 15:06:42 +0000 (17:06 +0200)]
re PR fortran/16433 (wrong hexadecimal constant warning)

PR fortran/16433
* primary.c (match_boz_constant): Call gfc_notify_std only if
we actually have a non-standard boz-literal-constant.

From-SVN: r84514

20 years agortlanal.c (insn_rtx_cost): New function, moved and renamed from combine.c's combine_i...
Roger Sayle [Sun, 11 Jul 2004 14:37:57 +0000 (14:37 +0000)]
rtlanal.c (insn_rtx_cost): New function, moved and renamed from combine.c's combine_insn_cost.

* rtlanal.c (insn_rtx_cost): New function, moved and renamed from
combine.c's combine_insn_cost.
* rtl.h (insn_rtx_cost): Prototype here.
* combine.c (combine_insn_cost): Delete function.
(combine_validate_cost): Update callers of combine_insn_cost to
call insn_rtx_cost instead.
(combine_instructions): Likewise.  Use NONJUMP_INSN_P to avoid
requesting the rtx_cost of call and/or jump instructions.

* ifcvt.c (total_bb_rtx_cost): Use insn_rtx_cost instead of calling
rtx_cost directly.  Don't request/use the cost of call or jump
instructions.  Return -1 if the cost of any instruction can't be
determined (or the BB contains a function call).
(find_if_case_1): Abort transformation if total_bb_rtx_cost returns
-1 (i.e. can't determine the cost of any instruction or the basic
block contains a subroutine call).
(find_if_case_2): Likewise.

From-SVN: r84513

20 years agors6000.c (struct processor_costs): Change semantics of fields to include the COST_N_I...
Roger Sayle [Sun, 11 Jul 2004 14:32:49 +0000 (14:32 +0000)]
rs6000.c (struct processor_costs): Change semantics of fields to include the COST_N_INSNS scaling...

* rs6000.c (struct processor_costs): Change semantics of fields to
include the COST_N_INSNS scaling, and update all initializers.
(rs6000_rtx_costs): Don't use COSTS_N_INSNS on rs6000_cost fields.
Use COSTS_N_INSNS(1) for NOT, SIGN_EXTEND, ZERO_EXTEND and COMPARE.
Use rs6000_cost->fp for both FLOAT_TRUNCATE and UNSPEC_FRSP.  When
optimizing for size, use COSTS_N_INSNS(1) for CALL and IF_THEN_ELSE.

From-SVN: r84512

20 years agore PR fortran/16404 (should reject invalid code with -pedantic -std=f95 ? (x8))
Tobias Schlüter [Sun, 11 Jul 2004 14:16:32 +0000 (16:16 +0200)]
re PR fortran/16404 (should reject invalid code with -pedantic -std=f95 ? (x8))

PR fortran/16404
* match.c (gfc_match_program): A program name is obligatory.
(gfc_match_return): RETURN in main program is an extension.
(gfc_match_block_data): A space is required before a block data
name.

From-SVN: r84511

20 years agore PR fortran/16404 (should reject invalid code with -pedantic -std=f95 ? (x8))
Tobias Schlüter [Sun, 11 Jul 2004 13:35:33 +0000 (15:35 +0200)]
re PR fortran/16404 (should reject invalid code with -pedantic -std=f95 ? (x8))

PR fortran/16404
* io.c (match_io): Flag 'WRITE(...), ...' as extension.

From-SVN: r84510

20 years agore PR fortran/16455 (print the location of a missing module fatal error)
Tobias Schlüter [Sun, 11 Jul 2004 13:06:26 +0000 (15:06 +0200)]
re PR fortran/16455 (print the location of a missing module fatal error)

PR fortran/16455
Fix ChangeLog

From-SVN: r84509

20 years agore PR fortran/16455 (print the location of a missing module fatal error)
Tobias Schlüter [Sun, 11 Jul 2004 13:04:32 +0000 (15:04 +0200)]
re PR fortran/16455 (print the location of a missing module fatal error)

PR fortran/15455
* module.c (gfc_dump_module, gfc_use_module): Print locus
when opening of module file fails.

From-SVN: r84508