Commit Graph

16574 Commits

Author SHA1 Message Date
Dave Love
4ee383a75f mike-g77.exp: New file.
1998-05-15  Dave Love  <d.love@dl.ac.uk>
	* lib/mike-g77.exp: New file.
	* g77.f-torture/noncompile/noncompile.exp,
	g77.f-torture/noncompile/check0.f: New files.

From-SVN: r19773
1998-05-15 04:27:51 +00:00
J"orn Rennecke
61fb6bac57 sh.c (gen_shl_and): Don't sign extend constant for kind two.
* sh.c (gen_shl_and): Don't sign extend constant for kind two.
	Abort if trying to split kind 3 or 4 outside of combine.

From-SVN: r19772
1998-05-15 04:26:52 +01:00
Dave Love
08e2846bd7 New file.
From-SVN: r19771
1998-05-15 02:44:44 +00:00
Jason Merrill
6729735cf1 regen
From-SVN: r19770
1998-05-14 22:10:42 -04:00
Jeffrey A Law
8f9661ddd6 * mips.c (print_operand, case 'x'): Use HOST_WIDE_INT_PRINT_HEX.
From-SVN: r19769
1998-05-14 18:49:49 -06:00
Jason Merrill
b5effa192a * decl.c (start_decl): Use 'tem'.
From-SVN: r19768
1998-05-14 20:46:36 -04:00
Mumit Khan
438a7234c4 * Make-lang.in (f77.mostlyclean): Add missing exeext.
From-SVN: r19767
1998-05-14 18:45:22 -06:00
Mumit Khan
b22284e14a Make-lang.in (OBJC_O): Add missing exeext.
* objc/Make-lang.in (OBJC_O): Add missing exeext.
        (libobjc.a, runtime-info.h): Likewise.

From-SVN: r19766
1998-05-14 18:44:32 -06:00
John Wehle
8a0224432d i386.h (DATA_ALIGNMENT): Define.
* i386.h (DATA_ALIGNMENT): Define.
Improve x86 FP performance.

From-SVN: r19765
1998-05-14 18:29:27 -06:00
J"orn Rennecke
aa6498c297 reload1.c (delete_output_reload): Ignore single USE that was emitted for the pseudo use of this INSN.
* reload1.c (delete_output_reload): Ignore single USE that
	was emitted for the pseudo use of this INSN.
	If the no reference to REG between OUTPUT_RELOAD_INSN and INSN
	remains, we can always delete OUTPUT_RELOAD_INSN.

From-SVN: r19762
1998-05-14 22:36:53 +01:00
Jeff Law
0238952c79 Initial revision
From-SVN: r19757
1998-05-14 13:57:15 -06:00
Jim Wilson
7924156a6a Fix MIPS compiler abort on Mesa, reported by Andy Tai.
* reload.c (find_reloads): Don't penalize SCRATCH output reload.

From-SVN: r19756
1998-05-14 12:54:35 -07:00
Jim Wilson
41372177b2 Fix MIPS compiler abort on Mesa, reported by Andy Tai.
From-SVN: r19755
1998-05-14 11:41:51 -07:00
Jeff Law
ddc5654abd Makefile.in (expr.o): Remove dependency on deleted modemap.def file.
�
        * Makefile.in (expr.o): Remove dependency on deleted modemap.def file.

From-SVN: r19748
1998-05-14 08:09:33 -06:00
Jeff Law
1cd9396387 Makefile.in (expr.o): Remove dependency on deleted modemap.def file.
8
        * Makefile.in (expr.o): Remove dependency on deleted modemap.def file.

From-SVN: r19747
1998-05-14 08:09:31 -06:00
Andrew MacLeod
9a0d1e1b11 First cut of changes to utilize the new exception handling model
From-SVN: r19746
1998-05-14 13:39:15 +00:00
Jim Wilson
2129b0816f Patch from Gary McGary to fix i960 problem with out-of-range shifts.
* i960.h (hard_regno_mode_ok): Changed to function from array of
 	unsigned.
	(HARD_REGNO_MODE_OK): Call function instead of testing bit.
	* i960.c (hard_regno_mode_ok): Changed to function from array of
 	unsigned.

