Commit Graph

32162 Commits

Author SHA1 Message Date
Jeffrey A Law 05ef889761 cse.c (simplify_relational_operation): If MODE specifies a mode wider than HOST_WIDE_INT...
* cse.c (simplify_relational_operation): If MODE specifies a
        mode wider than HOST_WIDE_INT, then the high word of a CONST_INT
        is derived from the sign bit of the low word.

Brought over from r5900 branch.

From-SVN: r15454
1997-09-15 15:37:39 -06:00
Brendan Kehoe 1d77fa5397 except.c (find_exception_handler_labels): Use xmalloc instead of alloca...
* except.c (find_exception_handler_labels): Use xmalloc instead of
	alloca, since MAX_LABELNO - MIN_LABELNO can be more than 1 million
	in some cases.

From-SVN: r15452
1997-09-15 15:07:05 -04:00
Jeffrey A Law 8be52aaa68 Makefile.in: Various changes to build info files in the object tree rather than the source tree.
* Makefile.in: Various changes to build info files
        in the object tree rather than the source tree.

From-SVN: r15448
1997-09-14 21:04:48 -06:00
Jeff Law a3ee32467c Forgot to commit.
From-SVN: r15445
1997-09-14 14:09:02 -06:00
Jeffrey A Law 124da27518 regmove.c (regmove_optimize): If we end up moving the original insn due to lifetime overlaps...
* regmove.c (regmove_optimize): If we end up moving the
	original insn due to lifetime overlaps, make sure to move
	REG_NOTES too.
Fixes x86 (and maybe h8) failure.

From-SVN: r15435
1997-09-14 11:11:52 -06:00
Manfred Hollstein fca9d4b0d4 Patch from Manfred Hollstein, don't set execute bits when installing data files
* Makefile.in (INSTALL_{PROGRAM,DATA}): Use value found by configure.

From-SVN: r15431
1997-09-13 15:52:49 -07:00
Jeffrey A Law 326ee7a3fe haifa-sched.c (add_branch_dependences): Make each insn in a SCHED_GROUP_P block explicitly depend on the previous insn.
* haifa-sched.c (add_branch_dependences): Make each insn in
        a SCHED_GROUP_P block explicitly depend on the previous insn.
Fixes x86 abort.

From-SVN: r15430
1997-09-13 13:00:22 -06:00
Jim Wilson 5188d2b2fa Never set prefix=/usr by default.
* configure.in (native_prefix): Delete.
	(mips-dec-netbsd): Don't set prefix.
	(*linux*): Don't set prefix.

From-SVN: r15421
1997-09-11 17:51:01 -07:00
Fred Fish 70988851ef Patches from Fred Fish for systems with sys/varargs.h but not varargs.h.
* protoize.c: Include <varargs.h> only if HAVE_VARARGS_H is
	defined.  If not defined, include <sys/varargs.h> if
	HAVE_SYS_VARARGS_H is defined.
	* configure.in: Test for varargs.h and sys/varargs.h.
	* configure: Regenerate with autoconf.
	* config.in: Regenerate with autoheader.

From-SVN: r15420
1997-09-11 17:39:10 -07:00
Fred Fish 2e384318d3 From Fred Fish, fix BeOS (I assume) related problem with mixing char pointers.
* cpplib.c (quote_string): Cast first arg of sprintf call
	from "unsigned char *" to "char *".
	(output_line_command): Ditto.
	(macroexpand): Ditto.
	(do_line): Cast atoi arg from "unsigned char *" to "char *".

From-SVN: r15418
1997-09-11 15:51:33 -07:00
Jim Wilson ac64120eeb Add Fred Fish's LN/LN_S patch.
From-SVN: r15415
1997-09-11 13:39:08 -07:00
Jeffrey A Law 432438724e * loop.c (strength_reduce): Fix typo.
From-SVN: r15408
1997-09-11 11:08:01 -06:00
Jeff Law 0326887985 Back out Kenner's Makefile.in patch.
From-SVN: r15403
1997-09-10 22:18:16 -06:00
Jeffrey A Law f2e4e16f79 Bump for snapshot.
From-SVN: r15402
1997-09-10 22:11:01 -06:00
Jeffrey A Law 3fb2f40127 Makefile (compare): Exit with nonzero status if there are comparison failures.
* Makefile (compare): Exit with nonzero status if there
        are comparison failures.  Note which files failed the
        comparison test in .bad_compare.
For toplevel "make bootstrap".

From-SVN: r15400
1997-09-10 21:36:41 -06:00
Jeff Law 22cbb540d0 Remove last change. Not needed for egcs yet.
From-SVN: r15397
1997-09-10 21:01:15 -06:00
H.J. Lu d26cb66831 Patch from H.J. Lu for alpha-linux.
* config/alpha/elf.h (CPP_PREDEFINES): Remove -D__PIC__ -D__pic__.

From-SVN: r15394
1997-09-10 17:07:06 -07:00
Jim Wilson db87ec0b58 Clean up patches for delta88 nested function support.
* m88k/m88k.c (struct option): Rename to struct options.
	* m88k/dolph.h (INITIALIZE_TRAMPOLINE): Delete here.
	* m88k/sysv3.h (INITIALIZE_TRAMPOLINE): Delete ifdef and comments.
	* libgcc2.c (__enable_execute_stack): Check for __sysV88__ not
	__DOLPHIN__ or sysV88.

From-SVN: r15393
1997-09-10 16:34:58 -07:00
Richard Kenner dc3fce9020 Makefile.in (LN): Add new symbol.
* Makefile.in (LN): Add new symbol.
        (FLAGS_TO_PASS): Pass it down.
        (stage[1-4]-start): Use $(LN), not "ln -s".
Bring over from gcc2.

From-SVN: r15392
1997-09-10 16:14:29 -06:00
Jim Wilson 04395f964f Fix problem reported by chris@lslsun.epfl.ch (Christian Iseli)
Fix problem reported by chris@lslsun.epfl.ch (Christian Iseli)
	* emit-rtl.c (gen_lowpart_common): For a SUBREG, add in word when
	create new subreg.

From-SVN: r15391
1997-09-10 15:04:24 -07:00
Jeffrey A Law becdcf6da0 * config.sub: Accept 'amigados' for backward compatability.
From-SVN: r15389
1997-09-10 15:18:25 -06:00
Jim Wilson 3979dfb8b6 Install patch from H.J. Lu to make parallel make check work.
* Makefile.in (testsuite/site.exp): New target.
	(check-gcc, check-g++): Depend on testsuite/site.exp.
	Don't stop for failure.

From-SVN: r15269
1997-09-10 14:06:59 -07:00
Manfred Hollstein 9dfc6eba89 * m88k/sysv3.h (INITIALIZE_TRAMPOLINE) Define.
* libgcc2.c (__enable_execute_stack): Provide for sysV88 too.

From-SVN: r15256
1997-09-10 12:02:16 -06:00
Jeffrey A Law 0680d17043 * expr.c (emit_block_move): Always return a value.
From-SVN: r15252
1997-09-10 10:52:45 -06:00
Jeff Law b4d940a26d Add port done awhile ago for the ARC cpu.
* arc/arc.h: New file.
        * arc/arc.c: New file.
        * arc/arc.md: New file.
        * arc/initfini.c: New file.
        * arc/lib1funcs.asm: New file.
        * arc/t-arc: New file.
        * arc/xm-arc.h: New file.
        * ginclude/va-arc.h: New file.
        * ginclude/stdarg.h: Include va-arc.h ifdef __arc__.
        * ginclude/varargs.h: Likewise.
        * Makefile.in (USER_H): Add va-arc.h.
        * configure.in (arc-*-elf*): Recognize.
        * longlong.h: Add ARC support.
