Commit Graph

17683 Commits

Author SHA1 Message Date
Jeffrey A Law
b98b49ac72 rtlanal.c (reg_overlap_mentioned_p): Handle STRICT_LOW_PART.
* 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.

From-SVN: r21005
1998-07-07 19:58:58 -06:00
Jeffrey A Law
67a00b49d6 configure.in: Also look at $srcdir/gas/configure to find a gas version #.
* configure.in: Also look at $srcdir/gas/configure to find a
        gas version #.

From-SVN: r21004
1998-07-07 19:51:21 -06:00
Jeff Law
280831b064 Daily bump.
From-SVN: r21003
1998-07-07 18:45:02 -06:00
Carlo Wood
a596f4d7a2 * dsp16xx.h : Clean up of macro OPTIMIZATION_OPTIONS
From-SVN: r21002
1998-07-07 17:33:15 -06:00
Mumit Khan
c8d9f9657b cygwin32.h (ASM_DECLARE_FUNCTION_NAME): Merge duplicate definitions from last two patches.
* i386/cygwin32.h (ASM_DECLARE_FUNCTION_NAME): Merge duplicate
	definitions from last two patches.

From-SVN: r21001
1998-07-07 17:31:03 -06:00
Mumit Khan
43e26b301d cygwin32.h (ASM_DECLARE_FUNCTION_NAME): Merge duplicate definitions from last two patches.
* i386/cygwin32.h (ASM_DECLARE_FUNCTION_NAME): Merge duplicate
	definitions from last two patches.

From-SVN: r21000
1998-07-07 17:31:01 -06:00
J"orn Rennecke
3c785e47dc reload1.c (choose_reload_regs): Don't set reload_override_in if EQUIV is clobbered in INSN and the reload is...
* reload1.c (choose_reload_regs): Don't set reload_override_in
	if EQUIV is clobbered in INSN and the reload is done after INSN.

From-SVN: r20999
1998-07-07 16:08:34 +01:00
Richard Henderson
54303b5cb3 * gcc.c-torture/execute/bcp-1.c: New test.
From-SVN: r20998
1998-07-07 06:41:17 -07:00
J"orn Rennecke
41b083c42e expr.c (emit_queue): If emitting a SEQUENCE, set QUEUED_INSN to the first insn of the sequence.
* expr.c (emit_queue): If emitting a SEQUENCE, set QUEUED_INSN
	to the first insn of the sequence.

From-SVN: r20997
1998-07-07 14:26:49 +01:00
J"orn Rennecke
759bd8b73b * cse (cse_insn): Don't make change without validation.
From-SVN: r20996
1998-07-07 14:09:07 +01:00
Jason Merrill
8ea2460f6a oops
From-SVN: r20995
1998-07-07 09:07:27 -04:00
Jason Merrill
dc8263bc05 decl.c (xref_tag): Handle attributes between 'class' and name.
* decl.c (xref_tag): Handle attributes between 'class' and name.
	* parse.y (aggr): Likewise.
	* semantics.c (finish_class_definition): Likewise.
	* Makefile.in (EXPECTED): Adjust.
	* cp-tree.h: Declare flag_optional_diags and warn_multichar.
	* decl2.c: Define them.
	(lang_decode_option): Handle them.
	* lang-options.h: Add -foptional-diags.
	* class.c (finish_struct): Don't complain about multiple meanings of
	name if -fno-optional-diags.
	* decl.c (pushdecl_class_level): Likewise.
	* lex.c (real_yylex): Check warn_multichar.

From-SVN: r20994
1998-07-07 07:25:01 -04:00
Jeffrey A Law
c8fbcc35ae * gcc.c-torture/execute/980707-1.c: New test.
From-SVN: r20993
1998-07-07 04:50:43 -06:00
Jeffrey A Law
d76b9d0944 mn10200.md (various zero/sign extension patterns): zero and sign extensions which use "sub" clobber cc0.
* mn10200.md (various zero/sign extension patterns): zero and sign
        extensions which use "sub" clobber cc0.

From-SVN: r20992
1998-07-07 04:45:12 -06:00
Jeffrey A Law
cf9cf73e66 Bump for snapshot
From-SVN: r20990
1998-07-07 03:12:11 -06:00
Jeffrey A Law
29b1f8628f * print-rtl.c (print_rtx): Use REAL_VALUE_TYPE instead of "double".
From-SVN: r20989
1998-07-07 03:09:31 -06:00
Richard Henderson
61632854ea print-rtl.c (print_rtx): Only print fp values when REAL_VALUE_TYPE is a double.
* print-rtl.c (print_rtx): Only print fp values when REAL_VALUE_TYPE
        is a double.