From-SVN: r19745
1998-05-14 06:00:18 -07:00
Brendan Kehoe
f2ee215beb typeck.c (original_type): New function.
* typeck.c (original_type): New function.
	(common_type): Use it to get the DECL_ORIGINAL_TYPE for T1 and T2,
	to see if they're actually the same.
	* cp-tree.h (original_type): Declare.
fix problem when you have multiple identical typedefs

From-SVN: r19744
1998-05-14 08:29:41 -04:00
Dave Love
c02cdb7030 short.f, [...]: Call abort where appropriate.
* g77.f-torture/execute/short.f, g77.f-torture/execute/le.f,
	g77.f-torture/execute/exp.f, g77.f-torture/execute/erfc.f,
	g77.f-torture/execute/dnrm2.f, g77.f-torture/execute/dcomplex.f,
	g77.f-torture/execute/cpp.F, g77.f-torture/execute/complex_1.f,
	g77.f-torture/execute/claus.f, g77.f-torture/execute/cabs.f: Call
	abort where appropriate.

From-SVN: r19743
1998-05-14 09:17:34 +00:00
Dave Love
b38b42d205 Call abort where appropriate.
From-SVN: r19742
1998-05-14 09:00:31 +00:00
Dave Love
1a057f3bc0 Add dmg address.
From-SVN: r19741
1998-05-14 08:10:55 +00:00
Craig Burley
2b0c2df0c5 [multiple changes]
Sun Apr 26 09:05:50 1998  Craig Burley  <burley@gnu.org>
        * com.c (ffecom_char_enhance_arg_): Wrap the upper bound
        (the PARM_DECL specifying the length of the CHARACTER*(*)
        dummy arg) in a variable_size invocation, to prevent
        dwarf2out.c crashing when compiling code with -g.
Sat Apr 18 05:03:21 1998  Craig Burley  <burley@gnu.org>
        * com.c (ffecom_check_size_overflow_): Ignore overflow
        as well if dummy argument.

From-SVN: r19740
1998-05-14 07:24:52 +00:00
Craig Burley
945beb7c43 [multiple changes]
Sun Apr 26 09:05:50 1998  Craig Burley  <burley@gnu.org>
        * com.c (ffecom_char_enhance_arg_): Wrap the upper bound
        (the PARM_DECL specifying the length of the CHARACTER*(*)
        dummy arg) in a variable_size invocation, to prevent
        dwarf2out.c crashing when compiling code with -g.
Sat Apr 18 05:03:21 1998  Craig Burley  <burley@gnu.org>
        * com.c (ffecom_check_size_overflow_): Ignore overflow
        as well if dummy argument.

From-SVN: r19739
1998-05-14 06:51:23 +00:00
Dave Love
8739160472 Duplicated 980310-2.f.
From-SVN: r19737
1998-05-14 02:32:14 +00:00
J"orn Rennecke
9dd07f87f3 * loop.c (scan_loop): Don't call move_moveables for optimize_size.
From-SVN: r19736
1998-05-13 18:50:07 -06:00
J"orn Rennecke
029b38ff04 reload.c (remove_replacements): New function.
* reload.c (remove_replacements): New function.
	* reload.h (remove_replacements): Declare.
	* reload1.c (choose_reload_regs): Disable some reloads that
	belong to inherited reloads.

From-SVN: r19735
1998-05-14 01:44:02 +01:00
Jeff Law
f824910ea1 New testcase.
From-SVN: r19734
1998-05-13 18:20:07 -06:00
Michael Meissner
ae78d2768e rtlanal.c (find_reg_note): Ignore notes that are not on on insns of class 'i'.
* rtlanal.c (find_reg_note): Ignore notes that are not on on
        insns of class 'i'.
        (find_regno_note): Likewise.

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

From-SVN: r19733
1998-05-13 16:10:04 -06:00
Michael Meissner
82ce5b758e Makefile.in (stor-layout.o): Depend on except.h
* Makefile.in (stor-layout.o): Depend on except.h
        (varasm.o, function.o): Likewise.
        (expr.o): Depend on except.h, modemap.def and hard-reg-set.h.

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

