* haifa-sched.c (schedule_block): Do not count USE and CLOBBER
insns against the issue rate.
* sched-deps.c (sched_create_groups_for_libcalls): New function.
(sched_analyze): Use it.
From-SVN: r54004
* config/h8300/h8300-protos.h: Remove the prototype for
o_operand.
Add prototypes for single_one_operand and single_zero_operand.
* config/h8300/h8300.c (o_operand): Remove.
(single_one_operand): New.
(single_zero_operand): Likewise.
(print_operand): For 'V' operand, and the operand with 0xff.
For 'V' and 'W' operands, do not and the bit position with 7.
* config/h8300/h8300.md (various anonymous patterns): Replace
use of exact_log2 with single_one_operand/single_zero_operand.
From-SVN: r53994
* config/s390/s390.c (legitimate_pic_operand_p): Do not
accept symbolic LARL operands.
(s390_emit_epilogue): Do not set FRAME_RELATED_P on
epilogue insns.
From-SVN: r53991
* config/i386/i386.c (ix86_save_reg): Examine regs_ever_live,
not current_function_uses_pic_offset_table and
current_function_uses_const_pool; examine current_function_profile.
(ix86_expand_prologue): Likewise. Add pic_offset_table_rtx as
input to blockage if needed.
(ix86_expand_call): Do not set current_function_uses_pic_offset_table.
(legitimize_pic_address): Likewise. Set regs_ever_live for
pic_offset_table_rtx when invoked during reload.
* config/i386/i386.h (FINALIZE_PIC): Remove.
* config/i386/i386.md (tablejump): Reformat. Do not set
current_function_uses_pic_offset_table.
(tls_global_dynamic, tls_local_dynamic_base): Likewise.
(blockage): Accept anything as operand 0.
From-SVN: r53981
* config/netbsd-aout.h (NETBSD_OS_CPP_BUILTINS_AOUT): Define
common CPP built-ins for all NetBSD a.out targets.
* config/netbsd-elf.h (NETBSD_OS_CPP_BUILTINS_ELF): Define
common CPP built-ins for all NetBSD ELF targets.
* config/netbsd.h: Add missing notice.
(NETBSD_OS_CPP_BUILTINS_COMMON): Define common CPP built-ins
for all NetBSD targets.
(NETBSD_OS_CPP_BUILTINS_LP64): Define common CPP built-ins
for all NetBSD targets using an LP64 code model.
(NETBSD_CPP_SPEC): Define CPP_SPEC parts common to all
NetBSD targets.
From-SVN: r53980
2002-05-28 Phil Edwards <pme@gcc.gnu.org>
* testsuite/Makefile.am (noinst_LIBRARIES): New target. Pull in
CXX/INCLUDES.
* testsuite/Makefile.in: Regenerate.
* testsuite/testsuite_hooks.h (gnu_copy_tracker): Move from
list_modifiers.cc and rename from 'T'. Move code bodies...
* testsuite/testsuite_hooks.cc: ...to here. New file.
* testsuite/23_containers/list_modifiers.cc: Move 'T' class out.
* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3_target_compile):
Add libv3test.a to link options.
From-SVN: r53977
* sched-deps.c (sched_analyze): Do not clear SCHED_GROUP_P.
* haifa-sched.c (move_insn): Clear SCHED_GROUP_P after it is used.
Co-Authored-By: Jeff Law <law@redhat.com>
From-SVN: r53973
* flow.c (calculate_global_regs_live): Rename call_used to
invalidated_by_call. Initialize from regs_invalidated_by_call
instead of call_used_regs.
From-SVN: r53962
* tree.h: Forward-declare struct realvaluetype.
(struct tree_real_cst): Point to the REAL_VALUE_TYPE, do not
contain it.
(TREE_REAL_CST_PTR): New accessor.
(TREE_REAL_CST): Update.
* real.h: Include machmode.h.
(realvaluetype): Make it struct realvaluetype, not a typedef.
(build_real): Prototype here.
* tree.c: Include real.h.
(build_real): Allocate the REAL_VALUE_TYPE as a separate
object in GC memory, set TREE_REAL_CST_PTR to point to it.
(build_real_from_int_cst): Use build_real.
* ggc-common.c (ggc_mark_trees): Mark TREE_REAL_CST_PTR of a
REAL_CST.
* builtins.c, c-common.c, c-lex.c, dwarf2out.c, expr.c,
fold-const.c, print-tree.c, real.c, cp/mangle.c, cp/tree.c,
f/bld.c, f/com.c, f/expr.c, f/target.c, java/decl.c,
java/jcf-parse.c, java/parse.y, java/typeck.c: Include real.h.
* Makefile.in, cp/Make-lang.in, f/Make-lang.in,
java/Make-lang.in: Update dependency lists.
From-SVN: r53959
* basic-block.h (last_basic_block): Declare.
(expunge_block_nocompact): Declaration removed.
(compact_blocks): Declare.
* cfg.c (last_basic_block): New variable.
(expunge_block_nocompact): Removed.
(expunge_block): Do not compact basic blocks.
(compact_blocks): New.
* cfganal.c (flow_call_edges_add): Use the fact that bb indices no
longer change.
* cfgbuild.c (find_basic_blocks_1, find_basic_blocks): Set
last_basic_block.
* cfgcleanup.c (merge_blocks_move_predecessor_nojumps): Do not change
real positions of blocks.
(delete_unreachable_blocks): Simplified -- quadratic behavior now
cannot occur.
(cleanup_cfg): Compact blocks.
* cfgrtl.c (create_basic_block): Insert basic blocks to the end of
basic_block_info varray.
(flow_delete_block): Comment update.
(back_edge_of_syntactic_loop_p): Modify position check code.
(verify_flow_info): Update checking.
* flow.c (calculate_global_regs_live): Use FOR_EACH_BB.
* ifcvt.c (SET_ORIG_INDEX, ORIG_INDEX): Removed.
(find_if_case_1, find_if_case_2, if_convert): Use the fact that bb
indices no longer change.
* lcm.c (optimize_mode_switching): Replace n_basic_blocks with
last_basic_block.
* predict.c (estimate_bb_frequencies): Remove unneccessary code.
* profile.c (branch_prob): Compact blocks.
* sched-rgn.c (find_rgns): Replace n_basic_blocks with
last_basic_block.
From-SVN: r53957
* c-common.c: Add support for __attribute__((nothrow)) to specify
that a function cannot throw an exception (using TREE_NOTHROW).
(handle_nothrow_attribute): New function to process this attribute.
* doc/extend.texi: Document the new nothrow function attribute.
2002-05-27 Richard Henderson <rth@redhat.com>
* g++.dg/ext/attrib6.C: New test case.
From-SVN: r53940
2002-05-27 H.J. Lu (hjl@gnu.org)
* cppexp.c (num_trim): Use 1UL instead of 1 for long int.
(num_positive): Likewise.
(num_div_op): Likewise.
From-SVN: r53939
2002-05-23 Bo Thorsen <bo@suse.de>
* config/i386/libgcc-x86_64-glibc.ver: Copy this file from the
3.1 branch. The file was made by Jakub Jelinek.
* config/i386/linux64.h (MD_FALLBACK_FRAME_STATE_FOR): Add i386
support so multilib doesn't break. And don't define this at all
when -Dinhibit_libc is used.
(MULTILIB_DEFAULTS): Always set default to 64 bit compilation.
* config/i386/t-linux64: Implement full multilib support. Patch
originally done by Andreas Jaeger and Jakub Jelinek.
From-SVN: r53927