From-SVN: r20988
1998-07-07 01:42:42 -07:00
Jeff Law
92ec03f59e Daily bump.
From-SVN: r20987
1998-07-06 18:45:03 -06:00
Jeffrey A Law
43396c9e21 Bump for snapshot
From-SVN: r20986
1998-07-06 18:32:01 -06:00
J"orn Rennecke
a5546290af reload.c (find_equiv_reg): When looking for stack pointer + const, make sure we don't use a stack adjust.
* reload.c (find_equiv_reg): When looking for stack pointer + const,
        make sure we don't use a stack adjust.

From-SVN: r20985
1998-07-06 18:19:56 -06:00
J"orn Rennecke
1b4d8b2b5c reload.c (find_equiv_reg): If need_stable_sp is set, check if stack pointer is changed directly.
* reload.c (find_equiv_reg): If need_stable_sp is set,
	check if stack pointer is changed directly.

From-SVN: r20984
1998-07-06 18:18:02 -06:00
Mumit Khan
27da1b4d5a 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.

From-SVN: r20983
1998-07-06 18:05:27 -06:00
Manfred Hollstein
bceb30e77b libgcc2.c (L_exit): Provide a fake for atexit on systems which define ON_EXIT but not HAVE_ATEXIT.
* libgcc2.c (L_exit): Provide a fake for atexit on systems which
        define ON_EXIT but not HAVE_ATEXIT.

From-SVN: r20982
1998-07-06 17:52:21 -06:00
Franz Sirl
7edf1e0416 * m68k.md (zero_extend QI to HI): Correctly handle TARGET_5200.
From-SVN: r20981
1998-07-06 17:47:09 -06:00
Ulrich Drepper
79325812b8 * i386.c: Remove random whitespace at end of lines.
From-SVN: r20980
1998-07-06 17:42:47 -06:00
Ulrich Drepper
3403c6ca8f i386.c (ix86_epilogue): For pentium processors...
* 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
1998-07-06 17:39:32 -06:00
Klaus Kaempf
eb04ab5a1a * alpha.c: Include tree.h before expr.h.
From-SVN: r20978
1998-07-06 17:32:38 -06:00
Jeff Law
9fa1246d49 cygwin32.h: Add some declaration of external functions.
X
	* i386/cygwin32.h: Add some declaration of external functions.
 	(ASM_DECLARE_FUNCTION_NAME): Define.
	(ASM_OUTPUT_EXTERNAL, ASM_OUTPUT_EXTERNAL_LIBCALL): Define.
	(ASM_FILE_END): Define.
	* i386/winnt.c (i386_pe_declare_function_type): New function.
	(struct extern_list, extern_head): Define.
	(i386_pe_record_external_function): New function.
	(i386_pe_asm_file_end): New function.

From-SVN: r20977
1998-07-06 17:03:03 -06:00
Ian Lance Taylor
672a233f2d cygwin32.h: Add some declaration of external functions.
�
	* i386/cygwin32.h: Add some declaration of external functions.
 	(ASM_DECLARE_FUNCTION_NAME): Define.
	(ASM_OUTPUT_EXTERNAL, ASM_OUTPUT_EXTERNAL_LIBCALL): Define.
	(ASM_FILE_END): Define.
	* i386/winnt.c (i386_pe_declare_function_type): New function.
	(struct extern_list, extern_head): Define.
	(i386_pe_record_external_function): New function.
	(i386_pe_asm_file_end): New function.

Co-Authored-By: Jeffrey A Law <law@cygnus.com>

From-SVN: r20976
1998-07-06 17:03:02 -06:00
J"orn Rennecke
b294ca3876 reload1.c (delete_dead_insn): Don't delete feeding insn if that insn has side effects.
* reload1.c (delete_dead_insn): Don't delete feeding insn
	if that insn has side effects.

From-SVN: r20975
1998-07-06 16:55:30 -06:00
J"orn Rennecke
6186ed06d2 flow.c (find_auto_inc): Clear UNCHANGING bit of register that is changed.
* flow.c (find_auto_inc): Clear UNCHANGING bit of register that is
        changed.

From-SVN: r20974
1998-07-06 16:53:34 -06:00
J"orn Rennecke
979e20e973 reload1.c (reload_reg_free_before_p): RELOAD_FOR_OPADDR_ADDR precedes RELOAD_FOR_OUTADDR_ADDRESS.
* reload1.c (reload_reg_free_before_p): RELOAD_FOR_OPADDR_ADDR
        precedes RELOAD_FOR_OUTADDR_ADDRESS.