Mostly so I can test changes in snapshot scripts.

        * expr.c (clear_storage): Use CONST0_RTX instead of const0_rtx.
        when clearing non-BLKmode data.
Fixes sparc problem.

From-SVN: r15220
1997-09-10 01:50:16 -06:00
Manfred Hollstein 552592195e * xm-m88k.h (USG): Only define if it hasn't already been defined.
From-SVN: r15218
1997-09-10 00:37:46 -06:00
Manfred Hollstein ee2910692e * Makefile.in (clean): Delete libgcc1-test.
From-SVN: r15217
1997-09-10 00:32:10 -06:00
Jeff Law 102115816c Makefile.in (INSTALL): cd to $(srcdir) before running texinfo.
* Makefile.in (INSTALL): cd to $(srcdir) before running texinfo.
(Until we start building all this gunk in objdir...)

From-SVN: r15216
1997-09-10 00:29:35 -06:00
Stan Cox 48f0be1b36 m88k.c (m88k_expand_prologue): Set MEM_IN_STRUCT_P of va_list template.
* m88k.c (m88k_expand_prologue): Set MEM_IN_STRUCT_P of va_list
        template.

Also invoke.texi tweaks for v850.

From-SVN: r15215
1997-09-09 21:57:12 -06:00
Jeffrey A Law 8f3d79e05f * haifa-sched.c (print_value): Fix last change.
From-SVN: r15181
1997-09-09 09:12:06 -06:00
Nick Clifton 74aca74bc3 v850.h (ASM_SPEC): Pass on target processor.
* v850.h (ASM_SPEC): Pass on target processor.
        (CPP_PREDEFINES): Only define if not already specified.
        (TARGET_VERSION): Only define if not already specified.
        (MASK_CPU, MASK_V850, MASK_DEFAULT): Bits to specify target
        processor.
        (EXTRA_SWITCHES): Extra entries in the switches array.
        (TARGET_DEFAULT): Set default target processor.

From-SVN: r15180
1997-09-09 09:06:54 -06:00
Jim Wilson c0b041480e Fix m68k-hp-hpux8 problem for Manfred Holstein.
* m68k.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): In MOTOROLA
	cases, add %# and %/, and add : to make them into extended asms.

From-SVN: r15174
1997-09-08 18:34:17 -07:00
Weiwen Liu 52b7724b84 alias.c (init_alias_analysis): Clean up incompatible pointer type warning in bzero.
* alias.c (init_alias_analysis): Clean up incompatible pointer
        type warning in bzero.
        * regmove.c (regmove_optimize): Ditto.
        * haifa-sched.c (find_rgns): Ditto.

        * haifa-sched.c (print_value): Clean up ptr->int cast
        warnings.

From-SVN: r15169
1997-09-08 10:06:18 -06:00
Jason Merrill 267c09ab53 dwarf2out.c (dwarf2out_frame_debug): Assume that in a PARALLEL prologue insn, only the first elt is significant.
* dwarf2out.c (dwarf2out_frame_debug): Assume that in a PARALLEL
 	prologue insn, only the first elt is significant.
	(output_call_frame_info): For exception handling, always use 4-byte
 	fields as specified by the dwarf2 spec.
	Don't skip trivial FDEs.

From-SVN: r15154
1997-09-08 04:53:21 -04:00
Fred Fish 0c82f6bfae INSTALL: Change 'amigados' to 'amigaos' to match current usage.
* INSTALL: Change 'amigados' to 'amigaos' to match current usage.
	* install.texi (Configurations): Ditto.
	* config.sub: Ditto.

From-SVN: r15143
1997-09-07 23:17:48 -06:00
Weiwen Liu 1fed1f518f * Makefile.in (sdbout.o): Depend on insn-config.h.
From-SVN: r15141
1997-09-07 22:55:20 -06:00
Jim Wilson 239e68f69d Fix m68k-motorola-sysv (aka delta) build failure for Manfred Hollstein.
* m68k/m68k.h (TARGET_SWITCHES): For 68000, 68302, subtract MASK_68881.
	For 68303, 68332, cpu32, subtract MASK_68040_ONLY.

From-SVN: r15138
1997-09-07 18:51:02 -07:00
Jeff Law db7cafb0ad version.c: Bump for snapshot.
* version.c: Bump for snapshot.

        * expmed.c (expand_divmod): Make op1_is_pow2 depend on unsignedp
        for negative constants.  Promote EXACT_DIV_EXPR to TRUNC_DIV_EXPR
        when op1_is_pow2.

        * final.c (shorten_branches): During first pass, assume worst
        possible alignment for ADDR_VEC and ADDR_VEC_DIFF insns.

        * Makefile.in (distclean): Remove various things left around
        by running the testsuite.

From-SVN: r15136
1997-09-07 16:10:34 -06:00
Manfred Hollstein 7ed4611117 configure.in (out_file): Emit definition to config.status in order to have a defined value for...
* configure.in (out_file): Emit definition to config.status in order
        to have a defined value for configure.lang.
        * configure: Re-built.

From-SVN: r15134
1997-09-07 13:17:02 -06:00
Jan-Jaap van der Heijden e41cea70d8 configure.in: Make symlink to as-new rather than as.new.
* configure.in: Make symlink to as-new rather than as.new.  Similarly
        for ld-new.
        * configure: Rebuilt.

From-SVN: r15133
1997-09-07 10:00:47 -06:00
Jim Wilson 1aeb1f6f0b Fix undefined reference to constructor with -O3 -fprofile-arcs.
* profile.c (output_func_start_profiler): Set DECL_EXTERNAL to zero.

From-SVN: r15127
1997-09-05 16:59:43 -07:00
Christian Kuehnke 770a0113e6 sparc.md: Add ultrasparc scheduling support.
* sparc/sparc.md: Add ultrasparc scheduling support.
	* sparc/sparc.h (RTX_COSTS): For MULT give v9 a cost of 25 insns.

From-SVN: r15126
1997-09-05 23:17:19 +00:00
Jim Wilson 04940ba5b4 sdbout.c (plain_type_1, [...]): Verify that TYPE_DOMAIN has integer TYPE_{MAX,MIN}_VALUE before using them.
* sdbout.c (plain_type_1, case ARRAY_TYPE): Verify that TYPE_DOMAIN
        has integer TYPE_{MAX,MIN}_VALUE before using them.
Bring over from the FSF.

From-SVN: r15117
1997-09-05 14:06:11 -06:00
Philippe De Muyter f5ffa99918 integrate.c (save_for_inline_copying): Use 0, not NULL_PTR, as initial value for real_label_map.
* integrate.c (save_for_inline_copying): Use 0, not NULL_PTR,
        as initial value for real_label_map.
        (copy_for_inline): Likewise.
Brought over from the FSF.

From-SVN: r15116
1997-09-05 14:03:37 -06:00
J"orn Rennecke acceac1aea * sched.c (update_flow_info) When looking if to set found_split_dest
or found_orig_dest, look at all parts of a PARALLEL.
        * haifa-sched.c (update_flow_info): Likewise.

