platform/upstream/gcc.git
22 years agosimplify-rtx.c (simplify_relational_operation): Optimize abs(x) < 0.0 (and abs(x...
Roger Sayle [Sat, 20 Jul 2002 22:24:58 +0000 (22:24 +0000)]
simplify-rtx.c (simplify_relational_operation): Optimize abs(x) < 0.0 (and abs(x) >= 0.0 when using -ffast-math).

* simplify-rtx.c (simplify_relational_operation): Optimize
abs(x) < 0.0 (and abs(x) >= 0.0 when using -ffast-math).

* gcc.c-torture/execute/20020720-1.c: New test case.

From-SVN: r55614

22 years ago* MAINTAINERS: Add myself as ra* maintainer.
Michael Matz [Sat, 20 Jul 2002 16:53:10 +0000 (16:53 +0000)]
* MAINTAINERS: Add myself as ra* maintainer.

From-SVN: r55613

22 years ago* ra-build.c: (remember_web_was_spilled): Use GENERAL_REGS.
Michael Matz [Sat, 20 Jul 2002 16:52:37 +0000 (16:52 +0000)]
* ra-build.c: (remember_web_was_spilled): Use GENERAL_REGS.

From-SVN: r55612

22 years agocppexp.c (struct op): Add token pointer.
Neil Booth [Sat, 20 Jul 2002 13:31:56 +0000 (13:31 +0000)]
cppexp.c (struct op): Add token pointer.

* cppexp.c (struct op): Add token pointer.
(check_promotion, CHECK_PROMOTION): New.
(optab): Update.
(_cpp_parse_expr): Update, use token pointer of struct op.
(reduce): Warn about change of sign owing to promotion.
* cppinit.c (cpp_handle_option): New warning if -Wall.
* cpplib.h (struct cpp_options): New member.
testsuite:
* gcc.dg/cpp/Wsignprom.c: New tests.

From-SVN: r55611

22 years agospew.c (struct uinparsed_test): Replace 'filename' and 'lineno' members with 'locus'.
Gabriel Dos Reis [Sat, 20 Jul 2002 12:45:45 +0000 (12:45 +0000)]
spew.c (struct uinparsed_test): Replace 'filename' and 'lineno' members with 'locus'.

        * spew.c (struct uinparsed_test): Replace 'filename' and 'lineno'
        members with 'locus'.  Adjust use throughout.
        (struct feed):  Likewise.
        (alloc_unparsed_test): Change prototype, take a 'const location_t *'.
        Adjust use.
        (snarf_defarg): Use error(), not error_with_file_and_line().

From-SVN: r55610

22 years agoDaily bump.
GCC Administrator [Sat, 20 Jul 2002 07:16:56 +0000 (07:16 +0000)]
Daily bump.

From-SVN: r55608

22 years agoabi.txt: New file.
Phil Edwards [Sat, 20 Jul 2002 06:26:27 +0000 (06:26 +0000)]
abi.txt: New file.

2002-07-20  Phil Edwards  <pme@gcc.gnu.org>

* docs/html/abi.txt:  New file.
* docs/html/23_containers/howto.html:  Tweak vector-overhead text.
* docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
Import from upstream, R22.

* include/bits/char_traits.h, include/bits/stl_iterator.h,
include/bits/stl_iterator_base_types.h, libsupc++/exception,
libsupc++/new, libsupc++/typeinfo:  Use @brief markup.

* include/bits/deque.tcc, include/bits/stl_alloc.h,
include/bits/stl_deque.h, include/bits/stl_list.h:  Postpone removal
of deprecated functions until 3.4.  (Same timeframe, different text.)
* include/bits/stl_vector.h:  Ditto.  Also do the same cleanups that
the other sequence classes received.

From-SVN: r55602

22 years agors6000.md: Remove ppc630 fpcompare from single fpu list.
David Edelsohn [Sat, 20 Jul 2002 02:20:16 +0000 (02:20 +0000)]
rs6000.md: Remove ppc630 fpcompare from single fpu list.

        * config/rs6000/rs6000.md: Remove ppc630 fpcompare from single
        fpu list.  Separate Power4 compare and delayed_compare.  Correct
        Power4 fpcompare.
        (fix_truncdfsi2_internal): Restore FPR preference.
        * config/rs6000/t-aix43 (MULTILIB_MATCHES): Add mcpu?power3,
        mcpu?power4, mcpu?604e.  Remove mpower, mpower2, mpowerpc.

From-SVN: r55601

22 years ago* reload1.c (reload_as_needed): Duplicate oldpat.
Momchil Velikov [Sat, 20 Jul 2002 01:30:31 +0000 (04:30 +0300)]
* reload1.c (reload_as_needed): Duplicate oldpat.

From-SVN: r55600

22 years agoNew test.
Alan Modra [Sat, 20 Jul 2002 00:33:49 +0000 (00:33 +0000)]
New test.

From-SVN: r55599

22 years agore PR rtl-optimization/7130 (miscompiled code for gcc-3.1 on powerpc-unknown-linux...
Alan Modra [Sat, 20 Jul 2002 00:31:15 +0000 (00:31 +0000)]
re PR rtl-optimization/7130 (miscompiled code for gcc-3.1 on powerpc-unknown-linux-gnu with -funroll-all-loops)

PR optimization/7130
* loop.h (struct loop_info): Add "preconditioned".
* unroll.c (unroll_loop): Set it.
* doloop.c (doloop_modify_runtime): Correct count for unrolled loops.

From-SVN: r55598

22 years agortl.def (CODE_LABEL): Remove slot 8.
Zack Weinberg [Fri, 19 Jul 2002 23:11:19 +0000 (23:11 +0000)]
rtl.def (CODE_LABEL): Remove slot 8.

* rtl.def (CODE_LABEL): Remove slot 8.
* rtl.h (struct rtx_def): Document new uses of jump and call fields.
(LABEL_ALTERNATE_NAME): Delete.
(LABEL_KIND, SET_LABEL_KIND, LABEL_ALT_ENTRY_P): New.
* defaults.h: Remove default for ASM_OUTPUT_ALTERNATE_LABEL_NAME.

* final.c (output_alternate_entry_point): New.
(final_scan_insn): Use it instead of
ASM_OUTPUT_ALTERNATE_LABEL_NAME.  Do not consider possibility
of a case label being an alternate entry point.

* cfgbuild.c (make_edges, find_bb_boundaries): Use LABEL_ALT_ENTRY_P.
* emit-rtl.c (gen_label_rtx): Adjust call to gen_rtx_CODE_LABEL.
Do not clear LABEL_NUSES (unnecessary) or LABEL_ALTERNATE_NAME
(field deleted).
* print-rtl.c, ra-debug.c: Update code to output CODE_LABELs.

* doc/rtl.texi: Document LABEL_KIND, SET_LABEL_KIND, and
LABEL_ALT_ENTRY_P; not LABEL_ALTERNATE_NAME.
* doc/tm.texi: Delete documentation of
ASM_OUTPUT_ALTERNATE_LABEL_NAME.

From-SVN: r55597

22 years agoiris5gas.h (DWARF2_DEBUGGING_INFO): Define.
Rainer Orth [Fri, 19 Jul 2002 21:58:12 +0000 (21:58 +0000)]
iris5gas.h (DWARF2_DEBUGGING_INFO): Define.

* config/mips/iris5gas.h (DWARF2_DEBUGGING_INFO): Define.
(PREFERRED_DEBUGGING_TYPE): Use DWARF2_DEBUG.
(LINK_SPEC): Define.
(STARTFILE_SPEC): Define.
(ENDFILE_SPEC): Define.

* config/mips/iris6-o32.h (LINK_SPEC): Move ...
* config/mips/iris6-o32-as.h (LINK_SPEC): ... here.

* config/mips/iris6-o32-gas.h: New file.
* config.gcc (mips-sgi-irix6*o32): Use it.

* config/mips/t-iris5-gas: New file.
* config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Use it.

From-SVN: r55596

22 years agocppexp.c (ALWAYS_EVAL): Remove.
Neil Booth [Fri, 19 Jul 2002 19:24:43 +0000 (19:24 +0000)]
cppexp.c (ALWAYS_EVAL): Remove.

* cppexp.c (ALWAYS_EVAL): Remove.
(optab, reduce): Always evaluate.
(num_unary_op, num_binary_op, num_div_op): Issue diagnostics
only if not skipping evaluation.
testsuite:
* gcc.dg/cpp/expr.c: New tests.

From-SVN: r55595

22 years ago* config/avr/avr.c (debug_hard_reg_set): Remove.
Marek Michalkiewicz [Fri, 19 Jul 2002 18:30:34 +0000 (20:30 +0200)]
* config/avr/avr.c (debug_hard_reg_set): Remove.

From-SVN: r55594

22 years ago[ ChangeLog ]
Chris Demetriou [Fri, 19 Jul 2002 17:12:14 +0000 (17:12 +0000)]
[ ChangeLog ]
2002-07-19  Chris Demetriou  <cgd@broadcom.com>

        * gcc.c (cpp_options): Include "%1" (cc1_spec).

[ cp/ChangeLog ]
2002-07-19  Chris Demetriou  <cgd@broadcom.com>

        * lang-specs.h (@c++): Include "%2" (cc1plus_spec) wherever
        cpp_options is included.

From-SVN: r55591

22 years ago* loop.c (loop_givs_rescan): Delete the REG_EQUAL note, not the insn.
Richard Henderson [Fri, 19 Jul 2002 16:31:40 +0000 (09:31 -0700)]
* loop.c (loop_givs_rescan): Delete the REG_EQUAL note, not the insn.

From-SVN: r55590

22 years agoconfigure.in (sh[34]*-*-linux*): Add brackets.
Kaz Kojima [Fri, 19 Jul 2002 15:30:58 +0000 (15:30 +0000)]
configure.in (sh[34]*-*-linux*): Add brackets.

* configure.in (sh[34]*-*-linux*): Add brackets.
* configure: Regenerate.

From-SVN: r55589

22 years agoieeefp.h: Add x86-64 support.
Bo Thorsen [Fri, 19 Jul 2002 14:41:15 +0000 (14:41 +0000)]
ieeefp.h: Add x86-64 support.

2002-07-19  Bo Thorsen  <bo@berlioz.suse.de>

        * java/lang/ieeefp.h: Add x86-64 support.
        * configure.in: Likewise.
        * configure.host: Likewise.
        * configure: Regenerated.
        * sysdep/x86-64/locks.h: New file with x86-64 locks.

From-SVN: r55588

22 years agoprefix.c (update_path): Don't zap single `.' path components unless followed by anoth...
Alan Modra [Fri, 19 Jul 2002 13:24:55 +0000 (13:24 +0000)]
prefix.c (update_path): Don't zap single `.' path components unless followed by another `.' and fix...

* prefix.c (update_path): Don't zap single `.' path components
unless followed by another `.' and fix typo last patch.

From-SVN: r55586

22 years agoRemove dead endif so x86-64 compilation works.
Bo Thorsen [Fri, 19 Jul 2002 11:21:36 +0000 (13:21 +0200)]
Remove dead endif so x86-64 compilation works.

From-SVN: r55585

22 years agogcconfig.h: Add x86-64 definitions.
Bo Thorsen [Fri, 19 Jul 2002 08:54:44 +0000 (08:54 +0000)]
gcconfig.h: Add x86-64 definitions.

2002-07-18  Bo Thorsen  <bo@suse.de>

* include/private/gcconfig.h: Add x86-64 definitions.
* os_dep.c: Add x86-64 support.
* configure.in: Likewise.
* configure: Regenerate.

Approved by Hans Boehm.

From-SVN: r55584

22 years agoDaily bump.
GCC Administrator [Fri, 19 Jul 2002 07:16:57 +0000 (07:16 +0000)]
Daily bump.

From-SVN: r55583

22 years agoe <brendan@zen.org>
Brendan Kehoe [Fri, 19 Jul 2002 04:51:42 +0000 (00:51 -0400)]
e  <brendan@zen.org>

        * bits/slice_array.h (_DEFINE_VALARRAY_OPERATOR): Fix typo of
        _Nname to _Name.

From-SVN: r55578

22 years agoslice_array.h (slice_array<T>::operator=(const T&)): Constify.
Gabriel Dos Reis [Fri, 19 Jul 2002 04:45:20 +0000 (04:45 +0000)]
slice_array.h (slice_array<T>::operator=(const T&)): Constify.

        * include/bits/slice_array.h
        (slice_array<T>::operator=(const T&)): Constify.
        * include/bits/gslice_array.h
        (gslice_array<T>::operator=(const T&)):  Likewise.
        * include/bits/mask_array.h
        (mask_array<T>::operator=(const T&)): Likewise.
        * include/bits/indirect_array.h
        (indirect_array<T>::operator=(const T&): Likewise.
:w

From-SVN: r55577

22 years agoMakefile.am: Add SH support.
Kaz Kojima [Fri, 19 Jul 2002 01:08:43 +0000 (01:08 +0000)]
Makefile.am: Add SH support.

* Makefile.am: Add SH support.
* Makefile.in: Regenerate.
* configure.in (sh-*-linux*, sh[34]*-*-linux*): Add target.
* configure: Regenerate.
* include/ffi.h.in: Add SH support.
* src/sh/ffi.c: New file.
* src/sh/sysv.S: New file.
* src/types.c: Add SH support.

From-SVN: r55574

22 years agoForgot this file.
Bo Thorsen [Fri, 19 Jul 2002 00:37:03 +0000 (02:37 +0200)]
Forgot this file.

From-SVN: r55573

22 years ago* g++.dg/opt/pr6713.C: Add template instantiation.
David Edelsohn [Fri, 19 Jul 2002 00:07:56 +0000 (20:07 -0400)]
* g++.dg/opt/pr6713.C: Add template instantiation.

From-SVN: r55572

22 years ago[multiple changes]
Bo Thorsen [Thu, 18 Jul 2002 23:08:31 +0000 (23:08 +0000)]
[multiple changes]

2002-07-16  Bo Thorsen  <bo@suse.de>

* src/x86/ffi64.c: New file that adds x86-64 support.
* src/x86/unix64.S: New file that handles argument setup for
x86-64.
* src/x86/sysv.S: Don't use this on x86-64.
* src/x86/ffi.c: Don't use this on x86-64.
Remove unused vars.
* src/prep_cif.c (ffi_prep_cif): Don't do stack size calculation
for x86-64.
* src/ffitest.c (struct6): New test that tests a special case in
the x86-64 ABI.
(struct7): Likewise.
(struct8): Likewise.
(struct9): Likewise.
(closure_test_fn): Silence warning about this when it's not used.
(main): Add the new tests.
(main): Fix a couple of wrong casts and silence some compiler warnings.
* include/ffi.h.in: Add x86-64 ABI definition.
* fficonfig.h.in: Regenerate.
* Makefile.am: Add x86-64 support.
* configure.in: Likewise.
* Makefile.in: Regenerate.
* configure: Likewise.

2002-06-24  Bo Thorsen  <bo@suse.de>

* src/types.c: Merge settings for similar architectures.
Add x86-64 sizes and alignments.

2002-06-23  Bo Thorsen  <bo@suse.de>

* src/arm/ffi.c (ffi_prep_args): Remove unused vars.
* src/sparc/ffi.c (ffi_prep_args_v8): Likewise.
* src/mips/ffi.c (ffi_prep_args): Likewise.
* src/m68k/ffi.c (ffi_prep_args): Likewise.

From-SVN: r55571

22 years agocppexp.c (cpp_num_mul): Remove unused parameter.
Neil Booth [Thu, 18 Jul 2002 22:08:35 +0000 (22:08 +0000)]
cppexp.c (cpp_num_mul): Remove unused parameter.

* cppexp.c (cpp_num_mul): Remove unused parameter.
(UNARY, BINARY, OTHER, binary_handler): Remove.
(ALWAYS_EVAL): New.
(optab): Update.
(reduce): Refactor to a large switch, don't use a function
pointer.

From-SVN: r55570

22 years agolinux64.h (STARTFILE_PREFIX_SPEC): Define this always.
Bo Thorsen [Thu, 18 Jul 2002 20:56:33 +0000 (20:56 +0000)]
linux64.h (STARTFILE_PREFIX_SPEC): Define this always.

2002-07-18  Bo Thorsen  <bo@berlioz.suse.de>

* config/i386/linux64.h (STARTFILE_PREFIX_SPEC): Define this always.

From-SVN: r55568

22 years agomach_dep.c (GC_push_regs): Remove the unused Linux/mips code.
H.J. Lu [Thu, 18 Jul 2002 20:06:00 +0000 (20:06 +0000)]
mach_dep.c (GC_push_regs): Remove the unused Linux/mips code.

2002-07-18  H.J. Lu <hjl@gnu.org>

* mach_dep.c (GC_push_regs): Remove the unused Linux/mips code.

From-SVN: r55566

22 years agoconfigure.in (machdep): Don't add mips_sgi_mach_dep.lo for Linux/mips.
H.J. Lu [Thu, 18 Jul 2002 19:41:37 +0000 (19:41 +0000)]
configure.in (machdep): Don't add mips_sgi_mach_dep.lo for Linux/mips.

2002-07-18  H.J. Lu  (hjl@gnu.org)

* configure.in (machdep): Don't add mips_sgi_mach_dep.lo for
Linux/mips.

From-SVN: r55565

22 years agosh-protos.h (sh_expand_unop_v2sf): Move inside #ifdef RTX_CODE guard.
J"orn Rennecke [Thu, 18 Jul 2002 19:26:07 +0000 (19:26 +0000)]
sh-protos.h (sh_expand_unop_v2sf): Move inside #ifdef RTX_CODE guard.

* sh-protos.h (sh_expand_unop_v2sf): Move inside #ifdef RTX_CODE guard.
(sh_expand_binop_v2sf): Likewise.
* sh.c (machine_dependent_reorg): Add move for UNSPEC_MOVA.
(int_gpr_dest, trunc_hi_operand): New functions.
* sh.h (PREDICATE_CODES): Add any_register_operand, int_gpr_dest and
trunc_hi_operand.
(SPECIAL_MODE_PREDICATES, any_register_operand): Define.
* sh.md (cmpeqdi_t+1): Remove comments that genrecog warns about.
(adddi3_compact+1, subdi3_compact+1, ashlsi3_n+1, ashlhi3+1): Likewise.
(ashrsi2_16+1, ashrsi2_31+1, lshrsi3_n+1, ashrdi3+[12]): Likewise.
(and_shl_scratch+[12], zero_extendhidi2+1): Likewise.
(zero_extendhisi2_media+1, extendhidi2+1, extendqidi2+1): Likewise.
(extendhisi2_media+1, extendqisi2_media+1): Likewise.
(movsi_media_nofpu+[12], movhi_media+1, movdi_media_nofpu+1): Likewise.
(movdi_const_16bit+[12], movdf_i4+[123], reload_outdf+[2-5]): Likewise.
(movsf_ie+1): Likewise.
(loaddi_trunc): Use int_gpr_dest predicate.
(use_sfunc_addr, indirect_jump_scratch, sibcall_compact): Add mode(s).
(mova, mova_const, GOTaddr2picreg, ptrel, casesi_worker_0): Likewise.
(casesi_worker_0+[12], casesi_worker): Likewise.
(shcompact_preserve_incoming_args): Likewise.
(mov_nop): Use any_register_operand predicate.
(mperm_w0): Use trunc_hi_operand predicate.

From-SVN: r55564

22 years agopa-linux.h (DWARF2_UNWIND_INFO): Delete define.
John David Anglin [Thu, 18 Jul 2002 18:18:26 +0000 (18:18 +0000)]
pa-linux.h (DWARF2_UNWIND_INFO): Delete define.

* pa-linux.h (DWARF2_UNWIND_INFO): Delete define.
* pa.h (EH_RETURN_DATA_REGNO): Revise TARGET_64BIT and correct
numbering.

From-SVN: r55563

22 years ago* pa.c (output_deferred_plabels): Remove unused millicode enum mulU.
John David Anglin [Thu, 18 Jul 2002 17:58:44 +0000 (17:58 +0000)]
* pa.c (output_deferred_plabels): Remove unused millicode enum mulU.

From-SVN: r55562

22 years agoMakefile.am (TARGET_SRC_MIPS_LINUX): New.
H.J. Lu [Thu, 18 Jul 2002 17:55:28 +0000 (17:55 +0000)]
Makefile.am (TARGET_SRC_MIPS_LINUX): New.

2002-07-18  H.J. Lu  (hjl@gnu.org)

* Makefile.am (TARGET_SRC_MIPS_LINUX): New.
(libffi_la_SOURCES): Support MIPS_LINUX.
(libffi_convenience_la_SOURCES): Likewise.
* Makefile.in: Regenerated.

* configure.in (mips64*-*): Skip.
(mips*-*-linux*): New.
* configure: Regenerated.

* src/mips/ffi.c: Include <sgidefs.h>.

From-SVN: r55561

22 years agoifcvt.c (noce_get_condition): Make certain that the condition is valid at JUMP.
Richard Henderson [Thu, 18 Jul 2002 17:48:04 +0000 (10:48 -0700)]
ifcvt.c (noce_get_condition): Make certain that the condition is valid at JUMP.

        * ifcvt.c (noce_get_condition): Make certain that the condition
        is valid at JUMP.

From-SVN: r55560

22 years agocompile.exp: Sort sources.
Rainer Orth [Thu, 18 Jul 2002 17:42:31 +0000 (17:42 +0000)]
compile.exp: Sort sources.

* libjava.compile/compile.exp: Sort sources.
* libjava.jni/jni.exp (gcj_jni_run): Likewise.
* libjava.lang/lang.exp: Likewise.

From-SVN: r55558

22 years agosh.c (barrier_align, push): Shut up compiler warnings.
J"orn Rennecke [Thu, 18 Jul 2002 12:47:34 +0000 (12:47 +0000)]
sh.c (barrier_align, push): Shut up compiler warnings.

* sh.c (barrier_align, push): Shut up compiler warnings.
(initial_elimination_offset,sh_media_init_builtins): Likewise.
(reg_no_subreg_operand): Delete.

From-SVN: r55555

22 years agolinux64.h (LINK_SPEC): Remove bogus -Y option.
Bo Thorsen [Thu, 18 Jul 2002 08:47:42 +0000 (08:47 +0000)]
linux64.h (LINK_SPEC): Remove bogus -Y option.

2002-07-17  Bo Thorsen  <bo@suse.de>

* config/i386/linux64.h (LINK_SPEC): Remove bogus -Y option.
(STARTFILE_PREFIX_SPEC): Define for NATIVE_CROSS compilations.
(STARTFILE_SPEC): Remove hardcoded library paths.
(ENDFILE_SPEC): Likewise.

From-SVN: r55554

22 years agogcse.c (hoist_expr_reaches_here_p): Stop once expr_bb is reached.
Jan Hubicka [Thu, 18 Jul 2002 07:40:16 +0000 (09:40 +0200)]
gcse.c (hoist_expr_reaches_here_p): Stop once expr_bb is reached.

* gcse.c (hoist_expr_reaches_here_p):  Stop once expr_bb is reached.

* gcse.c (try_replace_reg): Do not return false positives.

From-SVN: r55553

22 years agoDaily bump.
GCC Administrator [Thu, 18 Jul 2002 07:19:00 +0000 (07:19 +0000)]
Daily bump.

From-SVN: r55552

22 years agoprefix.c: (update_path): Strip ".." components when prior dir doesn't exist.
Alan Modra [Thu, 18 Jul 2002 06:44:35 +0000 (06:44 +0000)]
prefix.c: (update_path): Strip ".." components when prior dir doesn't exist.

* prefix.c: (update_path): Strip ".." components when prior dir
doesn't exist.  Pass correct var to UPDATE_PATH_HOST_CANONICALIZE.

From-SVN: r55547

22 years ago* gcc.dg/nest.c: New.
Alan Modra [Thu, 18 Jul 2002 03:41:04 +0000 (03:41 +0000)]
* gcc.dg/nest.c: New.

From-SVN: r55546

22 years agosysv4.h (ASM_OUTPUT_REG_PUSH): Remove 64-bit support.
Alan Modra [Thu, 18 Jul 2002 03:39:44 +0000 (03:39 +0000)]
sysv4.h (ASM_OUTPUT_REG_PUSH): Remove 64-bit support.

* config/rs6000/sysv4.h (ASM_OUTPUT_REG_PUSH): Remove 64-bit support.
(ASM_OUTPUT_REG_POP): Likewise.

From-SVN: r55545

22 years agors6000.c (first_reg_to_save): Remove bogus adjustments to first_reg for profiling...
Alan Modra [Thu, 18 Jul 2002 00:15:32 +0000 (00:15 +0000)]
rs6000.c (first_reg_to_save): Remove bogus adjustments to first_reg for profiling case.

* config/rs6000/rs6000.c (first_reg_to_save): Remove bogus
adjustments to first_reg for profiling case.
(output_function_profiler): Correct lr save slot for ABI_AIX_NODESC.
Disable profiling for 64 bit code on both ABI_V4 and ABI_AIX_NODESC.
Save static chain reg to sp + 12 on ABI_AIX_NODESC.
* config/rs6000/sysv4.h (ASM_OUTPUT_REG_PUSH): Define.
(ASM_OUTPUT_REG_POP): Define.
* config/rs6000/linux64.h (ASM_OUTPUT_REG_PUSH): Undef.
(ASM_OUTPUT_REG_POP): Undef.

From-SVN: r55544

22 years agorun_doxygen: Remove template parameter names from "Compound List" summary page.
Phil Edwards [Wed, 17 Jul 2002 22:02:32 +0000 (22:02 +0000)]
run_doxygen: Remove template parameter names from "Compound List" summary page.

2002-07-17  Phil Edwards  <pme@gcc.gnu.org>

* docs/doxygen/run_doxygen:  Remove template parameter names from
"Compound List" summary page.  Reformat.
* docs/html/documentation.html:  XHTML fixes.

From-SVN: r55543

22 years agocpplib.c (do_sccs): Handle #sccs on all systems.
Neil Booth [Wed, 17 Jul 2002 21:31:42 +0000 (21:31 +0000)]
cpplib.c (do_sccs): Handle #sccs on all systems.

* cpplib.c (do_sccs): Handle #sccs on all systems.
* system.h (SCCS_DIRECTIVE): Poison.
* config/darwin.h, config/freebsd.h, config/netbsd.h,
config/ptx4.h, config/svr3.h, config/svr4.h, config/alpha/elf.h,
config/arm/linux-elf.h, config/c4x/c4x.h, config/d30v/d30v.h,
config/i370/i370.h, config/i386/gas.h, config/i386/sco5.h,
config/i960/i960.h, config/m68hc11/m68hc11.h, config/m68k/3b1.h,
config/m68k/3b1g.h, config/m68k/crds.h, config/m68k/mot3300.h,
config/m68k/pbb.h, config/m88k/m88k.h, config/mips/mips.h,
config/sparc/pbd.h, config/stormy16/stormy16.h, config/vax/vaxv.h:
Remove all references to SCCS_DIRECTIVE.
* doc/cpp.texi, doc/tm.texi: Update.

From-SVN: r55542

22 years agoregrename.c (maybe_mode_change): New function.
J"orn Rennecke [Wed, 17 Jul 2002 18:24:46 +0000 (18:24 +0000)]
regrename.c (maybe_mode_change): New function.

* regrename.c (maybe_mode_change): New function.
(find_oldest_value_reg, copyprop_hardreg_forward_1): Use it.

From-SVN: r55541

22 years agoi386.c (ix86_expand_int_movcc): In the general case suppress addition when either...
Rodney Brown [Wed, 17 Jul 2002 18:09:56 +0000 (18:09 +0000)]
i386.c (ix86_expand_int_movcc): In the general case suppress addition when either ct or cf are zero.

        * config/i386/i386.c (ix86_expand_int_movcc): In the general case
        suppress addition when either ct or cf are zero.

From-SVN: r55540

22 years agore PR rtl-optimization/6713 (Regression wrt 3.0.4: g++ -O2 leads to seg fault at...
Eric Botcazou [Wed, 17 Jul 2002 18:00:35 +0000 (18:00 +0000)]
re PR rtl-optimization/6713 (Regression wrt 3.0.4: g++ -O2 leads to seg fault at run time)

 PR optimization/6713
 * loop.c (loop_givs_rescan): Explicitly delete the insn that
 sets a non-replaceable giv after issuing the new one.

Co-Authored-By: Glen Nakamura <glen@imodulo.com>
From-SVN: r55539

22 years agoloop-2e.x: Let the testcase XFAIL for all x86 processors.
Eric Botcazou [Wed, 17 Jul 2002 17:55:23 +0000 (17:55 +0000)]
loop-2e.x: Let the testcase XFAIL for all x86 processors.

 * gcc.c-torture/execute/loop-2e.x: Let the testcase
 XFAIL for all x86 processors.

From-SVN: r55538

22 years ago20010122-1.x: Do not test with -fomit-frame-pointer.
Ian Dall [Wed, 17 Jul 2002 17:54:16 +0000 (17:54 +0000)]
20010122-1.x: Do not test with -fomit-frame-pointer.

        * gcc.c-torture/execute/20010122-1.x: Do not test with
        -fomit-frame-pointer.

From-SVN: r55537

22 years agocppexp.c (cpp_interpret_integer, [...]): Clarify and correct use of "bool" variables.
Neil Booth [Wed, 17 Jul 2002 17:27:14 +0000 (17:27 +0000)]
cppexp.c (cpp_interpret_integer, [...]): Clarify and correct use of "bool" variables.

* cppexp.c (cpp_interpret_integer, append_digit, parse_defined,
eval_token): Clarify and correct use of "bool" variables.
* cpplib.h (struct cpp_options): Similarly.
* cppmacro.c (parse_params, _cpp_save_parameter): Ditto.
* cpptrad.c (recursive_macro): Similarly.

From-SVN: r55536

22 years agomangle.c (write_unqualified_name): Handle template parm subtitution.
Jason Merrill [Wed, 17 Jul 2002 16:43:42 +0000 (12:43 -0400)]
mangle.c (write_unqualified_name): Handle template parm subtitution.

* mangle.c (write_unqualified_name): Handle template parm
subtitution.
* class.c (build_base_field): Set DECL_PACKED.
(layout_class_type): Don't use tail padding of PODs.

From-SVN: r55535

22 years agoFix file name.
Joern Rennecke [Wed, 17 Jul 2002 16:10:43 +0000 (17:10 +0100)]
Fix file name.

From-SVN: r55534

22 years agolib1funcs.asm (udivsi3_i4): Implement SHcompact version in SHmedia code.
J"orn Rennecke [Wed, 17 Jul 2002 16:09:43 +0000 (16:09 +0000)]
lib1funcs.asm (udivsi3_i4): Implement SHcompact version in SHmedia code.

* lib1funcs.asm (udivsi3_i4): Implement SHcompact version in
SHmedia code.

From-SVN: r55533

22 years ago* sh.md (cmpgtudi_media): Remove spurious @.
J"orn Rennecke [Wed, 17 Jul 2002 16:06:18 +0000 (16:06 +0000)]
* sh.md (cmpgtudi_media): Remove spurious @.

From-SVN: r55532

22 years agolib1funcs.asm (FMOVD_WORKS): Don't define for little endian.
J"orn Rennecke [Wed, 17 Jul 2002 16:02:53 +0000 (16:02 +0000)]
lib1funcs.asm (FMOVD_WORKS): Don't define for little endian.

* config/sh/lib1funcs.asm (FMOVD_WORKS): Don't define for little endian.
* sh.h (OVERRIDE_OPTIONS): Don't set FMOVD_BIT for little endian.

From-SVN: r55531

22 years agolib1funcs.asm (init_trampoline): New entry point.
J"orn Rennecke [Wed, 17 Jul 2002 15:43:18 +0000 (15:43 +0000)]
lib1funcs.asm (init_trampoline): New entry point.

* config/sh/lib1funcs.asm (init_trampoline): New entry point.
* sh-protos.h (sh_initialize_trampoline): Declare.
* sh.c (sh_initialize_trampoline): New function.
* sh.h (TRAMPOLINE_SIZE): Only 24 for TARGET_SHMEDIA32.
(TRAMPOLINE_ALIGNMENT): Need cache-line alignment for TARGET_SHMEDIA.
(INITIALIZE_TRAMPOLINE): Call sh_initialize_trampoline.
(TRAMPOLINE_ADJUST_ADDRESS): Not needed for SHcompact.
* sh.md (initialize_trampoline, double_shori): New patterns.
(initialize_trampoline_compact): Likewise.
(shmedia32_initialize_trampoline_big): Remove.
(shmedia32_initialize_trampoline_little): Likewise.

From-SVN: r55529

22 years agosh-protos.h (binary_float_operator): Remove declaration.
J"orn Rennecke [Wed, 17 Jul 2002 15:15:04 +0000 (15:15 +0000)]
sh-protos.h (binary_float_operator): Remove declaration.

* sh-protos.h (binary_float_operator): Remove declaration.
(sh_expand_unop_v2sf, sh_expand_binop_v2sf): Declare.
* sh.c (print_operand, case 'N'): Check against CONST0_RTX.
(unary_float_operator, sh_expand_unop_v2sf): New functions.
(sh_expand_binop_v2sf): Likewise.
(zero_vec_operand): Delete.
(SH_BLTIN_UDI): New builtin shared signature define.  Renumbered
all non-shared ones.
(bdesc): Change all the mextr builtins to use SH_BLTIN_UDI.
Enable nsb and byterev.
* sh.h (CONDITIONAL_REGISTER_USAGE): Initialize DF_HI_REGS.
(HARD_REGNO_MODE_OK): Allow TImode in fp regs.  Allow V2SFmode
in general regs.
(enum reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS): Add DF_HI_REGS.
(SECONDARY_OUTPUT_RELOAD_CLASS): Likewise.  Remove clause for
immediate operands.
(SECONDARY_INPUT_RELOAD_CLASS): Add clause for immediate operands.
Add DF_HI_REGS.
(CLASS_CANNOT_CHANGE_MODE, CLASS_CANNOT_CHANGE_MODE_P): Allow
lowpart fp regs - only for big endian for now.
(LEGITIMATE_CONSTANT_P): Don't allow non-zero float vectors
when FPU is in use.
(EXTRA_CONTRAINT_U): Check against CONST0_RTX.
(LOAD_EXTEND_OP): NIL for SImode.
(REGISTER_MOVE_COST): Add DF_HI_REGS.  Const for moves between
general and fp registers is 4.
PREDICATE_CODES: Amend binary_float_operator entry.
Remove zero_vec_operand.  Add unary_float_operator.
* sh.md (udivsi3_i4_media): Use truncate instead of paradoxical
subreg SET_DEST.
(truncdisi2, truncdihi2, movv2sf): Allow memory destinations.
(truncdiqi2): Do sign extension.
(movsi_media, movdi_media): Allow to use r63 to an fp register.
(movdf_media, movsf_media): Likewise.
(movv2sf_i, movv2sf_i+1): Don't use f{ld,st}.p or SUBREGS.
Collapse to one define_insn_and_split.  Allow immediate sources.
(addv2sf3, subv2sf3, mulv2sf3, divv2sf3): New patterns.
(movv4sf_i): Allow immediate sources.  Use simplify_gen_subreg.
(movv4sf): Allow immediate sources.
(movsf_media_nofpu+1): Don't split moves to FP registers.
(unary_sf_op, binary_sf_op, mshflo_w_x, concat_v2sf): New patterns.
(movv8qi_i+3): Check against CONST0_RTX.
(mextr1, mextr2. mextr3. mextr4, mextr5, mextr6, mextr7): Use DImode
for input and output operands.  Fix argument 3 to gen_mextr_rl.
(mmul23_wl, mmul01_wl, mmulsum_wq_i): s/const_vector/parallel/
(msad_ubq_i, mshf4_b, mshf0_b, mshf4_l, mshf0_l, mshf4_w): Likewise.
(mshf0_w, fipr, ftrv): Likewise.
(mshfhi_l_di): Now insn_and_split.  Can handle FP regs.

From-SVN: r55528

22 years agoPR c++/2862, c++/2863
Kriang Lerdsuwanakij [Wed, 17 Jul 2002 14:17:21 +0000 (14:17 +0000)]
PR c++/2862, c++/2863

PR c++/2862, c++/2863
* pt.c (determine_specialization): Compare the length of
TYPE_ARG_TYPES.  Tidy.

* g++.dg/template/instantiate2.C: New test.
* g++.dg/template/spec4.C: New test.

From-SVN: r55527

22 years agore PR c++/3797 (gcc 3.0 fails to emit explicit specialization of a template member)
Kriang Lerdsuwanakij [Wed, 17 Jul 2002 14:07:42 +0000 (14:07 +0000)]
re PR c++/3797 (gcc 3.0 fails to emit explicit specialization of a template member)

PR c++/3797
* decl.c (duplicate_decls): Don't propagate inlining parameters from
olddecl to newdecl when newdecl is a specialization of the
instantiation olddecl.

From-SVN: r55525

22 years agoPR c++/4802, c++/5387
Kriang Lerdsuwanakij [Wed, 17 Jul 2002 13:56:46 +0000 (13:56 +0000)]
PR c++/4802, c++/5387

PR c++/4802, c++/5387
* decl.c (make_typename_type): Use enforce_access.

* g++.dg/template/access2.C: New test.
* g++.dg/template/access3.C: New test.

From-SVN: r55517

22 years agore PR c++/7320 (g++ 3.2 relocation problem)
Scott Snyder [Wed, 17 Jul 2002 11:46:38 +0000 (11:46 +0000)]
re PR c++/7320 (g++ 3.2 relocation problem)

PR c++/7320
* rtti.c (get_tinfo_decl): Set DECL_COMDAT.

From-SVN: r55516

22 years agoFrom Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
Jeroen Dobbelaere [Wed, 17 Jul 2002 09:54:11 +0000 (09:54 +0000)]
From Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
* arm.h (ARM_NUM_INTS, ARM_NUM_REGS, ARM_NUM_REGS2): Renamed from
NUM_INTS, NUM_REGS and ARM_NUM_REGS2 respectively.  All uses changed.
* arm.c: Similarly.

From-SVN: r55515

22 years agomips-protos.h (mips_sign_extend): Declare.
Richard Sandiford [Wed, 17 Jul 2002 09:24:08 +0000 (09:24 +0000)]
mips-protos.h (mips_sign_extend): Declare.

* config/mips/mips-protos.h (mips_sign_extend): Declare.
* config/mips/mips.h (MASK_DEBUG_H, TARGET_DEBUG_H_MODE): Remove.
(TARGET_SWITCHES): Remove debugh.
(ISA_HAS_TRUNC_W): New macro.
(CLASS_CANNOT_CHANGE_MODE): Include FP_REGS if TARGET_FLOAT64.
(PREDICATE_CODES): Remove se_nonimmediate_operand.
* config/mips/mips.c (movdi_operand): Allow sign-extensions of
any SImode move_operand.
(se_nonimmediate_operand): Remove.
(mips_sign_extend): New.
(mips_move_2words): Use it for sign-extended source operands.
(override_options): Allow integers to be put into single FPRs.
(mips_secondary_reload_class): Handle integers in float registers.
* config/mips/mips.md (extendsidi2): Turn into a define_expand.
(fix_truncsfsi2, fix_truncdfsi2): Likewise.
(fix_truncdfsi2_insn, fix_truncdfsi2_macro): New.
(fix_truncsfsi2_insn, fix_truncsfsi2_macro): New.
(fix_truncdfdi2): Provide only a single alternative, in which the
integer is in a float register.  Depend on TARGET_FLOAT64 rather
than TARGET_64BIT.
(fix_truncsfdi2, floatdidf2, floatdisf2): Likewise.
(floatsidf2, floatsisf2): Likewise, but no TARGET_FLOAT64 dependency.
(movdi_internal2): Don't allow the source operand to be sign-extended.
Add alternatives for float registers.
(*movdi_internal2_extend): New.  Version of movdi_internal2 that
allows sign-extension.
(*movdi_internal2_mips16): Name the existing mips16 movdi pattern.
(movsi_internal2): Rename to movsi_internal.  Add alternatives for
float registers.  Remove TARGET_DEBUG_H_MODE test.
(movhi_internal1): Rename to movhi_internal.  Don't check
TARGET_DEBUG_H_MODE.  Fix transposed *d and *f source constraints.
(movqi_internal1): Rename to movqi_internal and remove
TARGET_DEBUG_H_MODE dependency.
(movsi_internal1, movhi_internal2, movqi_internal2): Remove.

From-SVN: r55514

22 years agoDaily bump.
GCC Administrator [Wed, 17 Jul 2002 07:17:26 +0000 (07:17 +0000)]
Daily bump.

From-SVN: r55513

22 years agoFix for i960 build failure reported by Andreas Jaeger.
Jim Wilson [Wed, 17 Jul 2002 03:03:40 +0000 (03:03 +0000)]
Fix for i960 build failure reported by Andreas Jaeger.

* toplev.c (lang_dependent_init): Create function context for
init_expr_once.

From-SVN: r55508

22 years agolinux.h (CRIS_LINK_SUBTARGET_SPEC): Don't --gc-sections if -r.
Hans-Peter Nilsson [Wed, 17 Jul 2002 01:49:50 +0000 (01:49 +0000)]
linux.h (CRIS_LINK_SUBTARGET_SPEC): Don't --gc-sections if -r.

* config/cris/linux.h (CRIS_LINK_SUBTARGET_SPEC): Don't
--gc-sections if -r.
* config/cris/cris.h: Ditto.

From-SVN: r55507

22 years agoi386.c (ix86_expand_int_movcc): In the case where the comparison directly gives a...
Rodney Brown [Wed, 17 Jul 2002 01:36:36 +0000 (01:36 +0000)]
i386.c (ix86_expand_int_movcc): In the case where the comparison directly gives a mask suppress addition when...

        * config/i386/i386.c (ix86_expand_int_movcc): In the case where
        the comparison directly gives a mask suppress addition when cf is
        zero by complementing the mask.

From-SVN: r55505

22 years agodarwin.h (ASM_OUTPUT_LABEL): Move to here from config/rs6000/darwin.h.
Stan Shebs [Wed, 17 Jul 2002 00:19:30 +0000 (00:19 +0000)]
darwin.h (ASM_OUTPUT_LABEL): Move to here from config/rs6000/darwin.h.

        * config/darwin.h (ASM_OUTPUT_LABEL): Move to here from
        config/rs6000/darwin.h.
        (ASM_OUTPUT_SKIP): Ditto.
        (TEXT_SECTION_ASM_OP): Ditto.
        (DATA_SECTION_ASM_OP): Ditto.
        (ASM_APP_ON): Define.
        (ASM_APP_OFF): Define.
        * config/rs6000/darwin.h (ASM_OUTPUT_LABEL, ASM_OUTPUT_SKIP,
        TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): Remove.

From-SVN: r55504

22 years agoconfig.guess: Update to 2002-07-09 version.
Chris Demetriou [Wed, 17 Jul 2002 00:14:49 +0000 (00:14 +0000)]
config.guess: Update to 2002-07-09 version.

2002-07-16  Chris Demetriou  <cgd@broadcom.com>

        * config.guess: Update to 2002-07-09 version.
        * config.sub: Update to 2002-07-03 version.

From-SVN: r55503

22 years agoMakefile.in: Delete references to enquire.
Nathanael Nerode [Wed, 17 Jul 2002 00:09:11 +0000 (00:09 +0000)]
Makefile.in: Delete references to enquire.

(gcc)
* Makefile.in: Delete references to enquire.
* enquire.c: Move to contrib.

(contrib)
* enquire.c: Move from gcc.

From-SVN: r55502

22 years agodarwin.c (func_name_maybe_scoped): Remove unused decl.
Stan Shebs [Tue, 16 Jul 2002 23:59:40 +0000 (23:59 +0000)]
darwin.c (func_name_maybe_scoped): Remove unused decl.

        * darwin.c (func_name_maybe_scoped): Remove unused decl.
        (machopic_function_base_name): Declare result to be const.
        (machopic_non_lazy_ptr_name): Ditto.
        (machopic_stub_name): Ditto.
        * darwin-protos.h: Ditto for the prototypes.

From-SVN: r55501

22 years ago* m68hc11.c (m68hc11_reorg): Do not rebuild CFG.
Jan Hubicka [Tue, 16 Jul 2002 22:23:59 +0000 (00:23 +0200)]
* m68hc11.c (m68hc11_reorg): Do not rebuild CFG.

From-SVN: r55500

22 years agoWed Jul 17 00:20:48 CEST 2002 Jan Hubicka <jh@suse.cz>
Jan Hubicka [Tue, 16 Jul 2002 22:21:34 +0000 (22:21 +0000)]
Wed Jul 17 00:20:48 CEST 2002  Jan Hubicka  <jh@suse.cz>

* i386.md (prefetch): Fix for 64bit mode.
(prefetch_sse_rex, prefetch_3dnow_rex): New patterns.

From-SVN: r55499

22 years agoi386.h (MACHINE_DEPENDENT_REORG): New macro.
Jan Hubicka [Tue, 16 Jul 2002 22:20:10 +0000 (00:20 +0200)]
i386.h (MACHINE_DEPENDENT_REORG): New macro.

* i386.h (MACHINE_DEPENDENT_REORG): New macro.
* i386.c (x86_machine_dependent_reorg): New function.
* i386-protos.h (x86_machine_dependent_reorg): Declare.

From-SVN: r55498

22 years agogcc_update (touch_files): Pass -s to ${MAKE}.
H.J. Lu [Tue, 16 Jul 2002 22:03:34 +0000 (22:03 +0000)]
gcc_update (touch_files): Pass -s to ${MAKE}.

2002-07-16  H.J. Lu <hjl@gnu.org>

* gcc_update (touch_files): Pass -s to ${MAKE}.

From-SVN: r55497

22 years agoStreamTokenizer.java (pushBack): Update documentation.
Mark Wielaard [Tue, 16 Jul 2002 21:08:25 +0000 (21:08 +0000)]
StreamTokenizer.java (pushBack): Update documentation.

* java/io/StreamTokenizer.java (pushBack): Update documentation.
(whitespaceChars): call resetChar().

From-SVN: r55496

22 years agobuiltins.c (std_expand_builtin_va_start): Remove unused first argument.
Zack Weinberg [Tue, 16 Jul 2002 20:59:08 +0000 (20:59 +0000)]
builtins.c (std_expand_builtin_va_start): Remove unused first argument.

* builtins.c (std_expand_builtin_va_start): Remove unused
first argument.
(expand_builtin_va_start): Call EXPAND_BUILTIN_VA_START and
std_expand_builtin_va_start with just two arguments.
* expr.h: Update prototypes.

* alpha-protos.h, alpha.h, alpha.c, arc-protos.h, arc.h,
arc.c, d30v-protos.h, d30v.h, d30v.c, i386-protos.h, i386.h,
i386.c, i960-protos.h, i960.h, i960.c, m88k-protos.h, m88k.h,
m88k.c, mips-protos.h, mips.h, mips.c, mn10300-protos.h,
mn10300.h, mn10300.c, pa-protos.h, pa.h, pa.c,
rs6000-protos.h, rs6000.h, rs6000.c, s390-protos.h, s390.h,
s390.c, sh-protos.h, sh.h, sh.c, sparc-protos.h, sparc.h,
sparc.c, stormy16-protos.h, stormy16.h, stormy16.c,
xtensa-protos.h, xtensa.h, xtensa.c:  Remove unused first
argument from all implementations of EXPAND_BUILTIN_VA_START
and all uses of std_expand_builtin_va_start.

From-SVN: r55495

22 years ago* regrename.c (copy_value): Don't record high part copies.
J"orn Rennecke [Tue, 16 Jul 2002 20:13:35 +0000 (20:13 +0000)]
* regrename.c (copy_value): Don't record high part copies.

From-SVN: r55493

22 years ago*** empty log message ***
Steve Ellcey [Tue, 16 Jul 2002 19:51:18 +0000 (19:51 +0000)]
*** empty log message ***

From-SVN: r55491

22 years agolong_double.h (FIXUNS_TRUNCTFDI2_LIBCALL): New define.
Steve Ellcey [Tue, 16 Jul 2002 19:39:27 +0000 (19:39 +0000)]
long_double.h (FIXUNS_TRUNCTFDI2_LIBCALL): New define.

* gcc/config/pa/long_double.h (FIXUNS_TRUNCTFDI2_LIBCALL): New define.
(fixunstfdi_libfunc): Change to use FIXUNS_TRUNCTFDI2_LIBCALL.
* gcc/config/pa/quadlib.c (_U_Qfcnvfxt_quad_to_udbl): New function.

From-SVN: r55490

22 years agoinvoke.texi (NS32K Options): Document -mieee-compare option
Ian Dall [Tue, 16 Jul 2002 17:46:33 +0000 (10:46 -0700)]
invoke.texi (NS32K Options): Document -mieee-compare option

        * doc/invoke.texi (NS32K Options): Document -mieee-compare option

        * config/ns32k/ns32k.md (addsi3, *frame_addr, *stack_addr): merge
        into addsi3 using register class "x" and "y".

        * config/ns32k/ns32k.md (*madddf, *maddsf, *msubdf, *msubsf):
        "earlyclobber" constraint modifier for some alternative.

        * config/ns32k/ns32k.md (tstdf, tstsf, cmpdf, cmpsf, blt, ble)
        (*ble, *blt): Flag to indicate bCOND and sCOND should check for
        unordered.
        config/ns32k/ns32k.h (CC_UNORD): define corresponding mask.

        * config/ns32k/ns32k.h (TARGET_IEEE_COMPARE, MASK_IEEE_COMPARE)
        (TARGET_SWITCHES): Add -mieee-compare option.
        (OVERRIDE_OPTIONS): 32332 is a subset of
        32532. Don't use IEEE_COMPARE -funsafe-math-optimizations.
        (TARGET_SWITCHES): Fix description of bitfield option.
        * config/ns32k/netbsd.h (TARGET_DEFAULT): Add
        -mieee-compare option. Remove 32332 flag.

From-SVN: r55489

22 years agoexplow.c (convert_memory_address): Remove special handling when POINTERS_EXTEND_UNSIG...
Steve Ellcey [Tue, 16 Jul 2002 16:07:13 +0000 (16:07 +0000)]
explow.c (convert_memory_address): Remove special handling when POINTERS_EXTEND_UNSIGNED < 0.

* gcc/explow.c (convert_memory_address): Remove special handling
when POINTERS_EXTEND_UNSIGNED < 0.
* gcc/config/ia64.md (movsi_symbolic): New instruction for ILP32
mode.
(movedi_symbolic): Fix typo.
(load_fptr): Remove mode restriction so it works for SI and DI.
(load_fptr_internal1): Ditto.
(load_gprel): Ditto.
(load_symptr_internal1): Ditto.
(call_pic): Ditto.
* gcc/config/ia64.c (call_operand): Modify mode check.
(ia64_expand_load_address): Handle DI and SI addresses and symbols.
(ia64_expand_move): Ditto.
(ia64_assemble_integer): Handle SImode function pointers.
(ia64_expand_fetch_and_op): Handle SImode mem addresses.
(ia64_expand_op_and_fetch): Ditto.
(ia64_expand_compare_and_swap): Ditto.
(ia64_expand_lock_test_and_set): Ditto.
(ia64_expand_lock_release): Ditto.

From-SVN: r55488

22 years agoFrom: Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
Jeroen Dobbelaere [Tue, 16 Jul 2002 15:39:22 +0000 (15:39 +0000)]
From: Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>

From: Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
* arm.c (emit_sfm): Don't set RTX_FRAME_RELATED_P on DWARF.

From: Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
 and Richard Earnshaw  <rearnsha@arm.com>
* arm.h (LEGITIMATE_PIC_OPERAND_P): Only test
CONSTANT_POOL_ADDRESS_P if a SYMBOL_REF.  Simplify logic.

Co-Authored-By: Richard Earnshaw <rearnsha@arm.com>
From-SVN: r55487

22 years agoarm.md (stack_tie): New insn.
Richard Earnshaw [Tue, 16 Jul 2002 15:14:22 +0000 (15:14 +0000)]
arm.md (stack_tie): New insn.

* arm.md (stack_tie): New insn.  Use an idiom that the alias code
understands to be a memory clobber.
* arm.c (arm_expand_prologue): Use it.

From-SVN: r55486

22 years agoAdd a new register allocator.
Michael Matz [Tue, 16 Jul 2002 13:36:30 +0000 (13:36 +0000)]
Add a new register allocator.

* ra.c: New file.
* ra.h: New file.
* ra-build.c: New file.
* ra-colorize.c: New file.
* ra-debug.c: New file.
* ra-rewrite.c: New file.

* Makefile.in (ra.o, ra-build.o, ra-colorize.o, ra-debug.o,
(ra-rewrite.o): New .o files for libbackend.a.
(GTFILES): Add basic-block.h.

* toplev.c (flag_new_regalloc): New.
(f_options): New option "new-ra".
(rest_of_compilation): Call initialize_uninitialized_subregs()
only for the old allocator.  If flag_new_regalloc is set, call
new allocator, instead of local_alloc(), global_alloc() and
friends.

* doc/invoke.texi: Document -fnew-ra.
* basic-block.h (FOR_ALL_BB): New.
* config/rs6000/rs6000.c (print_operand): Write small constants
as @l+80.

* df.c (read_modify_subreg_p): Narrow down cases for a rmw subreg.
(df_reg_table_realloc): Make size at least as large as max_reg_num().
(df_insn_table_realloc): Size argument now is absolute, not relative.
Changed all callers.

* gengtype.c (main): Add the pseudo-type "HARD_REG_SET".
* regclass.c (reg_scan_mark_refs): Ignore NULL rtx's.

2002-06-20  Michael Matz  <matz@suse.de>

* df.h (struct ref.id): Make unsigned.
* df.c (df_bb_reg_def_chain_create): Remove unsigned cast.

2002-06-13  Michael Matz  <matz@suse.de>

* df.h (DF_REF_MODE_CHANGE): New flag.
* df.c (df_def_record_1, df_uses_record): Set this flag for refs
involving subregs with invalid mode changes, when
CLASS_CANNOT_CHANGE_MODE is defined.

2002-05-07  Michael Matz  <matz@suse.de>

* reload1.c (fixup_abnormal_edges): Don't insert on NULL edge.

2002-05-03  Michael Matz  <matz@suse.de>

* sbitmap.c (sbitmap_difference): Accept sbitmaps of different size.

Sat Feb  2 18:58:07 2002  Denis Chertykov  <denisc@overta.ru>

* regclass.c (regclass): Work with all regs which have sets or
refs.
(reg_scan_mark_refs): Count regs inside (clobber ...).

2002-01-04  Michael Matz  <matzmich@cs.tu-berlin.de>

* df.c (df_ref_record): Correctly calculate SUBREGs of hardregs.
(df_bb_reg_def_chain_create, df_bb_reg_use_chain_create): Only
add new refs.
(df_bb_refs_update): Don't clear insns_modified here, ...
(df_analyse): ... but here.

* sbitmap.c (dump_sbitmap_file): New.
(debug_sbitmap): Use it.

* sbitmap.h (dump_sbitmap_file): Add prototype.

2001-08-07  Daniel Berlin  <dan@cgsoftware.com>

* df.c (df_insn_modify): Grow the UID table if necessary, rather
than assume all emits go through df_insns_modify.

2001-07-26  Daniel Berlin  <dan@cgsoftware.com>

* regclass.c (reg_scan_mark_refs): When we increase REG_N_SETS,
increase REG_N_REFS (like flow does), so that regclass doesn't
think a reg is useless, and thus, not calculate a class, when it
really should have.

2001-01-28  Daniel Berlin  <dberlin@redhat.com>

* sbitmap.h (EXECUTE_IF_SET_IN_SBITMAP_REV): New macro, needed for
dataflow analysis.

From-SVN: r55485

22 years agoFix ChangeLog date last entry
Hans-Peter Nilsson [Tue, 16 Jul 2002 11:31:24 +0000 (11:31 +0000)]
Fix ChangeLog date last entry

From-SVN: r55484

22 years agora-rewrite.c: #include reload.h, insn-config.h
Daniel Berlin [Tue, 16 Jul 2002 11:29:14 +0000 (11:29 +0000)]
ra-rewrite.c: #include reload.h, insn-config.h

* ra-rewrite.c: #include reload.h, insn-config.h
* ra-build.c: #include reload.h
* Makefile.in: Update ra-rewrite.o, ra-build.o dependencies to
depend on reload.h, insn-config.h.

From-SVN: r55483

22 years agoexpr.c (emit_move_insn_1): Handle arbitrary moves that are the same size as a word.
J"orn Rennecke [Tue, 16 Jul 2002 10:59:15 +0000 (10:59 +0000)]
expr.c (emit_move_insn_1): Handle arbitrary moves that are the same size as a word.

* expr.c (emit_move_insn_1): Handle arbitrary moves that are
the same size as a word.

* regrename.c (find_oldest_value_reg): Take WORDS_BIG_ENDIAN /
BYTES_BIG_ENDIAN into account.

From-SVN: r55482

22 years agoi386.md (prefetch): Fix for 64bit mode.
Jan Hubicka [Tue, 16 Jul 2002 10:24:11 +0000 (12:24 +0200)]
i386.md (prefetch): Fix for 64bit mode.

* i386.md (prefetch): Fix for 64bit mode.
(prefetch_sse_rex, prefetch_3dnow_rex): New patterns.

* i386.md (movss, movsd): Use xorps/xorpd for Athlon.

From-SVN: r55481

22 years agonew (set_new_handler): Declare to not throw any exceptions.
Andreas Schwab [Tue, 16 Jul 2002 08:28:40 +0000 (08:28 +0000)]
new (set_new_handler): Declare to not throw any exceptions.

* libsupc++/new (set_new_handler): Declare to not throw any
exceptions.
* libsupc++/new_handler.cc (set_new_handler): Likewise.

From-SVN: r55480

22 years agoDaily bump.
GCC Administrator [Tue, 16 Jul 2002 07:16:50 +0000 (07:16 +0000)]
Daily bump.

From-SVN: r55479

22 years ago* hard-reg-set.h (TEST_HARD_REG_BIT): Return 1 if the bit is set.
Marek Michalkiewicz [Tue, 16 Jul 2002 05:54:07 +0000 (07:54 +0200)]
* hard-reg-set.h (TEST_HARD_REG_BIT): Return 1 if the bit is set.

From-SVN: r55474

22 years agovarargs.h: Replace with stub which issues #error.
Zack Weinberg [Tue, 16 Jul 2002 02:16:47 +0000 (02:16 +0000)]
varargs.h: Replace with stub which issues #error.

* ginclude/varargs.h: Replace with stub which issues #error.
* ginclude/stdarg.h: __builtin_stdarg_start is renamed
__builtin_va_start.

* builtins.def (BUILT_IN_VARARGS_START): Delete.
(BUILT_IN_VA_START): New.
* builtins.c (expand_builtin_va_start): Eliminate first
argument and code to implement pre-ISO varargs.
(std_expand_builtin_va_start): Ignore first argument; it is
always 1.
(expand_builtin): Handle BUILT_IN_VA_START and
BUILT_IN_STDARG_START identically.  Delete
BUILT_IN_VARARGS_START case.

* function.c (assign_parms): Delete hide_last_arg and all
its uses.
(mark_varargs): Delete function.
* function.h (struct function): Delete 'varargs' bit.
(current_function_varargs): Delete macro.
* tree.h: Don't declare mark_varargs.

* c-decl.c (c_function_varargs, c_mark_varargs): Delete.
(c_expand_body): Don't call mark_varargs.
* c-objc-common.c: Handle BUILT_IN_VA_START and
BUILT_IN_STDARG_START identically.  Delete
BUILT_IN_VARARGS_START case.
* c-tree.h: Don't declare c_mark_varargs.
* c-parse.in: Remove grammar rules for '&...' (which has been
commented out since before 2.7.2) and for '...' in K+R
argument declarations.

* builtins.c, function.c, integrate.c, sibcall.c,
config/alpha/unicosmk.h, config/arc/arc.c, config/arc/arc.h,
config/avr/avr.c, config/cris/cris.c, config/fr30/fr30.c,
config/i960/i960.c, config/i960/i960.md, config/m32r/m32r.c,
config/m32r/m32r.h, config/m88k/m88k.c, config/m88k/m88k.h,
config/mips/mips.c, config/mmix/mmix.c, config/mmix/mmix.h,
config/mn10300/mn10300.c, config/pa/som.h, config/s390/s390.c,
config/sh/sh.c, config/sh/sh.h, config/sparc/sparc.h,
config/stormy16/stormy16.c: Delete all references to
current_function_varargs, and code predicated on that flag.

* config/alpha/alpha.c (alpha_va_start),
config/arc/arc.c (arc_va_start),
config/i386/i386.c (ix86_va_start),
config/mips/mips.c (mips_va_start),
config/mn10300/mn10300.c (mn10300_va_start),
config/rs6000/rs6000.c (rs6000_va_start),
config/s390/s390.c (s390_va_start),
config/sh/sh.c (sh_va_start),
Ignore first argument; it is always 1.

* config/c4x/c4x-protos.h, config/c4x/c4x.c: Delete c4x_va_start.
* config/ia64/ia64-protos.h, config/ia64/ia64.c: Delete ia64_va_start.
* config/m68hc11/m68hc11-protos.h, config/m68hc11/m68hc11.c:
Delete m68hc11_va_start.
* config/c4x/c4x.h, config/ia64/ia64.h, config/m68hc11/m68hc11.h:
No need to define EXPAND_BUILTIN_VA_START.

* doc/invoke.texi, doc/sourcebuild.texi, doc/tm.texi,
doc/trouble.texi: Remove references to GCC-provided <varargs.h>.

testsuite:
* c-torture/execute/991216-3.c, c-torture/execute/strct-varg-1.c,
c-torture/execute/va-arg-7.c, c-torture/execute/va-arg-8.c,
c-torture/execute/va-arg-15.c, c-torture/execute/va-arg-16.c,
c-torture/execute/va-arg-17.c, c-torture/execute/va-arg-19.c:
Convert to use <stdarg.h>.
* c-torture/execute/va-arg-3.c, c-torture/execute/va-arg-3.x:
Delete.
* gcc.dg/va-arg-2.c: New.
* lib/gcc.exp, lib/objc.exp: Remove code to set -DNO_VARARGS.

From-SVN: r55472

22 years agoMakefile.am (bits_headers): Remove slice.h
Gabriel Dos Reis [Tue, 16 Jul 2002 00:19:18 +0000 (00:19 +0000)]
Makefile.am (bits_headers): Remove slice.h

* include/Makefile.am (bits_headers): Remove slice.h
* include/Makefile.in: Regenerate.
* include/bits/slice.h (slice): move to include/bits/slice_array.h
* include/bits/slice.h Remove.
* include/std/std_valarray.h: Don't #include bits/slice.h anymore.
* include/bits/slice_array.h: Comply to official coding styles.
* testsuite/26_numerics/slice.cc: New test.
:w
:q

From-SVN: r55470

22 years agore PR middle-end/7153 (bad operands for 'movsbl' error)
Eric Botcazou [Mon, 15 Jul 2002 23:59:02 +0000 (23:59 +0000)]
re PR middle-end/7153 (bad operands for 'movsbl' error)

        PR optimization/7153
        * regmove.c (optimize_reg_copy_3): Don't optimize if the register
        dies in more than one insn.

From-SVN: r55468