reload1.c (choose_reload_regs): If using an equivalence from find_equiv_reg and reg_reloaded_valid is not set...
* reload1.c (choose_reload_regs): If using an equivalence from
find_equiv_reg and reg_reloaded_valid is not set for this register,
clear the associated spill_reg_store.
reload1.c (emit_reload_insns): If an output reload copies only to a secondary reload register...
* reload1.c (emit_reload_insns): If an output reload copies only
to a secondary reload register, indicate that the secondary reload
does the actual store.
Joel Sherrill [Thu, 9 Jul 1998 00:37:05 +0000 (00:37 +0000)]
rtemself.h: Updated to keep in sync with config/i386/linux.h.
* config/i386/rtemself.h: Updated to keep in sync with
config/i386/linux.h.
* configure.in: Added sh-rtemself.
* configure: Rebuilt.
* config/sh/rtems.h: Removed -D__ELF__ since it is now COFF.
* config/sh/rtemself.h: New file.
* config/rs6000/rtems.h: Defined STARTFILE_DEFAULT_SPEC.
Jeffrey A Law [Thu, 9 Jul 1998 00:27:21 +0000 (00:27 +0000)]
configure.in: Check if the assembler supports ".balign" and ".p2align" and define...
* configure.in: Check if the assembler supports ".balign" and
".p2align" and define HAVE_GAS_BALIGN_AND_P2ALIGN appropriately.
* acconfig.h (HAVE_GAS_BALIGN_AND_P2ALIGN): New tag.
* i386/gas.h (ASM_OUTPUT_ALIGN): If the assembler has support for
".balign" then use it.
Jeff Law [Wed, 8 Jul 1998 23:47:57 +0000 (17:47 -0600)]
Fix debugging of CHARACTER*(*), etc., which requires emitting debug info on types like `ftnlen':
Fix debugging of CHARACTER*(*), etc., which requires
emitting debug info on types like `ftnlen':
* com.c (ffecom_start_progunit_): Don't bother
resetting "invented" flag for identifier.
(ffecom_transform_equiv_): Don't bother zeroing
"ignored" flag for decl.
(pushdecl): No longer set "ignored", "used", or
"suppressed debug" flags for decls having "invented"
identifiers.
Fix debugging of CHARACTER*(*), etc., which requires emitting debug info on types like `ftnlen':
d
Fix debugging of CHARACTER*(*), etc., which requires
emitting debug info on types like `ftnlen':
* com.c (ffecom_start_progunit_): Don't bother
resetting "invented" flag for identifier.
(ffecom_transform_equiv_): Don't bother zeroing
"ignored" flag for decl.
(pushdecl): No longer set "ignored", "used", or
"suppressed debug" flags for decls having "invented"
identifiers.
Fix debugging of CHARACTER*(*), etc., which requires emitting debug info on types like `ftnlen':
�
Fix debugging of CHARACTER*(*), etc., which requires
emitting debug info on types like `ftnlen':
* com.c (ffecom_start_progunit_): Don't bother
resetting "invented" flag for identifier.
(ffecom_transform_equiv_): Don't bother zeroing
"ignored" flag for decl.
(pushdecl): No longer set "ignored", "used", or
"suppressed debug" flags for decls having "invented"
identifiers.
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.