From-SVN: r19728
1998-05-13 15:33:25 -06:00
Michael Meissner
0dfa18604b Makefile.in (HOST_RTL): Add $(HOST_PREFIX)bitmap.o.
* Makefile.in (HOST_RTL): Add $(HOST_PREFIX)bitmap.o.
        (rtl.o, emit-rtl.o): Add dependency on bitmap.h.
        ($(HOST_PREFIX_1)rtl.o): Likewise.
        ($(HOST_PREFIX_1)bitmap.o): New host object.
        * emit-rtl.c (toplevel): Include bitmap.h.
        (gen_rtx): Handle 't' and 'b' nodes.
        * print-rtl.c (print_rtx): Handle printing NOTE_INSN_LIVE notes.
        Print block number for block begin/end notes.  Print 't' type
        nodes as a pointer.  Know that the 3rd argument of live range
        start/stop notes is really a range_info rtx.  If type is 'b', print
        out argument as a bitmap.
        * rtl.c: Include bitmap.c.
        (copy_rtx): Copy tree nodes as is.  Copy bitmaps if type is 'b'.
        (note_insn_name): Add NOTE_INSN_RANGE_{START,END}, NOTE_INSN_LIVE.
        * rtl.def (RANGE_LIVE): New node to hold live information while we
        recalculate the basic blocks.
        (RANGE_REG, RANGE_INFO): New rtl types for live range splitting.
        (RANGE_VAR): New node, to hold information saved in symbol node for New
        communicating live range information to the debug output functions.
        * rtl.h (rtunion_def): Add rttree and rtbit fields.
        (XBITMAP, XTREE): New accessor macros.
        (NOTE_LIVE_INFO): Overload NOTE_SOURCE_FILE for NOTE_INSN_LIVE notes.
        (NOTE_RANGE_INFO): Similarly for NOTE_INSN_RANGE_{START,END} notes.
        (NOTE_BLOCK_LIVE_RANGE_BLOCK): Define.
        (NOTE_INSN_RANGE_START, NOTE_INSN_RANGE_END, NOTE_INSN_LIVE): New notes.
        (RANGE_LIVE_{BITMAP,ORIG_BLOCK}): New accessor macros.
        (RANGE_REG_{SYMBOL,BLOCK}_NODE, RANGE_VAR_*): New accessor macros.
        (RANGE_INFO_*): Likewise.
        * sched.c (sched_analyze): Keep live range start/stop notes.
        (unlink_other_notes): Likewise.
        * haifa-sched.c (sched_analyze): Keep live range start/stop notes.
        (unlink_other_notes): Likewise.
        * tree.h (BLOCK_LIVE_RANGE_{START,END,VAR_FLAG}): New accessor macros.
        (BLOCK_LIVE_RANGE_FLAG): Likewise.
        (DECL_LIVE_RANGE_RTL): Likewise.
        (struct tree_block): Add live_range_flag, live_range_var_flag,
        live_range_start and live_range_end.
        (struct tree_decl): Add live_range_rtl field.
        * gengenrtl.c (type_from_format): Handle 'b' and 't'.
        (accessor_from_format): Likewise.

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

From-SVN: r19727
1998-05-13 15:13:47 -06:00
J"orn Rennecke
efdb359022 reload1.c (merge_assigned_reloads): When merging, reset reload_spill_index for the eliminated reload.
* reload1.c (merge_assigned_reloads):  When merging, reset
	reload_spill_index for the eliminated reload.

From-SVN: r19726
1998-05-13 19:19:03 +01:00
Jeffrey A Law
5d27de7d00 * haifa-sched.c (schedule_insns): Fix merge goof.
From-SVN: r19725
1998-05-13 10:52:15 -06:00
Michael Meissner
47312d8401 Add a blank line in verbose debug output
From-SVN: r19724
1998-05-13 15:32:22 +00:00
Jim Wilson
92d4501f96 Patch to fix g++.other/local1.C.
* varasm.c (make_decl_rtl): Revert April 1 change.
	* alpha/alpha.h, alpha/win-nt.h, arm/arm.h, i386/unix.h, i960/i960.h,
	m68k/linux.h, pa/pa.h, sparc/sparc.h, vax/vax.h (ASM_OUTPUT_MI_THUNK):
	Get function name from the SYMBOL_REF in the DECL_RTL, not from
	DECL_ASSEMBLER_NAME.
	* i386/winnt.c (gen_stdcall_suffix): Comment for questionable use of
	DECL_ASSEMBLER_NAME.

