Jeff Law [Sun, 18 Jan 1998 00:01:22 +0000 (17:01 -0700)]
emit_rtl.c (init_emit_once): Ensure that potential aliasing between frame_pointer_rtx...
* emit_rtl.c (init_emit_once): Ensure that potential aliasing
between frame_pointer_rtx, hard_frame_pointer_rtx, and
arg_pointer_rtx is respected in initialization.
(init_emit_once): Use gen_rtx_raw_REG() to create
return_address_pointer_rtx.
* rtl.h: Fix typo.
David S. Miller [Sat, 17 Jan 1998 23:08:03 +0000 (23:08 +0000)]
combine.c (force_to_mode, [...]): Correctly optimize constant offset computations from objects with known...
* combine.c (force_to_mode, nonzero_bits): Correctly optimize
constant offset computations from objects with known alignment in
the presence of STACK_BIAS.
David S. Miller [Sat, 17 Jan 1998 22:50:40 +0000 (22:50 +0000)]
varasm.c (immed_double_const): Add casts to HOST_WIDE_INT where necessary.
* varasm.c (immed_double_const): Add casts to HOST_WIDE_INT where
necessary.
(const_hash): Hash val is unsigned long.
(SYMHASH): Likewise.
* tree.c (TYPE_HASH): Type of hash val is unsigned long.
* print-tree.c (print_node_brief): HOST_PTR_PRINTF format wants a
char pointer, not HOST_WIDE_INT.
(print_node): Likewise. Also hash is unsigned long not
HOST_WIDE_INT.
* cse.c (canon_hash): Hash is unsigned long not HOST_WIDE_INT.
David S. Miller [Sat, 17 Jan 1998 22:39:10 +0000 (22:39 +0000)]
explow.c (optimize_save_area_alloca): New function for targets where SETJMP_VIA_SAVE_AREA is true.
* explow.c (optimize_save_area_alloca): New function for targets
where SETJMP_VIA_SAVE_AREA is true.
(allocate_dynamic_stack_space): On SETJMP_VIA_SAVE_AREA targets,
compute the amount of stack space needed should we find later that
setjmp is never called by this function, stuff rtl for this inside
a REG_NOTE of the final SET of stack_pointer_rtx.
* toplev.c (rest_of_compilation): If SETJMP_VIA_SAVE_AREA and
current_function_calls_alloca, call optimize_save_area_alloca.
CVS ----------------------------------------------------------------------
Mumit Khan [Sat, 17 Jan 1998 21:37:48 +0000 (21:37 +0000)]
configure.in (NON_UNIX_STDIO): Define if MINGW32.
* configure.in (NON_UNIX_STDIO): Define if MINGW32.
(NON_ANSI_RW_MODE): Do not define for CYGWIN32 or MINGW32.
* libI77/rawio.h: Don't providing conflicting declarations for
read() and write(). MINGW32 header files use "const" quals.
* libF77/s_paus.c: _WIN32 does not have pause().
Mumit Khan [Sat, 17 Jan 1998 21:33:56 +0000 (21:33 +0000)]
pexecute.c (pexecute): New function for mingw32.
* pexecute.c (pexecute): New function for mingw32. Supports pipes.
(pwait): New function for mingw32.
* gcc.c (execute): Mingw32 pexecute() supports pipes, but cygwin32
pipe support is broken for now.
Mumit Khan [Sat, 17 Jan 1998 21:30:39 +0000 (21:30 +0000)]
Add mingw32 support.
* pexecute.c (pexecute): New function for mingw32. Supports pipes.
(pwait): New function for mingw32.
* config.table (i[3456]86-*-mingw32*): Support for i386-mingw32.
* config/mt-mingw32: New file.
* xmalloc.c (first_break): Not used for mingw32.
(xmalloc_set_program_name): Don't use sbrk on mingw32.
(xmalloc): Likewise.
(xrealloc): Likewise.
Pieter Nagel [Sat, 17 Jan 1998 20:28:11 +0000 (22:28 +0200)]
Makefile.in (FLAGS_TO_PASS): Pass down gcc_include_dir and local_prefix to sub-make invocations.
Sat Jan 17 21:28:08 1998 Pieter Nagel <pnagel@epiuse.co.za>
* Makefile.in (FLAGS_TO_PASS): Pass down gcc_include_dir and
local_prefix to sub-make invocations.
Kaveh R. Ghazi [Sat, 17 Jan 1998 20:09:09 +0000 (20:09 +0000)]
gengenrtl.c (type_from_format): De-ANSIfy function signature.
* gengenrtl.c (type_from_format): De-ANSIfy function signature.
(accessor_from_format): Likewise.
(xmalloc): New function for use when linking with alloca.o.
Mumit Khan [Tue, 13 Jan 1998 20:58:47 +0000 (20:58 +0000)]
cygwin32.h (STRIP_NAME_ENCODING): Define for Win32 to strip off the trailing @[NUM] added by ENCODE_SECTION_INFO.
* i386/cygwin32.h (STRIP_NAME_ENCODING): Define for Win32 to strip
off the trailing @[NUM] added by ENCODE_SECTION_INFO.
Also update copyright forgotten in last change.
H.J. Lu [Tue, 13 Jan 1998 20:28:27 +0000 (20:28 +0000)]
configure.in (CHECK_SUBDIRS): Set to testsuite only if ${srcdir}/../gcc exists.
* configure.in (CHECK_SUBDIRS): Set to testsuite only if
${srcdir}/../gcc exists.
(configdirs): Include testsuite only if ${srcdir}/../gcc exists.
* tests/Makefile.in (check): Depend on $(CHECK).
* tests/configure.in (CHECK): Set to "check-iostream
check-stdio" if ${srcdir}/../../gcc doesn't exists.
H.J. Lu [Tue, 13 Jan 1998 20:24:06 +0000 (20:24 +0000)]
configure.in (configdirs): Include testsuite only if ${srcdir}/../gcc exists.
�
* configure.in (configdirs): Include testsuite only if
${srcdir}/../gcc exists.
* tests/configure.in (check): Set to ${CHECK} if
${srcdir}/../../gcc doesn't exists.
Jeff Law [Tue, 13 Jan 1998 20:24:04 +0000 (13:24 -0700)]
configure.in (configdirs): Include testsuite only if ${srcdir}/../gcc exists.
�
* configure.in (configdirs): Include testsuite only if
${srcdir}/../gcc exists.
* tests/configure.in (check): Set to ${CHECK} if
${srcdir}/../../gcc doesn't exists.
Mumit Khan [Mon, 12 Jan 1998 23:49:57 +0000 (23:49 +0000)]
mingw32.h (INCOMING_RETURN_ADDR_RTX): Delete.
* i386/mingw32.h (INCOMING_RETURN_ADDR_RTX): Delete. Use the value
of DWARF2_UNWIND_INFO, if any, from i386/cygwin32.h instead.
(STANDARD_INCLUDE_DIR): Change to /usr/local/i386-mingw32/include.
J"orn Rennecke [Sat, 10 Jan 1998 20:54:37 +0000 (20:54 +0000)]
regmove.c: New implementation of regmove pass.
* regmove.c: New implementation of regmove pass.
* local-alloc.c (optimize_reg_copy_1, optimize_reg_copy_2): Remove
decls, make them have external linkage. Return a value from
optimize_reg_copy_1.
* reload.h (count_occurrences): Add decl.
* reload1.c (count_occurrences): Delete decl, make it have external
linkage.
* rtl.h (optimize_reg_copy_1, optimize_reg_copy_2): Declare.
Co-Authored-By: Jeffrey A Law <law@cygnus.com>
From-SVN: r17316
Jason Merrill [Thu, 8 Jan 1998 00:29:08 +0000 (00:29 +0000)]
exception.cc (__eh_alloc, __eh_free): New fns.
* exception.cc (__eh_alloc, __eh_free): New fns.
(__cp_push_exception, __cp_pop_exception): Use them.
(__uncatch_exception): Call terminate here if no exception.
* except.c (build_terminate_handler): New fn.
(expand_start_catch_block): Use it.
(expand_exception_blocks): Likewise.
(alloc_eh_object): New fn.
(expand_throw): Use it. Protect exception init with terminate.
* typeck.c (build_modify_expr): Remove code that ignores trivial
methods.
Jeffrey A Law [Mon, 5 Jan 1998 10:45:59 +0000 (10:45 +0000)]
mips.c (mips_expand_prologue): Handle large frame with no outgoing arguments for mips16.
* mips.c (mips_expand_prologue): Handle large frame with no outgoing
arguments for mips16.
(mips_expand_epilogue): Pass "orig_tsize" to save_restore_insns.
Don't lose if tsize is zero after handling large stack for mips16.
* mips.md (return): For trivial return, return address is in $31.