Jeffrey A Law [Sat, 10 Apr 1999 02:55:36 +0000 (02:55 +0000)]
rtl.h (local_alloc): Returns an integer now.
* rtl.h (local_alloc): Returns an integer now.
* local-alloc.c (recorded_label_ref): New file scoped variable.
(local_alloc): Initialize recorded_label_ref to zero. Return its
value when local allocation has completed.
(update_equiv_regs); If we create an equivalence for a LABEL_REF,
set recorded_label_ref.
* toplev.c (rest_of_compilation): Run the loop optimizer after
register allocation and reloading if needed.
cpphash.c (special_symbol): When expanding __LINE__, use the top file buffer, not the top buffer.
1999-04-09 22:58 -0400 Zack Weinberg <zack@rabi.columbia.edu>
* cpphash.c (special_symbol): When expanding __LINE__, use the
top file buffer, not the top buffer.
Jim Blandy [Fri, 9 Apr 1999 09:01:35 +0000 (09:01 +0000)]
cplus-dem.c: Attempt to handle overflows in counts with some semblance of grace.
1999-04-01 Jim Blandy <jimb@zwingli.cygnus.com>
* cplus-dem.c: Attempt to handle overflows in counts with some
semblance of grace.
(consume_count): Detect overflows. Return -1 to indicate errors,
instead of zero.
(demangle_template_value_parm, demangle_template): Handle change
to consume_count's return convention.
Jeffrey A Law [Fri, 9 Apr 1999 01:35:36 +0000 (01:35 +0000)]
expr.c (expand_expr, [...]): Do not try to optimize a aggregate address which has VOIDmode.
* expr.c (expand_expr, case ARRAY_REF, COMPONENT_REF, BIT_FIELD_REF):
Do not try to optimize a aggregate address which has VOIDmode.
Mirrors March 23 change to expand_assignment.
Jeffrey A Law [Fri, 9 Apr 1999 01:23:05 +0000 (01:23 +0000)]
flow.c (delete_unreachable_blocks): Do not require an edge to be marked with EDGE_FALLTHRU when...
* flow.c (delete_unreachable_blocks): Do not require an edge to
be marked with EDGE_FALLTHRU when tidying an edge which connects
consecutive basic blocks.
* flow.c (can_delete_label_p): Do not convert a label into a
deleted label here.
Jeffrey A Law [Fri, 9 Apr 1999 00:29:45 +0000 (00:29 +0000)]
cse.c (flush_hash_table): New function.
* cse.c (flush_hash_table): New function.
(cse_insn): Flush the hash table when we encounter a volatile asm.
(cse_basic_block): Use flush_hash_table instead of doing it
inline.
* reload1.c (reload_cse_regs_1): Flush known register values if
we encounter a volatile asm.
configure.in (host_xm_file, [...]): Include hwint.h.
* configure.in (host_xm_file, build_xm_file): Include hwint.h.
Use case statements instead of "if test -a ... -a ... -a ..."
* machmode.h: Don't define HOST_WIDE_INT, etc. Wrap use of
HOST_WIDE_INT in #ifdef.
* mips.h: Include hwint.h instead of providing definitions for
HOST_WIDE_INT, etc. Wrap uses of HOST_WIDE_INT in #ifdef.
Jeffrey A Law [Wed, 7 Apr 1999 23:07:06 +0000 (23:07 +0000)]
h8300.c (h8300_adjust_insn_length): Avoid trying to recognize USE, CLOBBER or SEQUENCE insns.
* h8300.c (h8300_adjust_insn_length): Avoid trying to recognize
USE, CLOBBER or SEQUENCE insns.
* unroll.c (unroll_loop): For HAVE_cc0 machines, adjust copy_end_luid
to account for the uncopied insn that sets cc0 at the end of the loop.
Jeff Law [Wed, 7 Apr 1999 04:32:04 +0000 (22:32 -0600)]
gcc.exp (proc gcc_target_compile): Add support for timeout specified by target.
* lib/gcc.exp (proc gcc_target_compile): Add support for timeout
specified by target.
Also add missing ChangeLog entries for changes that we installed long ago...
Joseph Myers [Tue, 6 Apr 1999 22:13:57 +0000 (16:13 -0600)]
pdp11.c (simple_memory_operand): Add default case in switch.
* pdp11.c (simple_memory_operand): Add default case in switch.
* pdp11.h (TARGET_SWITCHES): Add help strings.
(NOTICE_UPDATE_CC): Don't include excess argument to format.
(ASM_OUTPUT_DOUBLE_INT): Remove.
* flow.c (verify_flow_info): New function.
(find_basic_blocks): Call it if ENABLE_CHECKING.
(merge_blocks): Don't merge if there are non-deletable labels.
* toplev.c (fatal_insn): Allow a printf-style arg list.
* toplev.h (fatal_insn): Update prototype.
Jan Hubicka [Tue, 6 Apr 1999 16:21:09 +0000 (18:21 +0200)]
Jan Hubicka <hubicka@paru.cas.cz>
Jan Hubicka <hubicka@paru.cas.cz>
* flow.c (split_edge) update correctly flow graph, disable
EDGE_CRITICAL flag on the split edge, update NUSES for new label.
flow.c (create_basic_block): Make sure the bb note is in the block.
* flow.c (create_basic_block): Make sure the bb note is in the block.
(can_delete_note_p): Rename from delete_note_p.
(delete_insn_chain): Preserve undeleteable labels too.
(tidy_fallthru_edge): Use next_real_insn instead of confusing
inline code.
Mark Mitchell [Tue, 6 Apr 1999 14:38:08 +0000 (14:38 +0000)]
cp-tree.h (BASELINK_P): New macro.
* cp-tree.h (BASELINK_P): New macro.
(SET_BASELINK_P): Likewise.
* init.c (build_member_call): Remove needless assignment in if
statement.
* search.c (lookup_field_r): Fix handling when we are looking
specifically for a type; these are not hidden by functions and
variables.
(lookup_member): Use SET_BASELINK_P.
* tree.c (is_overloaded_fn): Use BASELINK_P.
(really_overloaed_fn): Likewise.
(get_first_fn): Likewise.
1999-04-06 12:51 -0400 Zack Weinberg <zack@rabi.columbia.edu>
* cppinit.c (install_predefs): Delete function.
(cpp_start_read): Don't call install_predefs.
(cpp_handle_option): Remove case 'u' and all refs to
opts->inhibit_predefs.
(print_help): Don't mention -undef.
(initialize_builtins): Define __HAVE_BUILTIN_SETJMP__, to
match cccp.
* cpplib.h (struct cpp_options): Remove inhibit_predefs
member.
* cccp.c (predefs): Delete variable.
(main): Remove case 'u' in argument parse loop,
'inhibit_predefs' variable, and the code block that would
process CPP_PREDEFINES.
(initialize_builtins): Don't define __OBJC__, the driver will
do that.
* gcc.c (default_compilers): Remove -undef from all specs that
invoke a C preprocessor.
* ch/lang-specs.h: Likewise.
* cp/lang-specs.h: Likewise.
* f/lang-specs.h: Likewise.
* objc/lang-specs.h: Likewise.