From-SVN: r15115
1997-09-05 13:36:35 -06:00
Jeffrey A Law f84271d99d v850: New directory for v850 port.
* v850: New directory for v850 port.
        * v850/lib1funcs.asm: New file.
        * t-v850, v850.c, v850.h, v850.md, xm-v850.h: New files.
        * ginclude/va-v850.h: New file.
        * varargs.h, stdarg.h: Include va-mn10200.h.
        * configure.in (mn10200-*-*): New target.
        * Makefile.in (USER_H): Add va-mn10200.h.

From-SVN: r15104
1997-09-05 11:43:51 -06:00
Jim Wilson 89cc6098e6 m68k.h (MACHINE_STATE_SAVE, [...]): Add __HPUX_ASM__ versions.
* m68k/m68k.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): Add
        __HPUX_ASM__ versions.
Fixes build problems for m68k-hp-hpux*

From-SVN: r15102
1997-09-05 09:36:39 -06:00
Jeffrey A Law c74f7db87d * install.sh: Delete duplicate install script.
From-SVN: r15100
1997-09-05 09:06:54 -06:00
Stan Cox 914ec131d6 reg-stack.c (subst_stack_regs): Pop the stack register for a computed goto which sets the same stack register.
* reg-stack.c (subst_stack_regs): Pop the stack register for a
        computed goto which sets the same stack register.

        * reg-stack.c (compare_for_stack_reg): Swap only if the source and
        destination are both on the regstack.
        (subst_stack_regs_pat): Put the destination at the top of the regstack.
Bring over regstack bugfixes from the FSF.

From-SVN: r15096
1997-09-04 23:14:46 -06:00
Jim Wilson d5d1738a3a Fix mips-sgi-irix5.2 eh25 g++ testsuite failure.
* mips.md (nonlocal_goto_receiver): Define.

From-SVN: r15091
1997-09-04 19:36:53 -07:00
Jim Wilson f4da78811e Fix another -fprofile-arcs bug from Joseph Myers <jsm28@cam.ac.uk>.
* profile.c (output_arc_profiler): Check next_insert_after for non
	NULL before deferencing it.

From-SVN: r15090
1997-09-04 19:17:56 -07:00
Jim Wilson c1090daa15 * i386/t-sol2 (TARGET_LIBGCC2_CFLAGS): Define to -fPIC.
From-SVN: r15088
1997-09-04 17:54:04 -06:00
Jeffrey A Law da594c9448 * i386.h (CPP_CPU_DEFAULT): Avoid using #elif.
From-SVN: r15083
1997-09-04 14:50:19 -06:00
Michael Meissner 3e28fe4442 For phases starting with flow, print basic block information when doing dumps
From-SVN: r15082
1997-09-04 19:15:50 +00:00
Jim Wilson 417b0fa211 Fix minor bug reported by Jan Hubicka.
* toplev.c (main): Change #elif to #else/#ifdef

From-SVN: r15081
1997-09-04 12:06:02 -07:00
Jim Wilson 7053ca7275 Fix minor bugs found by riscos build attempt.
* tlink.c: Include ctype.h.
	* ginclude/va-mips.h: Add _VA_MIPS_H_ENUM ifdef/define/endif.

From-SVN: r15080
1997-09-04 11:54:16 -07:00
Michael Meissner f05a8b2501 ChangeLog entry for last bitmap change.
From-SVN: r15079
1997-09-04 11:17:09 -06:00
Joel Sherrill 02d7a56981 * i960/i960.h: Added default for SUBTARGET_SWITCHES macro.
From-SVN: r15077
1997-09-04 09:59:54 -06:00
Jim Wilson 6030b6afe7 profile.c (output_arc_profiler): Verify next_insert_after is an INSN before and after skipping a stack pop.
* profile.c (output_arc_profiler): Verify next_insert_after is an
        INSN before and after skipping a stack pop.

From-SVN: r15076
1997-09-04 09:54:24 -06:00
J"orn Rennecke 04da53bd68 final.c (shorten_branches): Don't count the lengths of deleted instructions.
* final.c (shorten_branches): Don't count the lengths of deleted
        instructions.

From-SVN: r15074
1997-09-04 09:47:40 -06:00
Jeffrey A Law 780532a4c6 * version.c: Bump for snapshot.
From-SVN: r15072
1997-09-04 09:41:38 -06:00
Michael Meissner 22fa5b8add Add EXECUTE_IF_AND_IN_{BITMAP,REG_SET}, and bitmap_print
From-SVN: r15071
1997-09-04 15:12:20 +00:00
Jim Wilson fa8b602464 Fix H.J. Lu's alpha-linux aliasing bug.
* alias.c (true_dependence): Address with AND can alias scalars.
	(anti_dependence, output_dependence): Likewise.

From-SVN: r15063
1997-09-03 12:28:49 -07:00
Jim Wilson 57163df067 Fix minor alias typo found while working on H.J. Lu's alpha-linux alias bug.
* alias.c (true_dependence): Test x for BLKmode, in addition to mem.

From-SVN: r15061
1997-09-03 10:42:21 -07:00
Joel Sherrill 8aa4e786fb go32-rtems.h, [...] (subtarget_switches): Removed SUBTARGET_SWITCHES definitions.
* i386/go32-rtems.h, i386/rtems.h, i960/rtems.h, m68k/rtems.h,
          mips/rtems64.h, pa/rtems.h, rs6000/rtems.h, sh/rtems.h,
          sparc/rtems.h (subtarget_switches): Removed SUBTARGET_SWITCHES
          definitions.  Use -qrtems instead of -mrtems.

From-SVN: r15058
1997-09-03 09:42:45 -06:00
Robert Lipe feb211221a xm-sco5.h (sys_siglist): Define.
* xm-sco5.h (sys_siglist): Define.
        (SYS_SIGLIST_DECLARED): Likewise.
From Robert Lipe.

From-SVN: r15056
1997-09-03 09:04:27 -06:00
Jeffrey A Law 704af6a15f expr.c (convert_move): Handle truncation from TQFmode to QFmode.
* expr.c (convert_move): Handle truncation from TQFmode to QFmode.
From Christian Iseli.

From-SVN: r15054
1997-09-02 23:33:06 -06:00
Jeff Law f04e7122c8 Tweak.
From-SVN: r15053
1997-09-02 23:02:58 -06:00
Jeffrey A Law 068f1cb8d7 xm-svr4.h (SYS_SIGLIST_DECLARED): Define.
* xm-svr4.h (SYS_SIGLIST_DECLARED): Define.
        * xm-news.h (SYS_SIGLIST_DECLARED): Likewise.
        * gcc.texi: Note that if you define sys_siglist that you should
        also define SYS_SIGLIST_DECLARED.
autoconf doesn't handle finding sys_siglist under different names.

From-SVN: r15052
1997-09-02 22:39:26 -06:00
Torbjorn Granlund 127cd4056c except.c (eh_outer_context): Expand masking operation using expand_binop.
* except.c (eh_outer_context): Expand masking operation using
        expand_binop.
From tege.

From-SVN: r15046
1997-09-02 20:08:35 -06:00
Jim Wilson 8cf02b4799 Fix alpha-linux -mieee bug reported by H.J. Lu.
* alpha.md (floatdisf2-1): New pattern.