From-SVN: r20973
1998-07-06 16:44:41 -06:00
Richard Henderson
800d5c9e17 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.

From-SVN: r20972
1998-07-06 16:40:02 -06:00
Jason Merrill
4051959be9 c-parse.in (struct_head, [...]): New nonterminals.
* c-parse.in (struct_head, union_head, enum_head): New nonterminals.
        (structsp): Use them.  Update files generated from c-parse.in.
        * extend.texi (Type Attributes): Document it.

From-SVN: r20971
1998-07-06 16:30:16 -06:00
Alasdair Baird
48d4389d55 * i386.c (is_fp_test): Fix thinko.
From-SVN: r20970
1998-07-06 16:02:12 -06:00
Tobias Naehring
d3b4c003ba * makeinfo/makeinfo.c (add_word_args): Fix thinko.
From-SVN: r20969
1998-07-06 15:58:00 -06:00
Jason Merrill
4a870dba91 c-decl.c: Add warn_multichar.
* c-decl.c: Add warn_multichar.
        (c_decode_option): Handle -Wno-multichar.
        * c-lex.c (yylex): Check it.
        * c-tree.h: Declare it.
        * toplev.c (lang_options): Add it.
        * invoke.texi: Document it.

From-SVN: r20968
1998-07-06 15:53:23 -06:00
J"orn Rennecke
ed79bb3d42 gcse.c (hash_scan_insn): New argument IN_LIBCALL_BLOCK.
* gcse.c (hash_scan_insn): New argument IN_LIBCALL_BLOCK.  Changed
        caller.

From-SVN: r20967
1998-07-06 15:50:50 -06:00
Jeffrey A Law
fcc60894b8 combine.c (expand_compound_operation): Fix thinko in code to optimize (zero_extend:DI (subreg:SI (foo:DI) 0)) to foo:DI.
* combine.c (expand_compound_operation): Fix thinko in code to optimize
        (zero_extend:DI (subreg:SI (foo:DI) 0)) to foo:DI.

From-SVN: r20966
1998-07-06 15:45:51 -06:00
Manfred Hollstein
c6e9ab63a8 * configure.in (INSTALLDIR): Make sed pattern failsafe.
From-SVN: r20965
1998-07-06 15:29:29 -06:00
Kamil Iskra
d7997cbbb7 * gcc.c-torture/compile/980706-1.c: New test.
From-SVN: r20964
1998-07-06 15:25:13 -06:00
Kamil Iskra
392582fae8 m68k.c (output_scc_di): Use cmpw #0 instead of tstl when testing address registers on the 68000.
* m68k.c (output_scc_di): Use cmpw #0 instead of tstl when
        testing address registers on the 68000.

From-SVN: r20963
1998-07-06 15:23:56 -06:00
Alasdair Baird
702d7434a5 * jump.c (jump_optimize) Check for CONST_INT before using INTVAL.
From-SVN: r20962
1998-07-06 15:19:17 -06:00
Richard Henderson
eafdfea817 regclass.c (allocate_reg_info): Initialize the entire reg_data virtual array.
* regclass.c (allocate_reg_info): Initialize the entire reg_data
        virtual array.

From-SVN: r20961
1998-07-06 15:16:56 -06:00
Ian Lance Taylor
ad214bc2c8 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
1998-07-06 15:14:13 -06:00
Jeff Law
7c880813a8 Move recent entry into the right file.
From-SVN: r20959
1998-07-06 15:05:07 -06:00
Mike Stump
57668aa6aa Make-lang.in (f77.stage?): Use mv -f instead of just mv so that we can move g77.c.
8
	* Make-lang.in (f77.stage?): Use mv -f instead of just mv so that
	we can move g77.c.

From-SVN: r20958
1998-07-06 15:04:02 -06:00
Mike Stump
b368c5716c Make-lang.in (f77.stage?): Use mv -f instead of just mv so that we can move g77.c.
�
	* Make-lang.in (f77.stage?): Use mv -f instead of just mv so that
	we can move g77.c.

From-SVN: r20957
1998-07-06 15:04:01 -06:00
Mike Stump
27e581e328 Makefile.in (clean): Don't remove Makefiles, that is done in distclean.
* Makefile.in (clean): Don't remove Makefiles, that is done in
        distclean.

From-SVN: r20956
1998-07-06 15:01:47 -06:00
Jeffrey A Law
3b39dde8e3 * 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.

From-SVN: r20955
1998-07-06 14:33:33 -06:00