* 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.
From-SVN: r20983
* i386.c (ix86_epilogue): For pentium processors, try to deallocate
4 or 8 byte stacks with pop instructions instead of an add instruction.
From-SVN: r20979
* 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.
From-SVN: r20972
* 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
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.
From-SVN: r20955
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.
From-SVN: r20953
* 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}.
From-SVN: r20952