From-SVN: r15045
1997-09-02 18:27:01 -07:00
Jeffrey A Law 49dad301f0 mn10200.h (INITIALIZE_TRAMPOLINE): PC relative instructions are relative to the next instruction...
* mn10200.h (INITIALIZE_TRAMPOLINE): PC relative instructions
        are relative to the next instruction, not the current instruction.

From-SVN: r15043
1997-09-02 18:46:39 -06:00
Jim Wilson a172951945 Fix i386 code generation error reported by Mumit Khan.
* local-alloc.c (contains_replace_regs): New function.
	(update_equiv_regs): When adding a REG_EQUIV note for a set of a MEM,
	verify that there is no existing REG_EQUIV note, and add a call to
	contains_place_regs.

From-SVN: r15041
1997-09-02 14:40:31 -07:00
H.J. Lu 290c8b1fb1 Patch from H.J. Lu for alpha-linux port.
* config/alpha/elf.h (CPP_PREDEFINES): Add -D__PIC__ -D__pic__.
	(STARTFILE_SPEC): Always use crtbegin.o%s
	(ENDFILE_SPEC): Always use crtend.o%s.

From-SVN: r15036
1997-09-02 12:53:50 -07:00
Jim Wilson a6a503ed40 Fix alpha-linux core dump reported by H.J. Lu.
* alpha/alpha.h (PREFERRED_RELOAD_CLASS): Return NO_REGS if NO_REGS
	is passed in.
	* emit-rtl.c (gen_lowpart_common): Add code to convert CONST_INT to
	SFmode for 64 bit hosts.

From-SVN: r15035
1997-09-02 12:37:05 -07:00
Paul N. Hilfinger a94729bc72 fixincludes: Permits spaces between # and define.
* fixincludes: Permits spaces between # and define.  Discard C++
        comments in sys/pci.h on HP/UX 10.20.

From-SVN: r15034
1997-09-02 12:38:30 -06:00
Jeffrey A Law 2eddfed1f2 pa.c (restore_unscaled_index_insn_codes): New function.
* pa.c (restore_unscaled_index_insn_codes): New function.
        (record_unscaled_index_insn_codes): Likewise.
        (output_function_prologue): Call restore_unscaled_index_insn_codes.
        (output_function_epilogue): Free memory for unscaled_index_insn_codes.
        (pa_reorg): Call record_unscaled_index_insn_codes.

From-SVN: r15028
1997-09-01 23:33:19 -06:00
Jeffrey A Law c9e03727e0 version.c: Bump for snapshot.
* version.c: Bump for snapshot.
Preparing for next snapshot.

        * haifa-sched.c (move_insn): Handle notes correctly for insns
        with SCHED_GROUP_P set.
Should fix some x86 failures with haifa enabled.

From-SVN: r15027
1997-09-01 22:12:45 -06:00
H.J. Lu a5d6a95b99 Patch from H.J. Lu for minor alpha-linux problem.
* alpha/xm-linux.h (USE_BFD): Undef before define.

From-SVN: r15026
1997-09-01 17:00:55 -07:00
Jim Wilson bc4ddc77a0 Fix irix6 execute/921117-1.c c-torture failure.
* cse.c (cse_insn): Don't record BLKmode values.

From-SVN: r15024
1997-09-01 16:43:03 -07:00
Stephen Williams f3e0ca6c2d * i960.h (LINK_SPEC): Handle "-mjX" and "-mrp" switches.
From-SVN: r15013
1997-09-01 11:27:19 -06:00
Jeffrey A Law a63d08e606 cccp.c (sys_errlist): Remove special 4.4bsd declaration.
* cccp.c (sys_errlist): Remove special 4.4bsd declaration.
        * collect2.c (sys_errlist): Likewise.
        * cpplib.c (sys_errlist): Likewise.
        * gcc.c (sys_errlist): Likewise.
        * protoize (sys_errlist): Likewise.
        * configure.in: Check for strerror.
        * xm-freebsd.h (HAVE_STRERROR): Remove definition.
        * xm-gnu.h (HAVE_STRERROR): Likewise.
        * xm-linux.h (HAVE_STRERROR): Likewise.
        * xm-netbsd.h (HAVE_STRERROR): Likewise.
        * xm-bsd386.h (HAVE_STRERROR): Likewise.
        * xm-cygwin32.h (HAVE_STRERROR): Likewise.
        * xm-dos.h (HAVE_STRERROR): Likewise.
        * xm-mingw32.h (HAVE_STRERROR): Likewise.
        * xm-pa.h (HAVE_STRERROR): Likewise.
        * xm-papro.h (HAVE_STRERROR): Likewise.
        * xm-sysv4.h (HAVE_STRERROR): Likewise.
        * configure, config.in: Rebuilt.
Remove the need to define HAVE_STRERROR for each host port.

From-SVN: r15011
1997-09-01 11:02:53 -06:00
Jeffrey A Law db814993ae Makefile.in: Add several missing "else true" clauses.
* Makefile.in: Add several missing "else true" clauses.
Cater to broken "make" programs.

From-SVN: r15010
1997-09-01 10:08:40 -06:00
Jeffrey A Law e3512ac291 collect2.c: Change DONT_DECLARE_SYS_SIGLIST to SYS_SIGLIST_DECLARED.
* collect2.c: Change DONT_DECLARE_SYS_SIGLIST to SYS_SIGLIST_DECLARED.
        * mips-tfile.c: Likewise.
        * gcc.texi: DONT_DECLARE_SYS_SIGLIST: Remove docs.
        * xm-linux.h (DONT_DECLARE_SYS_SIGLIST): Delete definition.
        * xm-freebsd.h, xm-bsd386.h, xm-sysv4.h, xm-sol2.h: Likewise.
        * configure.in: Check for sys_siglist declaration.
        * configure, config.in: Rebuilt.

Fix conflicting sys_siglist decls once and for all.

From-SVN: r15007
1997-09-01 08:57:29 -06:00
Joel Sherrill 5d84b57e6f go32-rtems.h, [...] (subtarget_switches): Added -mrtems as a switch.
* i386/go32-rtems.h, i386/rtems.h, i960/rtems.h,
        m68k/rtems.h, mips/rtems64.h, pa/rtems.h, rs6000/rtems.h,
        sparc/rtems.h (subtarget_switches): Added -mrtems as a switch.
        * i960/i960.h: Added SUBTARGET_SWITCHES macro.
        * rs6000/sysv4.h (extra_subtarget_switches): Added new
        macro EXTRA_SUBTARGET_SWITCHES.
        * configure.in (sh*-*-rtems*): New target.
        * sh/rtems.h: New file.
        * sh/sh.h: Added SUBTARGET_SWITCHES macro.
        * configure: Rebuilt.

From-SVN: r15006
1997-09-01 08:14:30 -06:00
Jim Wilson 2599dcc74a Fix alpha loop unrolling abort.
* unroll.c (calculate_giv_inc): Handle increment with code PLUS.

From-SVN: r15004
1997-08-30 22:57:40 -07:00
David Edelsohn 3b7e5ef4c7 Pay DF fused add ops pay attention to -mno-fused-add
From-SVN: r15002
1997-08-30 14:55:17 +00:00
Jim Wilson 5cd5f4a7b2 Fix i386-pc-solaris2.5.1 _sys_siglistp redeclaration error.
* i386/xm-sysv4.h (DONT_DECLARE_SYS_SIGLIST): Define.

