Jeffrey A Law [Wed, 8 Jul 1998 22:05:40 +0000 (22:05 +0000)]
pa.h (LEGITIMIZE_RELOAD_ADDRESS): Handle addresses created by LEGITIMIZE_RELOAD_ADDRESS.
* pa.h (LEGITIMIZE_RELOAD_ADDRESS): Handle addresses created by
LEGITIMIZE_RELOAD_ADDRESS.
* tm.texi (LEGITIMIZE_RELOAD_ADDRESS): Note that this macro must be
able to handle addresses created by previous invocations of the macro.
Robert Lipe [Wed, 8 Jul 1998 13:02:30 +0000 (13:02 +0000)]
Remove '#line' directives from file.
Remove '#line' directives from file. They were tormenting some Solaris
builds. Strangely, they were unnoticed on other hosts including linux/x86
and ix86-pc-sco3.2v5*.
* toplev.c (lang_options): Add -Wlong-long, -Wno-long-long
options.
* c-decl.c (warn_long_long): Define.
(c_decode_option): Parse -Wlong-long, -Wno-long-long options.
(grokdeclarator): Add flag `warn_long_long' as guard for
warning "ANSI C does not support `long long'".
* invoke.texi: Add description of options -Wlong-long,
-Wno-long-long.
* gcc.1: The same as above.
* cp-tree.h (warn_long_long): Define.
* decl.c (grokdeclarator): Add flag `warn_long_long' as guard for
warning "ANSI C++ does not support `long long'".
* decl2.c (warn_long_long): Define.
(lang_decode_option): Parse -Wlong-long, -Wno-long-long options.
* rtlanal.c (reg_overlap_mentioned_p): Handle STRICT_LOW_PART. If
either argument is CONSTANT_P, then return zero.
* reload.c (reg_overlap_mentioned_for_reload_p): Similarly.
Support for dllimport and dllexport attributes for i386-pe.
* tree.h (DECL_NON_ADDR_CONST_P): New accessor macro.
(struct tree_decl): Add non_addr_const_p field.
* tree.c (staticp): Use.
* i386/cygwin32.h (CPP_PREDEFINES): Map __declspec(x) to GCC
attributes.
(SUBTARGET_SWITCHES): Switches to turn on/off dllimport|export
attributes. Also accept -mwindows option.
(VALID_MACHINE_DECL_ATTRIBUTE): New macro.
(MERGE_MACHINE_DECL_ATTRIBUTE): New macro.
(REDO_SECTION_INFO_P): New macro.
(DRECTVE_SECTION_FUNCTION): New macro.
(drectve_section): Cover function to implement above.
(SWITCH_TO_SECTION_FUNCTION): New macro.
(switch_to_section): Covert function to implement above.
(EXTRA_SECTIONS): Add in_drectve.
(EXTRA_SECTION_FUNCTIONS): Add in_drectve and switch_to_section.
(ENCODE_SECTION_INFO): Delete old macro and redefine as a function.
(STRIP_NAME_ENCODING): Handle new attributes.
(ASM_OUTPUT_LABELREF): New macro.
(ASM_OUTPUT_FUNCTION_NAME): New macro.
(ASM_OUTPUT_COMMON): New macro.
(ASM_OUTPUT_DECLARE_OBJECT_NAME): New macro.
* i386/mingw32.h (CPP_PREDEFINES): Map __declspec(x) to GCC
attributes.
* i386/winnt.c (i386_pe_valid_decl_attribute_p): New function.
(i386_pe_merge_decl_attributes): New function.
(i386_pe_check_vtable_importexport): New function.
(i386_pe_dllexport_p): New function.
(i386_pe_dllimport_p): New function.
(i386_pe_dllexport_name_p): New function.
(i386_pe_dllimport_name_p): New function.
(i386_pe_mark_dllexport): New function.
(i386_pe_mark_dllimport): New function.
(i386_pe_encode_section_info): New function.
(i386_pe_unique_section): Strip encoding from name first.
print-rtl.c (print_rtx): Display the real-value equivalent of a const_double when easy.
* print-rtl.c (print_rtx): Display the real-value equivalent of
a const_double when easy.
* real.h (REAL_VALUE_TO_TARGET_SINGLE): Use a union to pun types.
Zero memory first for predictability.
(REAL_VALUE_TO_TARGET_DOUBLE): Likewise.
* varasm.c (immed_real_const_1): Notice width of H_W_I == double.
cpplib.c (cpp_options_init): Initialize cplusplus_comments to 1, matching July 18, 1995 change to cccp.c.
* cpplib.c (cpp_options_init): Initialize cplusplus_comments to 1,
matching July 18, 1995 change to cccp.c. If -traditional then
disable cplusplus_comments.
Co-Authored-By: Jeffrey A Law <law@cygnus.com>
From-SVN: r20960
Jeffrey A Law [Mon, 6 Jul 1998 20:33:33 +0000 (20:33 +0000)]
* Disable the following change from gcc2. Not appropriate for egcs:
Sun Jun 7 09:30:31 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* reload.c (find_reloads): Give preference to pseudo that was the
reloaded output of previous insn.
Redesign GCC_FUNC_PRINTF_PTR so that it doesn't define HOST_PTR_PRINTF directly.
Redesign GCC_FUNC_PRINTF_PTR so that it doesn't define HOST_PTR_PRINTF
directly. Instead, autoconf will only determine whether "%p" works and
its up to machmode.h to base its definition of HOST_PTR_PRINTF on that.
This ensures that machmode.h is always included to get the definition of
HOST_PTR_PRINTF for lossy hosts or cross compiles where "%p" is not
found.
* aclocal.m4 (GCC_FUNC_PRINTF_PTR): Don't define HOST_PTR_PRINTF.
Instead, define a new macro HAVE_PRINTF_PTR which only signifies
whether we have the %p format specifier or not.
* acconfig.h: Delete stub for HOST_PTR_PRINTF, add HAVE_PRINTF_PTR.
* machmode.h (HOST_PTR_PRINTF): When determining the definition,
check HAVE_PRINTF_PTR to see whether "%p" is okay.
* mips-tfile.c: Include machmode.h to get HOST_PTR_PRINTF.
* Makefile.in (mips-tfile.o): Depend on machmode.h.
Mark Mitchell [Mon, 6 Jul 1998 10:42:43 +0000 (10:42 +0000)]
jump.c (duplicate_loop_exit_test): Don't refuse to copy a section of code just because it contains...
* jump.c (duplicate_loop_exit_test): Don't refuse to copy a
section of code just because it contains
NOTE_INSN_BLOCK_{BEG,END}.
* stmt.c (expand_end_loop): Likewise. Also, don't refuse to
move CALL_INSNs or CODE_LABELs. When moving code, don't move
NOTE_INSN_BLOCK_{BEG,END}.
Dave Love [Mon, 6 Jul 1998 09:01:43 +0000 (09:01 +0000)]
[multiple changes]
1998-07-06 Dave Love <d.love@dl.ac.uk>
* libU77/Makefile.in (lib): Change variable lib to LIBS.
1998-07-06 Robert Lipe <robertl@dgii.com>
* libU77/configure.in: Look for -lsocket, add to LIBS if found.
* libU77/Makefile.in (lib): Use LIBS from above.
Dave Love [Mon, 6 Jul 1998 08:29:31 +0000 (08:29 +0000)]
intdoc.in: Add entry for DATE_AND_TIME.
1998-07-05 Dave Love <d.love@dl.ac.uk>
* intdoc.in: Add entry for DATE_AND_TIME.
* intrin.def: Add implementation for DATE_AND_TIME. Make second
and third args of SYSTEM_CLOCK optional.
* com.c (ffecom_expr_intrinsic_): New case for DATE_AND_TIME.
* com-rt.def (FFECOM_gfrtSYSTEM_CLOCK): Call G77_system_clock_0,
not system_clock_.
(FFECOM_gfrtDATE_AND_TIME): New DEFGFRT.
Jeffrey A Law [Sun, 5 Jul 1998 23:59:03 +0000 (23:59 +0000)]
cse.c (cse_insn): Second arg is an RTX now.
* cse.c (cse_insn): Second arg is an RTX now. Update all callers.
(cse_basic_block): Keep track of the current RETVAL insn for a
libcall instead of just noting that we're in a libcall.
David Edelsohn [Thu, 2 Jul 1998 11:53:24 +0000 (07:53 -0400)]
expr.h (STACK_SIZE_MODE): New macro.
* expr.h (STACK_SIZE_MODE): New macro.
* explow.c (allocate_dynamic_stack_space): Use it for
mode of allocate_stack pattern increment operand.
* tm.texi (STACK_SAVEAREA_MODE, STACK_SIZE_MODE): Document.
* md.texi (stack_save_block, ...): Reflect use of macro.
* rs6000.h (PROMOTE_MODE): Always promote to word_mode.
(PROMOTE_FUNCTION_ARGS): Define.
(PROMOTE_FUNCTION_RETURN): Define.
(FUNCTION_VALUE): Promote to word_mode if smaller.
Convert to gen_rtx_FOO.
* rs6000.md (call_indirect): Store doubleword in 64-bit mode.
Convert to gen_rtx_FOO.
Robert Lipe [Thu, 2 Jul 1998 08:13:44 +0000 (08:13 +0000)]
install.texi (sco3.2v5): Document new --with-gnu-as flag.
* install.texi (sco3.2v5): Document new --with-gnu-as flag.
* config/i386/sco5.h (JUMP_TABLES_IN_TEXT_SECTION): Defined as
in other targets.
(USE_GAS): Conditionalize away native assembler usage.
* config/i386/sco5gas.h: New file.
* config/i386/t-sco5gas: New file.
* configure.in (ix86-sco3.2v5*): Use new files if --with-gnu-as