final.c (shorten_branches, [...]): Move code to free label_align...
* final.c (shorten_branches, init_insn_lengths): Move code
to free label_align, uid_shuid, insn_lengths, insn_addresses
and uid_align from the former function into the latter one;
Add code to clear these variables.
* sh.h (label_align): Remove declaration.
Fix some problems that resulted in assmebler messages 'Error: pcrel too far'
Fix some problems that resulted in assmebler messages 'Error: pcrel too far'
* sh.c (find_barrier): Fix bug in ADDR_DIFF_VEC handling.
(split_branches): Call init_insn_lengths.
H.J. Lu [Mon, 20 Apr 1998 00:01:15 +0000 (00:01 +0000)]
reg-stack.c (subst_asm_stack_regs): Change to return the last new insn generated by this function.
* reg-stack.c (subst_asm_stack_regs): Change to return the last
new insn generated by this function.
(subst_stack_regs): Likewise.
(convert_regs): Record the last newly generated insn and use
it for change_stack () instead of INSN.
fix-header.c (enum special_file): Undefine enumerators if they are already defined by include files.
a
* fix-header.c (enum special_file): Undefine enumerators if they
are already defined by include files.
* fixproto (rel_source_file in unistd.h stdlib.h): Prefix file protection
macro with '__' to not pollute user namespace.
fix-header.c (enum special_file): Undefine enumerators if they are already defined by include files.
d
* fix-header.c (enum special_file): Undefine enumerators if they
are already defined by include files.
* fixproto (rel_source_file in unistd.h stdlib.h): Prefix file protection
macro with '__' to not pollute user namespace.
fix-header.c (enum special_file): Undefine enumerators if they are already defined by include files.
�
* fix-header.c (enum special_file): Undefine enumerators if they
are already defined by include files.
* fixproto (rel_source_file in unistd.h stdlib.h): Prefix file protection
macro with '__' to not pollute user namespace.
David Edelsohn [Sat, 18 Apr 1998 16:16:02 +0000 (16:16 +0000)]
rs6000.md (floatsidf2_loadaddr): rs6000_fpmem_offset will be negative in a stackless frame.
* rs6000.md (floatsidf2_loadaddr): rs6000_fpmem_offset will be
negative in a stackless frame.
* rs6000.c (rs6000_stack_info): Don't include fixed-size link area
in stackless frame size. Support 64-bit stackless frame size.
Combine fpmem offset calculations and don't add total_size to
offset if not pushing a stack frame.
Jim Wilson [Sat, 18 Apr 1998 15:31:36 +0000 (15:31 +0000)]
Patches to make g++/g77 give useful error when no files are given.
* gcc.c (lang_specific_driver): Add new parm type to prototype.
(added_libraries): New file scope static variable.
(process_command): Initialize added_libraries. Pass it to
lang_specific_driver.
(main): Use added_libraries in check for no input files.
John Carr [Sat, 18 Apr 1998 01:24:59 +0000 (01:24 +0000)]
sparc.c, [...]: Many changes related to V9 code generation.
Sat Apr 18 01:23:11 1998 John Carr <jfc@mit.edu>
* sparc.c, sparc.h, sparc.md, sol2.h: Many changes related to V9
code generation. Use 64 bit instructions in 32 bit mode when
possible. Use V9 return instruction. UltraSPARC optimizations.
* sparc.h: Change gen_rtx (CODE to gen_rtx_CODE (.
Mark Mitchell [Fri, 17 Apr 1998 21:25:38 +0000 (21:25 +0000)]
cp-tree.h (type_as_string_real): New function.
Fri Apr 17 21:25:00 1998 Mark Mitchell <mmitchell@usa.net>
* cp-tree.h (type_as_string_real): New function.
* pt.c (mangle_class_name_for_template): Use it.
* error.c (dump_aggr_type): Change prototype.
(dump_type_prefix): Likewise.
(dump_type_suffix): Likewise.
(dump_type_real): Convert from dump_type. If desired, the
"canonica" name of a typedef, i.e., the name of the underlying
type, can be printed.
(dump_type): Call dump_type_real.
* decl2.c (lang_decode_option): -fnew-abi implies -fvtable-thunks.
* typeck.c (comp_target_types): Tweak pedantic case.
(comp_target_parms): Tweak pedantic case. Clean up somewhat.
Return -1 or 1 instead of 1 or 2.
(compparms): Remove STRICT handling.
* typeck.c (comp_target_types): Handle references like pointers.
(comp_target_parms): Note that return code from comp_target_types
can be negative to indicate failure.
* frame.c: Include stdlib.h and unistd.h to possibly get various
function prototypes. The fixproto script guarantees these header
files exist on the target system.
* libgcc2.c: Likewise.
* gthr-single.h (__gthread_mutex_lock, __gthread_mutex_trylock,
__gthread_mutex_unlock): Add __attribute__ ((__unused__)) to the
function parameters.
* libgcc2.c (__udiv_w_sdiv): Likewise.
Jason Merrill [Fri, 17 Apr 1998 00:26:13 +0000 (00:26 +0000)]
decl.c (duplicate_decls): Fix check for when it's safe to free the new decl.
* decl.c (duplicate_decls): Fix check for when it's safe to free
the new decl.
* pt.c (mangle_class_name_for_template): Don't pass a typedef type
to type_as_string.
From Mark Mitchell:
(unify): Use comptypes to compare type args.
Jeffrey A Law [Thu, 16 Apr 1998 22:00:09 +0000 (22:00 +0000)]
haifa-sched.c (build_control_flow): Accept raw data as inputs instead of computing it locally.
* haifa-sched.c (build_control_flow): Accept raw data as inputs
instead of computing it locally. Callers changed.
(find_rgns): Several new arguments. Callers changed.
Generally clean up and comment better. Use dominators to
identify reducible loops. Convert some flag arrays to bitmaps.
Convert most of the code to work on pred/succ lists instead of
an edge table. Add comments for future improvements.
(schedule_insns): Allocate temporary tables for flow data, call
routines to compute flow data and pass it along to children as
arguments.
(debug_control_flow): Delete. Use dump_bb_data instead.
General cleanup + fix a bug or two.
tree.c (build_expr_wfl): Use NULL_TREE if the file name is NULL.
�
* tree.c (build_expr_wfl): Use NULL_TREE if the file name is NULL.
Propagate TREE_SIDE_EFFECTS and TREE_TYPE iff the encapsulated
node is non NULL. Cache last file name and file name identifier node.
tree.c (build_expr_wfl): Use NULL_TREE if the file name is NULL.
�
* tree.c (build_expr_wfl): Use NULL_TREE if the file name is NULL.
Propagate TREE_SIDE_EFFECTS and TREE_TYPE iff the encapsulated
node is non NULL. Cache last file name and file name identifier node.
Jeffrey A Law [Wed, 15 Apr 1998 14:33:54 +0000 (14:33 +0000)]
flow.c (sbitmap_union_of_successors): New function.
* flow.c (sbitmap_union_of_successors): New function.
* basic-block.h (sbitmap_union_of_successors): Declare it.
For completeness, we already had the other 3 variants. This one
is useful for backwards lazy code motion.
* alpha.md: Revert Oct 27 change, as it is superceeded by Kenner's
Nov 8 find_replacement change. Move decls of get_unaligned_address
* alpha.h: ... here.