From-SVN: r15001
1997-08-29 19:21:34 -07:00
Jeffrey A Law 63e7fe9ba4 pa.md (reload_peepholes): Make sure operand is a REG before examining REGNO.
* pa.md (reload_peepholes): Make sure operand is a REG before
        examining REGNO.  Allow general registers too.
Fixes sporatic c-torture failure.

Remove last change to fold-const.c and c-decl.c

From-SVN: r15000
1997-08-29 16:14:07 -06:00
Jim Wilson eb7b11fd07 Fix C++ template instantiation back end core dump.
* varasm.c (mark_constants): Don't look inside CONST_DOUBLEs.

From-SVN: r14999
1997-08-29 11:52:51 -07:00
Philipp Thomas c760091a0c dwarfout2.c (build_abbrev_table): Use xrealloc, not xmalloc to reallocate abbrev_die_table.
* dwarfout2.c (build_abbrev_table): Use xrealloc, not xmalloc
        to reallocate abbrev_die_table.

From-SVN: r14997
1997-08-29 09:33:54 -06:00
Jim Wilson 575833386f m68k.md (iorsi_zexthi_ashl16): Disable.
* m68k/m68k.md (iorsi_zexthi_ashl16): Disable.
Fixes m68k codegen problem.

From-SVN: r14996
1997-08-29 09:19:58 -06:00
Andreas Schwab 4f91a0f87a * Makefile.in (config.status): Depend on version.c
From-SVN: r14995
1997-08-29 09:10:18 -06:00
Andreas Schwab eae4b97034 expr.h (insn_gen_function): Reenable prototype.
* expr.h (insn_gen_function): Reenable prototype.

	* expr.c (move_by_pieces_1, clear_by_pieces_1): Fix prototype of
	first parameter.

From-SVN: r14994
1997-08-29 09:02:03 -06:00
Jim Wilson 00fc09e149 Fix x86 libio -O2 miscompilation problem.
* i386.c (ix86_expand_epilogue): Emit blockage instruction when pic.

From-SVN: r14992
1997-08-28 13:04:19 -07:00
Jeffrey A Law 2601ebca41 version.c: Bump for latest snapshot.
* version.c: Bump for latest snapshot.

        * bc-optab.c: Conditionally include stdlib.h.
        (free): Provide a declaration if NEED_DECLARATION_FREE.
        * tree.c (free): Provide a declaration if NEED_DECLARATION_FREE.
        * rtl.h (free): Remove declaration.
        * tree.h (free): Remvoe declaration.

        * configure: Rebuilt.

From-SVN: r14989
1997-08-28 07:08:54 -06:00
Jeffrey A Law e5eb27e51f flags.h (flag_move_all_movables): Declare.
* flags.h (flag_move_all_movables): Declare.
        (flag_reduce_all_givs): Likewise.
        * loop.c (move_movables): Handle flag_move_all_movables.
        (strength_reduce): Handle flag_reduce_all_givs.
        * toplev.c (flag_move_all_movables): Define.
        (flag_reduce_all_givs): Likewise.
        (f_options): Add -fmove-all-movables and -freduce-all-givs.
        * invoke.texi: Document new options, including alias stuff that
        wasn't included last time.
Two of the "Tooning" options :-)

From-SVN: r14987
1997-08-27 21:35:22 -06:00
Bob Manson d995a6dc49 t-h8300: Use TARGET_LIBGCC2_CFLAGS instead of LIBGCC2_CFLAGS.
* t-h8300: Use TARGET_LIBGCC2_CFLAGS instead of LIBGCC2_CFLAGS.
        * t-mn10200: Ditto.
        * t-vxsparc: Ditto.
        * t-vxworks68: Ditto.
        * t-vxworks960: Ditto.
        * t-vx29k: Ditto.

From-SVN: r14984
1997-08-27 18:18:03 -06:00
Richard Henderson ba64ca335a Patch from Richard Henderson to fix alpha-linux alloca redefinition problems.
* alpha/xm-alpha.h (alloca): Define alloca to builtin_alloca for GNUC
	if not already defined, and USE_C_ALLOCA not defined.

From-SVN: r14977
1997-08-27 16:50:04 -07:00
Jim Wilson 7818d6fcb2 Make the gcc config.guess exec the toplevel config.guess.
Make the gcc config.guess exec the toplevel config.guess.  Update the toplevel
config.guess from the gcc config.guess.

From-SVN: r14976
1997-08-27 16:20:52 -07:00
Jim Wilson ca20876d33 alpha linux glibc2 patch from H.J. Lu
alpha linux glibc2 patch from H.J. Lu
	* config/alpha/elf.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1
	if USE_GNULIBC_1 is not defined.

From-SVN: r14975
1997-08-27 16:09:53 -07:00
Richard Henderson 704a63062f Patch from Richard Henderson to fix alpha-linux support.
* alpha/elf.h (LINK_SPEC): Conditionalize on USE_GNULIBC_1.
	* config.guess: Recognize alpha-linux-gnulibc1.
	* configure.in (alpha-*-linux-gnulibc1): New target.
	(alpha-*-linux-gnu*): Don't build crtbegin/end.

From-SVN: r14974
1997-08-27 16:02:19 -07:00
Jeffrey A Law f345de42fc reorg.c (dbr_schedule): Allow current_function_return_rtx to be something other than a REG.
* reorg.c (dbr_schedule): Allow current_function_return_rtx
        to be something other than a REG.
        * function.c (expand_function_end): Fix current_function_return_rtx
        if it was a pseudo.
Brought over from the fsf/devo.

From-SVN: r14972
1997-08-27 13:59:51 -06:00
Jim Wilson 67f68fd265 Fix newlib coldfire build failure.
* m68k.md (iorsi3_internal): Readd ! TARGET_5200 check lost in
	last change.

From-SVN: r14969
1997-08-27 11:54:11 -07:00
Doug Evans 3dedc65a1f c-decl.c (grokdeclarator): If array index or size calculations overflow, issue an error.
* c-decl.c (grokdeclarator): If array index or size calculations
        overflow, issue an error.
        * fold-const.c (int_const_binop): New static function.
        (const_binop, size_binop): Call it.
Brought over from the fsf.

From-SVN: r14967
1997-08-27 10:58:02 -06:00
Doug Evans 88016fb7ef loop.c (combine_movables): Earlier insns don't match later ones.
* loop.c (combine_movables): Earlier insns don't match later ones.
Brought over from the fsf.

From-SVN: r14966
1997-08-27 10:43:23 -06:00
H.J. Lu 33d2808ba7 Remove last change to alpha/linux.
Remove last change to alpha/linux.  It was incorrect according to Richard
Henderson.

From-SVN: r14964
1997-08-27 09:24:31 -06:00
H.J. Lu bba17b29e1 linux.h (CC1_SPEC): Define it only if not defined.
* config/linux.h (CC1_SPEC): Define it only if not defined.

        * config/m68k/linux.h (CC1_SPEC): Undefine it before include
        <linux.h>

        * config/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1 if
        USE_GNULIBC_1 is not defined.

        * config/alpha/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined
        as 1.
        * config/rs6000/linux.h (DEFAULT_VTABLE_THUNKS): Ditto.

        * config/sparc/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined
        as 1 if USE_GNULIBC_1 is not defined.
Linux patches from HJ.