From-SVN: r19723
1998-05-13 07:04:15 -07:00
Jim Wilson
d6cc54f659 Disable remaining cmov support just to be safe.
* i386.c (notice_update_cc, output_float_compare): Disable
	TARGET_CMOVE support.

From-SVN: r19722
1998-05-13 06:10:34 -07:00
Michael Meissner
6d3352d918 align debug output
From-SVN: r19721
1998-05-13 12:55:38 +00:00
Kaveh Ghazi
63e76c876f Grrr! ChangeLog omitted for last warning fix update.
From-SVN: r19720
1998-05-13 12:46:34 +00:00
Kaveh R. Ghazi
d6f4ec5199 Warning fixes:
* Makefile.in (c-lang.o): Depend on c-tree.h, c-lex.h and toplev.h.
	(c-lex.o): Depend on output.h.
	(c-common.o): Likewise.
	(stmt.o): Likewise.
	(calls.o): Likewise.
	(integrate.o): Depend on toplev.h.
	(regclass.o): Depend on output.h.
	(final.o): Depend on reload.h.
	* c-common.c: Include output.h.
	(check_format_info): Remove unused variable `integral_format'.
	* c-decl.c (print_lang_decl): Mark parameters `file', `node' and
	`indent' with ATTRIBUTE_UNUSED.
	(print_lang_type): Likewise.
	(maybe_build_cleanup): Likewise for parameter `decl'.
	(copy_lang_decl): Likewise for parameter `node'.
	* c-lang.c: Include c-tree.h, c-lex.h and toplev.h.
	(lang_print_xnode): Mark parameters `file', `node' and `indent'
 	with ATTRIBUTE_UNUSED.
	(lookup_interface): Likewise for parameter `arg'.
	(is_class_name): Likewise.
	(maybe_objc_check_decl): Likewise for parameter `decl'.
	(maybe_objc_comptypes): Likewise for parameters `lhs', `rhs' and
	`reflexive'.
	(maybe_objc_method_name): Likewise for parameter `decl'.
	(build_objc_string): Likewise for parameters `len' and `str'.
	* c-lex.c: Include output.h.
	* c-lex.h (position_after_white_space): Correct typo in prototype.
	* c-tree.h (finish_file, c_expand_start_cond, c_expand_start_else,
 	c_expand_end_cond, init_iterators): Add prototypes.
	* caller-save.c (set_reg_live): Mark parameters `reg' and `setter'
	with ATTRIBUTE_UNUSED.
	* calls.c: Include output.h.
	* cccp.c (pipe_closed): Mark parameter `signo' with
 	ATTRIBUTE_UNUSED.
	* combine.c: Move inclusion of expr.h to after insn-config.h.
	* iris6.h (ASM_IDENTIFY_GCC, ASM_IDENTIFY_LANGUAGE): Don't define
	as empty, rather define as ((void)0).
	* sparc.c (sparc_check_64): Add braces around ambiguous `else'.
	Add parentheses around assignment used as truth value.
	* cplus-dem.c (squangle_mop_up): Change return type to void.
	(internal_cplus_demangle): Remove unused parameter `options'.
	All callers changed.
	(cplus_demangle_opname): Remove function wide variable `int i' and
 	replace with `size_t i' at each location where it is used.
	(cplus_demangle_opname): change type of `i' from int to size_t.
	* cppexp.c (right_shift): Mark parameter `pfile' with
	ATTRIBUTE_UNUSED.
	* cpphash.c (cpp_lookup): Likewise.
	(cpp_hash_cleanup): Likewise.
	* cpplib.c (parse_name): Add a prototype and make it static.
	(null_underflow): Mark parameter `pfile' with ATTRIBUTE_UNUSED.
	(null_cleanup): Likewise for parameters `pbuf' and `pfile'.
	(macro_cleanup): Likewise for parameter `pfile'.
	(file_cleanup): Likewise.
	* cpplib.h (cpp_reader_init, cpp_options_init, cpp_start_read,
 	cpp_read_check_assertion, skip_rest_of_line): Add prototypes.
	* crtstuff.c (force_to_data, __CTOR_LIST__, force_to_data,
	__DTOR_END__, __FRAME_END__): Mark with ATTRIBUTE_UNUSED.
	* cse.c (cse_check_loop_start): Mark parameter `set' with
 	ATTRIBUTE_UNUSED.
	* dbxout.c (flag_minimal_debug, have_used_extensions,
	source_label_number): Move inside macro wrapper check against
	defined (DBX_DEBUGGING_INFO) || defined (XCOFF_DEBUGGING_INFO).
	* dwarf2out.c (gen_entry_point_die): Hide prototype and definition.
	* except.h (doing_eh): Provide prototype.
	* expr.c: Move inclusion of expr.h to after insn-config.h.
	* final.c: Include reload.h.
	(shorten_branches): Cast the first argument of bzero to char *.
	* fix-header.c (cpp_print_containing_files): Mark parameter
 	`pfile' with ATTRIBUTE_UNUSED.
	(cpp_fatal): Likewise.
	* flow.c (find_basic_blocks_1): Cast the first argument of bzero
	to char *.
	* genattrtab.c (make_length_attrs): Change the type of variable
	`i' from int to size_t.
	(zero_fn): Mark parameter `exp' with ATTRIBUTE_UNUSED.
	(one_fn): Likewise.
	* genextract.c (main): When generating insn-extract.c, mark
	variable `junk' with ATTRIBUTE_UNUSED.
	* gengenrtl.c (gencode): When generating genrtl.c, cast the first
	argument of bzero to char*.
	* integrate.c: Include toplev.h.
	* libgcc2.c: Wrap `struct exception_table' and
	`find_exception_handler' in macro DWARF2_UNWIND_INFO.
	* objc/Make-lang.in (objc-act.o): Depend on toplev.h.
	* objc/objc-act.c: Include toplev.h.
	(lang_print_xnode): Mark parameters `file', `node' and `indent'
	with ATTRIBUTE_UNUSED.
	(finish_protocol): Likewise for parameter `protocol'.
	* output.h (declare_weak): Add prototype.
	(decode_reg_name): Don't wrap with TREE_CODE macro.
	(assemble_alias): Add prototype.
	* regclass.c: Include output.h.
	* reload.h (reloads_conflict): Add prototype.
	* rtl.h (print_rtl_single, mark_elimiation, reg_class_subset_p,
	output_func_start_profiler): Add prototypes.
	* rtlanal.c (reg_set_p_1): Mark parameters `x' and `pat' with
 	ATTRIBUTE_UNUSED.
	* scan-decls.c: Include scan.h.
	* scan.h (recognized_function, recognized_extern): Add prototypes.
	* stmt.c: Include output.h.
	* toplev.c (error_for_asm, warning_for_asm): Remove prototypes.
	(output_lang_identify): Hide prototype and definition.
	(float_signal): Mark parameter `signo' with ATTRIBUTE_UNUSED.
	(pipe_closed): Likewise.
	* toplev.h (count_error, strip_off_ending, error_for_asm,
 	warning_for_asm): Add prototypes.

From-SVN: r19712
1998-05-13 12:40:39 +00:00
Michael Meissner
32e705c434 toplev.c (rest_of_compilation): "Charge" final for any time doing various cleanup operations after finishing...
* toplev.c (rest_of_compilation): "Charge" final for any time
        doing various cleanup operations after finishing compilation
        of a function.

From-SVN: r19711
1998-05-13 06:26:49 -06:00
Michael Meissner
6fc4610b8c flow.c (dump_flow_info): Also print number of sets and whether or not the pseudo is a user variable.
* flow.c (dump_flow_info): Also print number of sets and
        whether or not the pseudo is a user variable.

From-SVN: r19710
1998-05-13 06:18:27 -06:00
Jeff Law
21622cafab Reorganize last entry a little.
From-SVN: r19709
1998-05-13 06:14:49 -06:00
Michael Meissner
a494747c2b acconfig.h (ENABLE_CHECKING): Undefine.
* acconfig.h (ENABLE_CHECKING): Undefine.
        * configure.in (--enable-checking): New option.
        * flow.c (reg_n_max): New global variable.
        * regclass.c (allocate_reg_info): Keep reg_n_max up to date.
        Delete regno_max variable.
        * regs.h (REG_N_CHECK): Define.
        (REG_N_REFS, REG_N_SETS, REG_N_DEATHS): Use REG_N_CHECK.
        (REG_N_CHANGES_SIZE, REG_N_CALLS_CROSSED, REG_LIVE_LENGTH): Likewise.
        (REGNO_FIRST_UID, REGNO_LAST_UID, REGNO_LAST_NOTE_UID): Likewise.

Co-Authored-By: Martin v. Loewis <martin@mira.isdn.cs.tu-berlin.de>

From-SVN: r19708
1998-05-13 05:57:25 -06:00
Kaveh R. Ghazi
7dee3f36c6 Warning patches:
* Makefile.in (lex.o): Depend on output.h.
        * call.c (add_function_candidate): Remove unused variable `cand'.
        (add_conv_candidate): Likewise.
        (build_builtin_candidate): Likewise.
        * cp-tree.h: Add prototype for `types_overlap_p'.
        * decl.c (signal_catch): Mark parameter `sig' with ATTRIBUTE_UNUSED.
        * decl2.c (merge_functions): Remove unused variables `tmp' and
        `tempn'.
        * error.c (expr_as_string): Mark parameter `v' with ATTRIBUTE_UNUSED.
        (code_as_string): Likewise.
        (language_as_string): Likewise.
        (parm_as_string): Likewise.
        (op_as_string): Likewise.
        (assop_as_string): Likewise.
        (cv_as_string): Likewise.
        * lex.c: Include output.h.
        * pt.c (type_unification): Cast first argument of `bzero' to a char*.
        * search.c (dfs_no_overlap_yet): Mark parameter `t' with
        ATTRIBUTE_UNUSED.
        * tinfo.cc (__class_type_info::dcast): Change the type of variable
        `i' from int to size_t.
        * typeck.c (language_lvalue_valid): Mark parameter `exp' with
        ATTRIBUTE_UNUSED.

From-SVN: r19707
1998-05-13 10:00:46 +00:00
J"orn Rennecke
d668e863c9 reload1.c (merge_assigned_reloads): Can merge RELOAD_FOR_INPUT_ADDRESS and RELOAD_FOR_OTHER_ADDRESS even if...
* reload1.c (merge_assigned_reloads):  Can merge
	RELOAD_FOR_INPUT_ADDRESS and RELOAD_FOR_OTHER_ADDRESS even
	if RELOAD_FOR_INPUT with the same reload_reg_rtx is present.

From-SVN: r19706
1998-05-13 01:53:59 +01:00
Jason Merrill
6eb3bb273d error.c (dump_simple_decl): Use DECL_CLASS_SCOPE_P and/or DECL_NAMESPACE_SCOPE_P.
* error.c (dump_simple_decl): Use DECL_CLASS_SCOPE_P and/or
	DECL_NAMESPACE_SCOPE_P.
	(lang_decl_name): Likewise.
	* pt.c (tsubst_friend_function, tsubst): Likewise.
	* decl.c (pushdecl, redeclaration_error_message, start_decl,
	cp_finish_decl, start_function): Likewise.
	* class.c (finish_struct_1): Likewise.
	* call.c (build_over_call): Likewise.
	(compare_ics): Use DERIVED_FROM_P.

From-SVN: r19705
1998-05-12 17:42:34 -04:00
Jim Wilson
b706d7f20d Fix aix --with-gnu-ld build failure reported by Brendan.
* collect2.c (main): Ignore do_collecting when COLLECT_EXPORT_LIST.

From-SVN: r19704
1998-05-12 13:07:09 -07:00
J"orn Rennecke
4117a96b01 * reload1.c (gen_reload): Create REG_EQUIV notes.
From-SVN: r19703
1998-05-12 20:28:01 +01:00
J"orn Rennecke
4d3eb41421 reload1.c (reload): Fix check for USEs to use code of pattern.
* reload1.c (reload): Fix check for USEs to use code of pattern.
	(choose_reload_regs): Remove dead variable use_insn.

From-SVN: r19702
1998-05-12 15:25:14 +01:00
Jeffrey A Law
b10c896640 * pa.h (DBX_CONTIN_LENGTH): Reduce to 3000 bytes.
From-SVN: r19701
1998-05-12 07:04:18 -06:00
Michael Meissner
cbb1345779 Use HAIFA_INLINE for inlining functions instead of __inline directly
From-SVN: r19700
1998-05-12 12:20:18 +00:00