Robert Lipe [Mon, 18 May 1998 07:11:42 +0000 (07:11 +0000)]
dwarfout.h, [...]: New files.
* dwarfout.h, dwarf2out.h, dbxout.h, sdbout.h: New files.
Prototypes for externally used functions in respective C files.
* dwarfout.c, dbxout.c, dwarf2out.c, sdbout.c, toplev,c,
final.c: Include above files.
* Makefile.in (toplev.o): Add dependency for above four headers.
(final.o): Likewise.
(dwarfout.o, dbxout.o, dwarf2out.o, sdbout.o): Depend on four
respective header files.
Jeffrey A Law [Mon, 18 May 1998 01:24:26 +0000 (01:24 +0000)]
Makefile.in (TARGET_TOOLPREFIX): No longer define.
* Makefile.in (TARGET_TOOLPREFIX): No longer define.
(AR_FOR_TARGET, RANLIB_FOR_TARGET): Define to use versions in
the build tree if they exist.
(AR, AR_FLAGS, OLDAR, OLDAR_FLAGS, RANLIB, RANLIB_TEST): Update
appropriately.
(objdir): Let configure substitute value.
(FLOAT_H): Let configure select a pre-built version from the
config subdir.
* build-make (INSTALL_TARGET, ALL): Disable, no longer needed.
* configure.in: Substitute for objdir.
* cp/Makefile.in (program_transform_name, objdir): Define.
Jeffrey A Law [Mon, 18 May 1998 00:48:07 +0000 (00:48 +0000)]
Makefile.in (build_canonical, [...]): Let configure substitute values for these variables.
* Makefile.in (build_canonical, host_canonical): Let configure
substitute values for these variables.
* configure.in: Substitute for build_canonical, host_canonical
and target_subdir in generated Makefile.
Nick Clifton [Sun, 17 May 1998 23:08:40 +0000 (23:08 +0000)]
gcc.c (SWITCH_CURTAILS_COMPILATION): Definition.
* gcc.c (SWITCH_CURTAILS_COMPILATION): Definition.
(DEFAULT_SWITCH_CURTAILS_COMPILATION): True for options -S and -c.
(process_command): If HAVE_EXECUTABLE_SUFFIX is defined then scan
command line arguments to see if an executable is not being
created, and if so - do not append the suffix.
* tm.texi (SWITCH_CURTAILS_COMPILATION): Add description of new
driver macro.
Mark Mitchell [Sun, 17 May 1998 13:58:28 +0000 (13:58 +0000)]
init.c (build_new_1): Call suspend_momentary around the creation of values that must be saved for...
* init.c (build_new_1): Call suspend_momentary around the creation
of values that must be saved for exception handling.
* parse.y (.build_new_placement): New non-terminal.
(unary_expr, new_placement): Use it.
* parse.c: Regenerated.
* alpha/osf.h (HAVE_STAMP_H): Define.
* alpha.c: Use it.
* alpha/netbsd.h, alpha/netbsd-elf.h: New files.
* configure.in (alpha*-*-netbsd*): New.
Based on patches from Paul H. Anderson <pha@pdq.com>.
* configure.in (alpha*-*-linux-*): Kill xm_defines.
(alpha*-*-linux-gnulibc1*) [fixincludes]: Define.
* alpha/xm-linux.h: Remove file.
* expr.c (expand_expr, case EXPR_WITH_FILE_LOCATION): Save/restore
input_filename and lineno around expand_expr call. Set them to values
in WFL before expand_expr call.
Dave Love [Fri, 15 May 1998 04:27:51 +0000 (04:27 +0000)]
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.
J"orn Rennecke [Thu, 14 May 1998 21:36:53 +0000 (21:36 +0000)]
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.
Jim Wilson [Thu, 14 May 1998 13:00:18 +0000 (13:00 +0000)]
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.
Brendan Kehoe [Thu, 14 May 1998 12:29:41 +0000 (12:29 +0000)]
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
Craig Burley [Thu, 14 May 1998 07:24:52 +0000 (07:24 +0000)]
[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.
Craig Burley [Thu, 14 May 1998 06:51:23 +0000 (06:51 +0000)]
[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.
J"orn Rennecke [Thu, 14 May 1998 00:44:02 +0000 (00:44 +0000)]
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.
* 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
Jim Wilson [Wed, 13 May 1998 14:04:15 +0000 (14:04 +0000)]
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.
Kaveh R. Ghazi [Wed, 13 May 1998 12:40:39 +0000 (12:40 +0000)]
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.
Kaveh R. Ghazi [Wed, 13 May 1998 10:00:46 +0000 (10:00 +0000)]
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.
J"orn Rennecke [Wed, 13 May 1998 00:53:59 +0000 (00:53 +0000)]
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.