From-SVN: r14960
1997-08-27 01:26:22 -06:00
Jeffrey A Law ed4044e070 t-freebsd (USER_H): Include EXTRA_HEADERS and LANG_EXTRA_HEADERS.
* t-freebsd (USER_H): Include EXTRA_HEADERS and LANG_EXTRA_HEADERS.
        * x-netbsd: Likewise
        * x-dgux (USER_H): Include EXTRA_HEADERS and LANG_EXTRA_HEADERS
        (INSTALL_HEADERS): Delete.
        * x-dguxbcs: Likewise.
        * x-hp3bsd44: Likewise
        * x-pa: Likewise.

From-SVN: r14959
1997-08-27 00:51:37 -06:00
Bernd Schmidt 47d3640028 i386.md (pop): pop increments the stack pointer.
* i386.md (pop): pop increments the stack pointer.
        (prologue_set_stack_ptr): New pattern.
        * i386.c (ix86_expand_prologue): Use prologue_set_stack_ptr
        instead of subsi3.
Fixes problem with scheduling on the x86.

From-SVN: r14956
1997-08-27 00:29:59 -06:00
Jim Wilson fc79eafee8 reload.c (find_reloads, case '0'): Reject matching a non-offsettable address where an offsettable address is required.
* reload.c (find_reloads, case '0'): Reject matching a non-offsettable
        address where an offsettable address is required.
Fixes 68k bootstrap problem.

From-SVN: r14948
1997-08-26 18:49:59 -06:00
Michael P. Hayes c5da853fcd loop.c (check_final_value): Don't miss a biv increment in a parallel.
* loop.c (check_final_value): Don't miss a biv increment in a
        parallel.

From-SVN: r14947
1997-08-26 18:44:25 -06:00
Jim Wilson d4ef15f2ca dwarfout.c (dwarfout_file_scope_decl, [...]): Check TYPE_DECL_IS_STUB instead of DECL_NAME.
* dwarfout.c (dwarfout_file_scope_decl, case TYPE_DECL): Check
        TYPE_DECL_IS_STUB instead of DECL_NAME.

From-SVN: r14944
1997-08-26 12:05:23 -06:00
Jim Wilson 10549cbd85 H.J. Lu's SMP patch.
From-SVN: r14924
1997-08-25 23:36:27 -07:00
Jeffrey A Law 484df98895 haifa-sched.c (find_pre_sched_live): Remove #if 0 code.
* haifa-sched.c (find_pre_sched_live): Remove #if 0 code.
        (find_post_sched_live): Likewise.
Just cleaning up.

        * haifa-sched.c (schedule_block): Remove old code to get arguments
        from hard regs into pseudos early.
Avoids problems with bogus REG_LOOP_BEGIN notes causing aborts during
and after register allocation.

From-SVN: r14918
1997-08-25 13:15:01 -06:00
Jeff Law 39dfb55a01 version.c: Bump for new snapshot.
* version.c: Bump for new snapshot.

        * local-alloc.c (update_equiv_regs): All the target to reject
        promotion of some REG_EQUAL to REG_EQUIV notes.
        * pa.h (DONT_RECORD_EQUIVALENCE): Define.
Fixes some c-torture failures, also improves generated code.

        * pa.c (secondary_reload_class): (mem (mem ... )) does not need
        secondary reloads.
Fixes 094.fpppp/twldrv.f abort.

        * pa.c (hppa_builtin_saveregs): Emit a blockage insn after the
        store of the argument registers.
Fixes c-torture failure.

        * fold-const.c (multiple_of_p): New function.
        (fold): Turn some cases of *_DIV_EXPR into EXACT_DIV_EXPR.
One of the performance patches from the g77 folks.

From-SVN: r14915
1997-08-25 09:00:44 -06:00
Jeffrey A Law d78778ebf9 expr.h (insn_gen_function): Temporarily remove prototype.
* expr.h (insn_gen_function): Temporarily remove prototype.
This one has to wait until more prototyped stuff is done.

From-SVN: r14914
1997-08-25 01:48:35 -06:00
Jim Wilson feb9ea1a1f Fix solaris2 (without GNU install installed) install failure.
* Makefile.in (install-info): Don't cd into srcdir.  Add srcdir to
	filenames.  Use sed to extract base filename for install.

From-SVN: r14910
1997-08-24 17:25:22 -07:00
John F. Carr b6ffe60242 unroll.c (find_splittable_givs): Only share if two givs have the same add and multiply values.
* unroll.c (find_splittable_givs): Only share if two givs have the
        same add and multiply values.
Fixes some testsuite failures on the x86.

From-SVN: r14908
1997-08-23 17:25:05 -06:00
Jim Wilson 2ebfd23067 Fix typos in m68k configuration files.
* m68k/next.h (GO_IF_INDEXABLE_BASE): Fix typo in undef.
	* m68k/m68kemb.h (LIB_SPEC): Add missing comment end before it.

From-SVN: r14902
1997-08-23 14:41:33 -07:00
Jeffrey A Law 251ffdee0e pa.c (pa_reorg): Always put begin_brtab and end_brtab insns around branch tables.
* pa.c (pa_reorg): Always put begin_brtab and end_brtab insns
        around branch tables.
        * pa.md (begin_brtab, end_brtab): Only emit the .begin_brtab
        and .end_brtab directives if TARGET_GAS.
Should fix bootstrap problem with PA port when not using gas.

From-SVN: r14899
1997-08-23 00:19:56 -06:00
Jim Wilson 2731427487 Fix m68k-next-nextstep3 stage2 enquire compilation hang reported by Moene.
* alias.c (true_dependence): Pass x_addr not x to varies.

From-SVN: r14898
1997-08-22 21:39:31 -07:00
Jim Wilson 19372aa112 Fix AIX build problem when IBM cc is used.
* acconfig.h (NEED_DECLARATION_CALLOC): Add.
	* configure.in: Add GCC_NEED_DECLARATION call for calloc.
	* rs6000/xm-rs6000.h (malloc, realloc, calloc, free): Delete
	declarations.
	* config.in, configure: Regenerate.

From-SVN: r14896
1997-08-22 14:39:10 -07:00
John F. Carr 2a2c8203b6 alias.c (find_base_value): Improve handling of PLUS, MINUS, and LO_SUM.
* alias.c (find_base_value): Improve handling of PLUS, MINUS, and
        LO_SUM.
        (record_set): Handle LO_SUM like PLUS.
        (init_alias_analysis): When following chains of base addresses,
        do not stop on reaching a hard register.
Updates from jfc.

From-SVN: r14888
1997-08-22 00:39:29 -06:00
Jeff Law d80357b704 Tweak.
From-SVN: r14886
1997-08-21 20:16:20 -06:00
Jim Wilson b4f32d7b12 Fix alpha OSF 1.x/2.x/3.x build problems.
* alpha.h (ARCH_ASM_FILE_START): Define.
	(ASM_FILE_START): Use ARCH_ASM_FILE_START.
	* osf12.h, osf2or3.h (ARCH_ASM_FILE_START): Redefine to null string.

From-SVN: r14884
1997-08-21 17:47:59 -07:00
Jeffrey A Law f1e182826e Bump version # for new snapshot.
From-SVN: r14874
1997-08-21 14:46:15 -06:00
Jeffrey A Law ca363bb6c1 * Makefile.in (install-common): Put gcov comment at start of line.
From-SVN: r14871
1997-08-21 10:23:22 -06:00
Jeffrey A Law 7557aa9871 alias.c (init_alias_analysis): When simplifying the reg_base_value array, simplify entries for hard registers too.
* alias.c (init_alias_analysis): When simplifying the reg_base_value
        array, simplify entries for hard registers too.
From jfc.  Fixes c-torture failure on the PA.

From-SVN: r14869
1997-08-20 22:48:46 -06:00
Jim Wilson 2dcfcb5604 Change gcc3 to egcs.
From-SVN: r14866
1997-08-20 16:17:46 -07:00
Dave Love c34e3ae410 Patch from Dave Love.
* dwarf2.h (enum dwarf_call_frame_info): Remove trailing comma from
	list.

From-SVN: r14862
1997-08-20 12:37:49 -07:00
Jim Wilson e3eef942f2 stmt.c (start_cleanup_deferal, [...]): Test block_stack before dereferencing it.
* stmt.c (start_cleanup_deferal, end_cleanup_deferal): Test
	block_stack before dereferencing it.

From-SVN: r14861
1997-08-20 12:30:36 -07:00
Michael Meissner 246853b927 Work with haifa renaming get_issue_rate -> ISSUE_RATE
From-SVN: r14858
1997-08-20 19:08:56 +00:00
Jason Merrill 04f4195145 * cplus-dem.c: Add 'extern' to prepends_underscore.
From-SVN: r14856
1997-08-19 20:12:54 -04:00
Jeffrey A Law 62d65906d6 haifa-sched.c (ISSUE_RATE): Renamed from MACHINE_issue_rate.
* haifa-sched.c (ISSUE_RATE): Renamed from MACHINE_issue_rate.
        (get_issue_rate): Delete.
        * pa.h (ISSUE_RATE): Define.

From-SVN: r14851
1997-08-19 15:22:04 -06:00
Jeffrey A Law 2da05a5bb8 configure.in: Turn on haifa by default for the PA.
* configure.in: Turn on haifa by default for the PA.
        * configure: Rebuilt.
        * pa.c (override_options): Accept -mschedule=7200 option.
        (pa_adjust_cost): No longer need to scale costs for newer
        processors.
        * pa.h (enum processor_type): Add PROCESSOR_7200.
        * pa.md: Revamp scheduling parameters to work better with
        haifa.  Add scheduling parameters for the 7200.

From-SVN: r14850
1997-08-19 15:09:22 -06:00
Jeffrey A Law 4f64eacaee haifa-sched.c (move_insn): Reemit notes for SCHED_GROUP_P insns too.
* haifa-sched.c (move_insn): Reemit notes for SCHED_GROUP_P
        insns too.
        (schedule_block): When adjusting basic_block_{head,end}, account
        for movement of SCHED_GROUP_P insns too.

        * haifa-sched.c (debug_dependencies): Fix thinko.

From-SVN: r14849
1997-08-19 12:02:21 -06:00
Jeff Law 6182283505 haifa-sched.c: Make lots of variable static.
* haifa-sched.c: Make lots of variable static.
Just cleaning stuff up.

From-SVN: r14848
1997-08-19 10:15:54 -06:00
Jim Wilson a94ce33311 reload.c (find_reloads): Add code to convert RELOAD_FOR_OPADDR_ADDR reloads to...
* reload.c (find_reloads): Add code to convert RELOAD_FOR_OPADDR_ADDR
        reloads to RELOAD_FOR_OPERAND_ADDRESS reloads.
        * reload1.c: Undo bugfix from Aug 11.
Back out "simple" patch for PA reload bug and install the one accepted
by the FSF.

From-SVN: r14847
1997-08-19 10:04:22 -06:00
H.J. Lu e9576d2c22 expr.h, real.h: Finish prototyping.
* expr.h, real.h: Finish prototyping.
Some of hj's prototyping stuff after minor formatting fixes.

From-SVN: r14846
1997-08-19 09:51:10 -06:00
Jeffrey A Law e933cbe007 Makefile.in (EXPECT, [...]): Define.
* Makefile.in (EXPECT, RUNTEST, RUNTESTFLAGS): Define.
        (site.exp, check, check-g++, check-gcc): New targets.
For dejagnu.

From-SVN: r14845
1997-08-19 09:36:20 -06:00
Jeff Law 45832e2182 Take out __EGCS__ and __EGCS_MINOR__.
From-SVN: r14839
1997-08-18 21:42:44 -06:00
Mike Meissner f24b370adf Fix --with-cpu=xxx
From-SVN: r14837
1997-08-18 22:03:38 +00:00
Jim Wilson 1c4c585118 * Makefile.in (stmp-multilib-sub): Fix typo in last change.
From-SVN: r14834
1997-08-18 13:51:37 -07:00
Manfred Hollstein 71abb5679c Makefile.in (sub-makes): Pass the current value of LANGUAGES down to sub-makes to avoid building more...
* Makefile.in (sub-makes): Pass the current value of LANGUAGES down
        to sub-makes to avoid building more passes than the user might have
        requested on the command line.
From Manfred Hollstein.

From-SVN: r14825
1997-08-17 17:48:47 -06:00
Dave Love 6042434abc configure.in: Expurgate `broken_install' (install is autoconfed).
* configure.in: Expurgate `broken_install' (install is
        autoconfed).

        * configure.lang: Substitute autoconfed ${INSTALL} (not currently
        relevant).
From Dave love.

From-SVN: r14823
1997-08-17 15:41:59 -06:00
Jeffrey A Law 094420edc0 gcc.c (default_compilers): Add __EGCS__ and __EGCS_MINOR__ predefines.
* gcc.c (default_compilers): Add __EGCS__ and __EGCS_MINOR__
        predefines.

From-SVN: r14822
1997-08-17 15:15:15 -06:00
Jeffrey A Law 38ea060fa7 loop.c (is_power_of_2, [...]): Delete unused functions and declarations.
* loop.c (is_power_of_2, is_conditional_branch): Delete unused
        functions and declarations.
        (analyze_loop_iterations): Use condjump_p.
        (insert_bct): Likewise.  Use exact_log2.
Just cleanup up some haifa code.

From-SVN: r14818
1997-08-16 01:09:42 -06:00
Jeffrey A Law f187056f8a haifa-sched.c (find_post_sched_live): Call FREE_REG_SET as needed.
* haifa-sched.c (find_post_sched_live): Call FREE_REG_SET as needed.
        (schedule_region): Likewise.
        (schedule_insns): Likewise.
To avoid leaking memory.

        * PROJECTS: Update with Haifa stuff.

From-SVN: r14817
1997-08-15 23:49:38 -06:00
Jeffrey A Law 0945e93725 loop.c (is_conditional_branch): Make definition match declaration.
* loop.c (is_conditional_branch): Make definition match declaration.
Found by the sunos compiler

From-SVN: r14815
1997-08-15 14:50:04 -06:00
Jeffrey A Law 11c21791a4 Tweak again.
From-SVN: r14814
1997-08-15 14:38:11 -06:00
Jeffrey A Law 96e87e3e2a Make version # egcs-3.0.0 since we need to make sure the version#s
in the built-in defines are > 2.7.

From-SVN: r14813
1997-08-15 14:26:03 -06:00
Jeffrey A Law 9af0625405 version.c: Change the version string to look like...
* version.c: Change the version string to look like:
        egcs-1.0.0 970814 (gcc2-970802 experimental).

        * gcc.c: Take out experimental snapshot warning message.

From-SVN: r14811
1997-08-15 12:50:36 -06:00
Michael Meissner ebc25a17d4 Use rtl macros for names of NOTEs.
From-SVN: r14810
1997-08-15 17:48:56 +00:00
Doug Evans 992d1248f5 configure.in (haifa configury): Fix typo.
* configure.in (haifa configury): Fix typo.
	* configure: Regenerate.

From-SVN: r14783
1997-08-13 08:04:44 +00:00
Jeffrey A Law 7bb6fbd1c6 version.c: Bump version to "gcc-3.0.0 970802 experimental".
* version.c: Bump version to "gcc-3.0.0 970802 experimental".

        * gcc.info*: Rebuilt.

        * COPYING.g77, README.g77: New files.
        * real.c (ereal_unto_float, ereal_unto_double): New functions.
        * real.h (ereal_unto_float, ereal_unto_double): Declare them.
        (REAL_VALUE_UNTO_TARGET_DOUBLE, REAL_VALUE_UNTO_TARGET_SINGLE): Define.
Get g77 to work with gcc3.

From-SVN: r14776
1997-08-12 11:13:25 -06:00
Jeff Law 9f31cf0d42 Remove gratuitous changes from the alias analysis patches.
From-SVN: r14771
1997-08-11 22:12:04 -06:00
Jeffrey A Law 8c660648ca * Integrate Haifa instruction scheduler.
* Integrate regmove pass.
See ChangeLog for deatils.

From-SVN: r14770
1997-08-11 22:07:19 -06:00
Jeffrey A Law aa32d84158 * Integrate tlink patch from jason@cygnus.com
* gcc.c (SWITCH_TAKES_ARG): Add 'V', 'B' and 'b'.
        (process_command): Increment n_switches for them.  Don't discard
        their args.  Validate them.
        (main): Escape " marks when creating COLLECT_GCC_OPTIONS.
        From Rohan Lenard.
        (process_command): Set include_prefixes from COMPILER_PATH.
        (main): Set COLLECT_GCC_OPTIONS sooner.
        * confiugre.in: Link ../ld/ld.new to collect-ld rather than real-ld.
        * tlink.c, hash.c, hash.h: New files.
        * Makefile.in (USE_COLLECT2): Always use collect2.
        (collect2): Depend on and link in hash.o and tlink.o.
        (tlink.o, hash.o): Add dependencies.

tlink patches from Jason.

From-SVN: r14769
1997-08-11 14:23:53 -06:00
Jeffrey A Law 9ae8ffe751 * Integrate alias analysis changes from jfc@mit.edu
* Makefile.in (OBJS): Add alias.o
        (alias.o): Add dependencies.
        * alias.c: New file.
        * sched.c: Remove alias analysis code.  It lives in alias.c now.
        (reg_last_uses_size): Declare.
        (sched_analyze_2): Add new arguments to true_dependence.
        (sched_analyze_insn): Use reg_last_uses_size instead of max_reg.
        (schedule_block): Initialize reg_last_uses_size.
        (schedule_insns): Always call init_alias_analysis.
        * calls.c (expand_call): Note calls to malloc, calloc, and realloc;
        mark return value from such functions as a pointer and keep track of
        them for alias analysis.  If a return value from a function is a
        pointer, mark it as such.
        * combine.c (distribute_notes): Handle REG_NOALIAS.
        * cse.c (struct write_data): Delete.  No longer needed.
        (invalidate): Don't call set_nonvarying_address_components anymore.
        Use true_dependence to decide if an entry should be removed from
        the hash table.
        (invalidate_memory): Remove WRITES argument, simplify appropriately.
        Fix all callers.
        (note_mem_written): Similarly for WRITE_PTR argument.
        (invalidate_from_clobbers): Similarly for W argument.
        (invalidate_for_call): Remove memory elements from the hash table.
        (refers_to_mem_p, cse_rtx_addr_varies_p): Deleted.
        (cse_rtx_varies_p): New function.  Derived from old
        cse_rtx_addr_varies_p.
        (cse_insn): Remove WRITES_MEMORY and INIT variables and all references.
        Don't call note_mem_written anymore.  Stack pushes invalidate the stack
        pointer if PUSH_ROUNDING is defined.  No longer need to call
        cse_rtx_addr_varies_p to decide if a MEM should be invalidated.
        (skipped_writes_memory): Remove variable.
        (invalidate_skipped_set): Simplify and wewrite to use invalidate_memory.
        (invalidate_skipped_block): Simplify for new alias analysis code.
        (cse_set_around_loop): Likewise.
        (cse_main): Call init_alias_analysis.
        * flags.h (flag_alias_check, flag_argument_noalias): Declare.
        * toplev.c (flag_alias_check, flag_argument_noalias): Define.
        (f_options): Add new alias checking arguments.
        (main): Set flag_alias_check when optimizing.
        * local_alloc (validate_equiv_mem_from_store): Add new arguments
        to true_dependence.
        (memref_referenced_p): Likewise.
        * loop.c (NUM_STORES): Increase to 30.
        (prescan_loop): Only non-constant calls set unknown_address_altered.
        (invariant_p): Add new arguments to true_dependence.
        (record_giv): Initialize unrolled and shared fields.
        (emit_iv_add_mult): Call record_base_value as needed.
        * loop.h (struct induction): Add unrolled and shared fields.
        * unroll.c  (unroll_loop): Call record_base_value as needed.
        (copy_loop_body): Likewise.
        (final_biv_value): Likewise.
        (final_giv_value): Likewise.
        (find_splittable_regs): Likewise.  Only create one new pseudo
        if we have multiple address GIVs that were combined with the same
        dst_reg GIV.  Note when a new register is created due to unrolling.
        * rtl.c (reg_note_name): Add REG_NOALIAS.
        * rtl.h (enum reg_note): Similarly.
        (rtx_varies_p, may_trap_p, side_effects_p): Declare.
        (volatile_refs_p, volatile_insn_p, remove_note): Likewise.
        (note_stores, refers_to_regno_p, reg_overlap_mentioned_p): Likewise.
        (true_dependence, read_dependence, anti_dependence): Likewise.
        (output_dependence, init_alias_analysis, end_alias_analysis): Likewise.
        (mark_user_reg, mark_reg_pointer): Likewise.
jfc's alias analysis code.

From-SVN: r14768
1997-08-11 14:07:24 -06:00
Jeff Law 5fa39bfeb7 * Integrate reload bugfix from Wilson which enables the PA port
to bootstrap again.
        * reload1.c (reload): Sum needs for both OPADDR_ADDR and and
        OPERAND_ADDRESS when computing how many registers an insn needs.
        (reload_reg_free_p): OPADDR_ADDR and OPERAND_ADDRESS reloads do
        conflict.
        (reload_reg_free_before_p): Treat OPERAND_ADDRESS reloads just like
        OPADDR_ADDR reload.
        (reload_reg_reaches_end_p): For RELOAD_FOR_OPADDR_ADDR insns, registers
        in reload_reg_use_in_op_addr do not reach the end.
        do not reach the end.
        (reloads_conflict): RELOAD_FOR_OPADDR_ADDR conflicts with
        RELOAD_FOR_OPERAND_ADDRESS.



Start a new ChangeLog for gcc3.

From-SVN: r14767
1997-08-11 13:31:10 -06:00
Jeff Law 861bb6c1b0 Initial revision
From-SVN: r14764
1997-08-11 09:56:58 -06:00