14447 lines
513 KiB
Groff
14447 lines
513 KiB
Groff
|
2001-06-30 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* rtl.def (DEFINE_INSN, DEFINE_INSN_AND_SPLIT, DEFINE_PEEPHOLE):
|
||
|
Change output-template slot to format 'T'.
|
||
|
* rtl.h (XTMPL): New.
|
||
|
* read-rtl.c (read_escape): New function.
|
||
|
(read_quoted_string, read_braced_string): Use it.
|
||
|
(read_rtx): Set star_if_braced from the format string.
|
||
|
Use XTMPL where appropriate.
|
||
|
* genoutput.c (gen_insn, gen_peephole): Use XTMPL to get the
|
||
|
template string.
|
||
|
|
||
|
* rtl.c: Include errors.h for sake of rtl_check_failed* routines.
|
||
|
Document 'T' in rtx format strings.
|
||
|
* Makefile.in (rtl.o, $(HOST_PREFIX_1)rtl.o): Depend on errors.h.
|
||
|
* errors.c (internal_error): Add missing ": " at end of string.
|
||
|
|
||
|
* i860.md: Change triple backslashes to double backslashes at
|
||
|
ends of lines in output templates.
|
||
|
* ns32k.md: Remove stray backslash-newline in output template.
|
||
|
|
||
|
2001-06-29 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
|
||
|
* gcc.c (process_command): Append a DIR_SEPARATOR to a path
|
||
|
specified by the -B switch, if doing so would create a valid
|
||
|
directory name.
|
||
|
* doc/invoke.texi: Document changed behaviour of -B.
|
||
|
|
||
|
2001-06-29 DJ Delorie <dj@redhat.com>
|
||
|
|
||
|
* simplify-rtx.c (simplify_subreg): When simplifying a CONCAT, at
|
||
|
least get rid of the CONCAT if we can't simplify further.
|
||
|
|
||
|
Fri Jun 29 12:27:24 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* simplify-rtx.c (simplify_rtx): Use swap_commutative_operands_p.
|
||
|
|
||
|
* doc/gcc.texi (Passes): Update due to recent -fdce -> -fssa-dce
|
||
|
changes. Fix documentation for SSA DCE pass.
|
||
|
|
||
|
* ssa-dce.c (ssa_eliminate_dead_code): Renamed from
|
||
|
eliminate_date_code.
|
||
|
* ssa.h (ssa_eliminate_dead_code): Corresponding changes.
|
||
|
* timevar.def (TV_SSA_DCE): Renamed from TV_DEAD_CODE_ELIM.
|
||
|
* toplev.c (DFI_ssa_dce): Renamed from DFI_dce.
|
||
|
(dump_file_info): Similar changes.
|
||
|
(flag_ssa_dce): Similarly
|
||
|
(f_options): Similar changes.
|
||
|
(rest_of_compilation): Corresponding changes.
|
||
|
* doc/invoke.texi: Update as option is now -fssa-dce instead
|
||
|
of -fdce. Update dump file name.
|
||
|
|
||
|
* ssa-dce.c (note_inherently_necessary_set): New function.
|
||
|
(find_inherently_necessary): Use it. Do not consider
|
||
|
NOTEs, CODE_LABELs or BARRIERS are necessary. Improve
|
||
|
handling of asms and unspecs.
|
||
|
(delete_insn_bb): Only delete INSNs, CALL_INSNs or JUMP_INSNs.
|
||
|
|
||
|
2001-06-29 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* target.h (struct gcc_target): Add comp_type_attributes and
|
||
|
set_default_type_attributes.
|
||
|
* target-def.h (TARGET_COMP_TYPE_ATTRIBUTES,
|
||
|
TARGET_SET_DEFAULT_TYPE_ATTRIBUTES): Define.
|
||
|
(TARGET_INITIALIZER): Update.
|
||
|
* doc/tm.texi (COMP_TYPE_ATTRIBUTES, TARGET_COMP_TYPE_ATTRIBUTES,
|
||
|
SET_DEFAULT_TYPE_ATTRIBUTES, TARGET_SET_DEFAULT_TYPE_ATTRIBUTES):
|
||
|
Update documentation of old target macros to describe new target
|
||
|
hooks.
|
||
|
* tree.c (make_node): Use target.set_default_type_attributes.
|
||
|
(default_comp_type_attributes,
|
||
|
default_set_default_type_attributes): New functions.
|
||
|
* tree.h (default_comp_type_attributes,
|
||
|
default_set_default_type_attributes): Declare.
|
||
|
* c-typeck.c (COMP_TYPE_ATTRIBUTES): Don't define.
|
||
|
(comptypes): Use target.comp_type_attributes.
|
||
|
* config/arc/arc-protos.h, config/arc/arc.c, config/arc/arc.h
|
||
|
(arc_comp_type_attributes, arc_set_default_type_attributes,
|
||
|
COMP_TYPE_ATTRIBUTES, SET_DEFAULT_TYPE_ATTRIBUTES): Remove
|
||
|
functions and macros with default behaviour.
|
||
|
* config/m32r/m32r-protos.h, config/m32r/m32r.c,
|
||
|
config/m32r/m32r.h (m32r_comp_type_attributes,
|
||
|
m32r_set_default_type_attributes, COMP_TYPE_ATTRIBUTES,
|
||
|
SET_DEFAULT_TYPE_ATTRIBUTES): Likewise.
|
||
|
* config/m68hc11/m68hc11-protos.h, config/m68hc11/m68hc11.c,
|
||
|
config/m68hc11/m68hc11.h (m68hc11_comp_type_attributes,
|
||
|
m68hc11_set_default_type_attributes, COMP_TYPE_ATTRIBUTES,
|
||
|
SET_DEFAULT_TYPE_ATTRIBUTES): Likewise.
|
||
|
* config/ns32k/ns32k-protos.h, config/ns32k/ns32k.c,
|
||
|
config/ns32k/ns32k.h (ns32k_comp_type_attributes,
|
||
|
COMP_TYPE_ATTRIBUTES): Likewise.
|
||
|
* config/rs6000/rs6000-protos.h, config/rs6000/rs6000.c,
|
||
|
config/rs6000/rs6000.h (rs6000_comp_type_attributes,
|
||
|
rs6000_set_default_type_attributes, COMP_TYPE_ATTRIBUTES,
|
||
|
SET_DEFAULT_TYPE_ATTRIBUTES): Likewise.
|
||
|
* config/d30v/d30v.h (COMP_TYPE_ATTRIBUTES,
|
||
|
SET_DEFAULT_TYPE_ATTRIBUTES): Remove commented out macro
|
||
|
definitions.
|
||
|
* config/i386/i386.h (SET_DEFAULT_TYPE_ATTRIBUTES): Likewise.
|
||
|
* config/ns32k/ns32k.h (SET_DEFAULT_TYPE_ATTRIBUTES): Likewise.
|
||
|
* config/arm/arm.c (arm_comp_type_attributes,
|
||
|
arm_set_default_type_attributes): Make static.
|
||
|
(TARGET_COMP_TYPE_ATTRIBUTES, TARGET_SET_DEFAULT_TYPE_ATTRIBUTES):
|
||
|
Define.
|
||
|
* config/arm/arm.h (COMP_TYPE_ATTRIBUTES,
|
||
|
SET_DEFAULT_TYPE_ATTRIBUTES): Don't define.
|
||
|
* config/arm/arm-protos.h (arm_comp_type_attributes,
|
||
|
arm_set_default_type_attributes): Don't declare.
|
||
|
* config/i386/i386.c (ix86_comp_type_attributes): Make static.
|
||
|
(TARGET_COMP_TYPE_ATTRIBUTES): Define.
|
||
|
* config/i386/i386.h (COMP_TYPE_ATTRIBUTES): Don't define.
|
||
|
* config/i386/i386-protos.h (ix86_comp_type_attributes): Don't
|
||
|
declare.
|
||
|
|
||
|
2001-06-28 Jan van Male <jan.vanmale@fenk.wau.nl>
|
||
|
|
||
|
* predict.c (dump_prediction): Eliminate fprintf warning.
|
||
|
|
||
|
2001-06-28 Diego Novillo <dnovillo@redhat.com>
|
||
|
|
||
|
* flow.c (dump_bb): Remove unused third argument to call
|
||
|
to fprintf when displaying the basic block header.
|
||
|
|
||
|
2001-06-28 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
|
||
|
Jeff Law <law@redhat.com>
|
||
|
|
||
|
* Makefile.in (OBJS): Add df.o
|
||
|
(df.o): Add dependencies.
|
||
|
* basic-block.h (flow_depth_first_order_compute): Declare.
|
||
|
* flow.c (flow_depth_first_order_compute): No longer declare.
|
||
|
Make external.
|
||
|
* df.c, df.h: New files.
|
||
|
|
||
|
2001-06-28 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* config/i386/i386.md: Global update to use new string syntax
|
||
|
where it will improve readability. Warning fixes:
|
||
|
(*truncdfsf2_2): Abort if which_alternative is not 0 or 1.
|
||
|
(*adddi_1_rex64, *adddi_2_rex64, *adddi_3_rex64,
|
||
|
*adddi_4_rex64, *adddi_5_rex64): Cast 1 to unsigned int.
|
||
|
|
||
|
* read-rtl.c: Syntactic sugar for C embedded in strings in
|
||
|
machine descriptions.
|
||
|
(read_string): Break inner loop into separate function. Takes
|
||
|
an int. Dispatch to read_quoted_string or read_braced_string
|
||
|
as appropriate. Automatically insert a leading star on braced
|
||
|
strings if STAR_IF_BRACED is true.
|
||
|
(read_quoted_string, read_braced_string): New functions.
|
||
|
* doc/rtl.texi, doc/md.texi: Document new syntax. Update
|
||
|
examples to match.
|
||
|
|
||
|
* rtl.c: Split RTL reader (read_rtx, read_skip_spaces,
|
||
|
traverse_md_constants, fatal_with_file_and_line,
|
||
|
fatal_expected_char, read_name, read_string, def_hash,
|
||
|
def_name_eq_p, read_constants, and related data) to its own
|
||
|
file. Weed out now-unnecessary #includes.
|
||
|
* read-rtl.c: New file.
|
||
|
* Makefile.in (HOST_RTL): Add read-rtl.o.
|
||
|
(read-rtl.o): New rule.
|
||
|
(rtl.o, $(HOST_PREFIX_1)rtl.o): Update dependencies.
|
||
|
* doc/gcc.texi (Passes): Talk briefly about the support
|
||
|
library used by genfoo.
|
||
|
* doc/rtl.texi (Reading RTL): read_rtx is not available in the
|
||
|
compiler itself.
|
||
|
|
||
|
2001-06-28 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
* config/darwin.h (REGISTER_TARGET_PRAGMAS): Define.
|
||
|
* config/darwin-c.c: New file.
|
||
|
* config/darwin-protos.h: Declare new functions.
|
||
|
* config/rs6000/t-darwin (darwin-c.o): New rule.
|
||
|
* config.gcc (powerpc-*-darwin*): Define c_target_objs and
|
||
|
cxx_target_objs.
|
||
|
* doc/extend.texi (Pragmas): New section.
|
||
|
|
||
|
Thu Jun 28 20:13:11 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* flow.c (try_merge_block): Rename to try_optimize_cfg;
|
||
|
do basic simplifications on the CFG.
|
||
|
(is_forwarder_block_p, can_fallthru, try_redirect_by_replacing_jump,
|
||
|
try_simplify_condjump): New.
|
||
|
(redirect_edge_and_branch): Try replace jump insn.
|
||
|
(flow_delete_insn): Handle deleting of ADDR_VEC insns.
|
||
|
|
||
|
* basic-block.h (FALLTHRU_EDGE, BRANCH_EDGE): New macros.
|
||
|
|
||
|
Thu Jun 28 11:19:42 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* ssa-dce.c (eliminate_dead_code): Properly handle control
|
||
|
dependencies implied by PHI nodes.
|
||
|
|
||
|
* ssa-dce.c (eliminate_dead_code): Remove fake edges from the
|
||
|
CFG after dead code elimination is complete.
|
||
|
|
||
|
2001-06-28 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||
|
|
||
|
* gthr-posix.h [LIBOBJC]: Add weak definitions of
|
||
|
sched_get_priority_max, sched_get_priority_min.
|
||
|
|
||
|
2001-06-28 Gabriel Dos Reis <gdr@codesourcery.com>
|
||
|
|
||
|
* diagnostic.c (default_print_error_function): Tweak.
|
||
|
(report_error_function): Likewise.
|
||
|
* toplev.h (default_print_error_function): Move to...
|
||
|
* diagnostic.h: ...here. Add a `diagnostic_context *' parameter.
|
||
|
* tree.h (print_error_function): Move to...
|
||
|
* diagnostic.h: ...here. Add a `diagnostic_context *' parameter.
|
||
|
|
||
|
Thu Jun 28 06:16:45 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* expr.c (expand_assignment): When have varying-length object,
|
||
|
make MEM a BLKmode.
|
||
|
(expand_expr, case ADDR_EXPR): Use SAVE_EXPR_RTL after putting
|
||
|
SAVE_EXPR stack in case we had a SUBREG.
|
||
|
|
||
|
Thu Jun 28 10:31:06 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (cmp?i): Simplify; refuse immediate operand
|
||
|
in alternative 0
|
||
|
* i386.c (cmpsi_operand): Refuse constants.
|
||
|
|
||
|
* i386.md (movsi_insv_1, movsi_insv_1_rex64): Allow immediate operand.
|
||
|
|
||
|
* flow.c (block_label, redirect_edge_and_branch): Split out from ....
|
||
|
(split_edge) .... here;
|
||
|
|
||
|
2001-06-28 Neil Booth <neil@cat.daikokuya.demon.co.uk>
|
||
|
|
||
|
* i386/i386.c (ix86_valid_type_attribute_p): Give external
|
||
|
linkage, move declaration to...
|
||
|
* i386/i386-protos.h: ...here.
|
||
|
|
||
|
2001-06-27 H.J. Lu (hjl@gnu.org)
|
||
|
|
||
|
* build-make (CC): Removed.
|
||
|
(HOST_CC): Set to $(CC_FOR_BUILD).
|
||
|
(HOST_CFLAGS): Replace $(CFLAGS) with $(CFLAGS_FOR_BUILD).
|
||
|
Fix a typo in comments.
|
||
|
|
||
|
* configure.in: Set CFLAGS to $(CFLAGS_FOR_BUILD) when
|
||
|
generating auto-build.h for canadian cross compile. Set CC
|
||
|
to `"${CC_FOR_BUILD}"' instead of just `${CC_FOR_BUILD}'.
|
||
|
Save/restore CFLAGS.
|
||
|
* configure: Regenerated.
|
||
|
|
||
|
2001-06-27 Jim Wilson <wilson@redhat.com>
|
||
|
|
||
|
* emit-rtl.c (gen_highpart): Call validize_mem.
|
||
|
|
||
|
2001-06-27 Bruce Korb <bkorb@gnu.org>
|
||
|
|
||
|
* fixinc/inclhack.def(hpux11_cpp_pow_inline): new, but real similar to
|
||
|
hpux10_cpp_pow_inline. Not similar enough.
|
||
|
(solaris_mutex_init): renamed. PTHREAD_*_INITIALIZER is a problem for
|
||
|
all Solaris versions. This fix patches MUTEX and COND initializers,
|
||
|
the RWLOCK one will wait for someone to complain. For now, anyway.
|
||
|
(uw7_byteorder_fix): It was looking for the byteorder.h file in the
|
||
|
wrong directory.
|
||
|
|
||
|
2001-06-27 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
* objc/objc-act.c (handle_impent): Rewrite to be more portable
|
||
|
and to use ASM_DECLARE_CLASS_REFERENCE.
|
||
|
* config/darwin.h (ASM_DECLARE_CLASS_REFERENCE): Rename from
|
||
|
undocumented DECLARE_CLASS_REFERENCE, add file argument.
|
||
|
* doc/tm.texi (ASM_DECLARE_CLASS_REFERENCE): Document.
|
||
|
|
||
|
Wed Jun 27 18:01:09 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* simplify-rtx.c (simplify_rtx): Canonicalize commutative expressions
|
||
|
by putting complex operands first and constants second.
|
||
|
|
||
|
2001-06-27 Gabriel Dos Reis <gdr@codesourcery.com>
|
||
|
|
||
|
* diagnostic.h: Add documentation. Make macros polymorphic.
|
||
|
* diagnostic.c (ideal_line_wrap_cutoff): Remove
|
||
|
definition. Replace with diagnostic_line_cutoff.
|
||
|
(prefixing_policy): Remove. Replace with diagnostic_prefixing_rule.
|
||
|
|
||
|
2001-06-27 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/c-tree.texi, doc/contrib.texi, doc/cpp.texi,
|
||
|
doc/cppinternals.texi, doc/extend.texi, doc/gcc.texi,
|
||
|
doc/gcov.texi, doc/install-old.texi, doc/install.texi,
|
||
|
doc/invoke.texi, doc/md.texi, doc/rtl.texi, doc/tm.texi: Replace
|
||
|
. at end of sentences preceded by a capital letter with @..
|
||
|
|
||
|
2001-06-26 Daniel Berlin <dan@cgsoftware.com>
|
||
|
|
||
|
* doc/invoke.texi: Add description of max-gcse-passes param.
|
||
|
|
||
|
* gcse.c (gcse_main): Use MAX_GCSE_PASSES instead of MAX_PASSES.
|
||
|
(MAX_PASSES): Remove now unneeded macro.
|
||
|
|
||
|
* params.h (MAX_GCSE_PASSES): New macro, to get parameter value of
|
||
|
max-gcse-passes param.
|
||
|
|
||
|
* params.def (PARAM_MAX_GCSE_PASSES): New parameter, controlling
|
||
|
maximum number of GCSE passes to run. Defaults to 1 (which is what
|
||
|
MAX_PASSES in gcse.c used to be).
|
||
|
|
||
|
2001-06-27 Neil Booth <neil@cat.daikokuya.demon.co.uk>
|
||
|
|
||
|
* system.h (TARGET_ESC): Move to ...
|
||
|
* defaults.h (TARGET_ESC): ... here.
|
||
|
* target-def.h (TARGET_VALID_DECL_ATTRIBUTE,
|
||
|
TARGET_VALID_TYPE_ATTRIBUTE): Default to a no-op handler.
|
||
|
* tree.c (default_valid_attribute_p): New.
|
||
|
(valid_machine_attribute): Handlers can not be NULL.
|
||
|
* tree.h (default_valid_attribute_p): New.
|
||
|
* doc/tm.texi: Document TARGET_ESC.
|
||
|
* cp/decl2.c (import_export_class): Update.
|
||
|
|
||
|
2001-06-26 Bruce Korb <bkorb@gnu.org>
|
||
|
|
||
|
* gcc/fixinc/fixincl.c(initialize): In very strict ANSI, you cannot
|
||
|
use preprocessing directives inside a string literal. Fixed.
|
||
|
|
||
|
2001-06-26 Jim Wilson <wilson@redhat.com>
|
||
|
|
||
|
* doc/tm.texi (MAX_LONG_DOUBLE_TYPE_SIZE, INTEL_EXTENDED_IEEE_FORMAT):
|
||
|
Document.
|
||
|
|
||
|
2001-06-27 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/cpp.texi, doc/cppinternals.texi, doc/extend.texi,
|
||
|
doc/gcc.texi, doc/install.texi, doc/invoke.texi, doc/md.texi,
|
||
|
doc/tm.texi: Use @: where necessary when a full stop does not end
|
||
|
a sentence.
|
||
|
|
||
|
2001-06-27 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/gcc.texi, doc/install.texi, doc/invoke.texi: Remove trailing
|
||
|
whitespace.
|
||
|
|
||
|
2001-06-26 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/c-tree.texi, doc/cpp.texi, doc/extend.texi, doc/gcc.texi,
|
||
|
doc/install.texi, doc/invoke.texi, doc/objc.texi, doc/rtl.texi,
|
||
|
doc/tm.texi: Use two spaces after ends of sentences.
|
||
|
|
||
|
2001-06-26 Daniel Berlin <dan@cgsoftware.com>
|
||
|
|
||
|
* toplev.c (display_help): Fix param thinko.
|
||
|
* Makefile.in: Fix params.h dependencies.
|
||
|
|
||
|
2001-06-26 Gabriel Dos Reis <gdr@codesourcery.com>
|
||
|
|
||
|
* toplev.c (decode_f_option): Adjust setting.
|
||
|
(toplev_main): Call diagnostic_initialize. Remove call to
|
||
|
reshape_diagnostic_buffer._
|
||
|
|
||
|
* diagnostic.h (struct output_buffer): Add new field format_decoder.
|
||
|
(diagnostic_format_decoder): New macro.
|
||
|
(diagnostic_prefixing_rule): Likewise.
|
||
|
(diagnostic_line_cutoff): Likewise.
|
||
|
(set_message_prefixing_rule): Remove.
|
||
|
|
||
|
* diagnostic.c (lang_printer): Remove.
|
||
|
(diagnostic_message_length_per_line): Likewise.
|
||
|
(current_prefixing_rule): Likewise.
|
||
|
(initialize_diagnostics): Rename to...
|
||
|
(diagnostic_initialize): ...this. Tweak.
|
||
|
(default_initialize_buffer): Remove.
|
||
|
(reshape_diagnostic_buffer): Likewise.
|
||
|
(init_output_buffer): Adjust prefixing rule setting.
|
||
|
(output_format): Use format_decoder from the output_buffer.
|
||
|
|
||
|
* c-lang.c (c_init): Adjust tree formatter setting.
|
||
|
|
||
|
2001-06-26 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||
|
|
||
|
* config/i386/sol2.h (CPP_SPEC): Pass -P for .S files.
|
||
|
|
||
|
2001-06-26 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* Makefile.in (TARGET_H, TARGET_DEF_H): New.
|
||
|
(c-decl.o, tree.o, c-typeck.o, $(out_object_file)): Update.
|
||
|
* c-decl.c (duplicate_decls): Use function pointer.
|
||
|
* c-typeck.c (common_type): Similarly.
|
||
|
* tree.c (valid_machine_attribute): Similarly.
|
||
|
(merge_machine_type_attributes): Rename merge_type_attributes.
|
||
|
(merge_machine_decl_attributes): Rename merge_decl_attributes.
|
||
|
(merge_dllimport_decl_attributes): New function.
|
||
|
* tree.h (merge_machine_type_attributes): Rename merge_type_attributes.
|
||
|
(merge_machine_decl_attributes): Rename merge_decl_attributes.
|
||
|
(merge_dllimport_decl_attributes): New prototype.
|
||
|
* target.h: New.
|
||
|
* target-def.h: New.
|
||
|
|
||
|
doc: (Joseph Myers)
|
||
|
* doc/gcc.texi, doc/tm.texi: Update documentation.
|
||
|
|
||
|
cp: Make-lang.in: Update dependencies.
|
||
|
* spew.c: Include target.h.
|
||
|
(duplicate_decls): Call target function.
|
||
|
* decl2.c: include target.h
|
||
|
(import_export_class): Use existence of target function pointer.
|
||
|
* typeck.c: Include target.h.
|
||
|
(qualify_type_recursive): Rename variable. Call target function.
|
||
|
(type_after_usual_arithmetic_conversions): Similarly.
|
||
|
(common_type): Similarly.
|
||
|
|
||
|
config: * 1750a/1750a.c, a29k/29k.c, alpha/alpha.c, arc/arc.c, arm/arm.c,
|
||
|
avr/avr.c, c4x/c4x.c, clipper/clipper.c, convex/convex.c,
|
||
|
d30v/d30v.c, dsp16xx/dsp16xx.c, elxsi/elxsi.c, fr30/fr30.c,
|
||
|
i370/i370.c, i386/i386.c, i860/i860.c, i960/i960.c, ia64/ia64.c,
|
||
|
m32r/m32r.c, m68hc11/m68hc11.c, m68k/m68k.c, m88k/m88k.c,
|
||
|
mips/mips.c, mn10200/mn10200.c, mn10300/mn10300.c, ns32k/ns32k.c,
|
||
|
pa/pa.c, pdp11/pdp11.c, pj/pj.c, romp/romp.c, rs6000/rs6000.c,
|
||
|
sh/sh.c, sparc/sparc.c, v850/v850.c, vax/vax.c, we32k/we32k.c)
|
||
|
: Include target.h and target-def.h. Define target.
|
||
|
|
||
|
* arc/arc-protos.h (arc_valid_machine_decl_attribute): Remove.
|
||
|
* arc/arc.c (arc_valid_machine_decl_attribute): Rename
|
||
|
arc_valid_decl_attribute, make static.
|
||
|
* arc/arc.h (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
|
||
|
* arm/arm-protos.h (arm_valid_machine_decl_attribute,
|
||
|
arm_valid_type_attribute_p, arm_pe_valid_machine_decl_attribute,
|
||
|
arm_pe_merge_machine_decl_attributes): Remove.
|
||
|
* arm/arm.c (arm_valid_machine_decl_attribute_p): Rename
|
||
|
arm_valid_decl_attribute_p, make static.
|
||
|
(arm_pe_valid_decl_attribute_p): Move from pe.c.
|
||
|
* arm/pe.c (arm_pe_valid_machine_decl_attribute_p): Move to arm.c.
|
||
|
(arm_pe_merge_machine_decl_attributes): Move to tree.c.
|
||
|
* arm/arm.h (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
|
||
|
* arm/coff.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
|
||
|
* arm/elf.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
|
||
|
* arm/pe.h (TARGET_DLLIMPORT_DECL_ATTRIBUTES): New.
|
||
|
(VALID_MACHINE_TYPE_ATTRIBUTE, VALID_MACHINE_DECL_ATTRIBUTE): Remove.
|
||
|
* avr/avr-protos.h (valid_machine_type_attribute,
|
||
|
valid_machine_decl_attribute): Remove.
|
||
|
* avr/avr.c (valid_machine_type_attribute,
|
||
|
valid_machine_decl_attribute): Rename and make static.
|
||
|
* avr/avr.h (VALID_MACHINE_TYPE_ATTRIBUTE,
|
||
|
VALID_MACHINE_DECL_ATTRIBUTE): Remove.
|
||
|
* c4x/c4x-protos.h (c4x_valid_type_attribute_p): Remove.
|
||
|
* c4x/c4x.c (c4x_valid_type_attribute_p): Make static.
|
||
|
* c4x/c4x.h (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
|
||
|
* d30v/d30v.h: Remove obsolete comments.
|
||
|
* h8300/h8300-protos.h (h8300_valid_machine_decl_attribute): Remove.
|
||
|
* h8300/h8300.c (h8300_valid_machine_decl_attribute): Rename, make
|
||
|
static.
|
||
|
* h8300/h8300.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
|
||
|
* i386/cygwin.h (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Define.
|
||
|
(i386_pe_merge_decl_attributes, MERGE_MACHINE_DECL_ATTRIBUTES,
|
||
|
i386_pe_valid_type_attributes_p): Remove.
|
||
|
* i386/i386-protos.h (ix86_valid_decl_attribute_p,
|
||
|
ix86_valid_type_attribute_p): Remove.
|
||
|
* i386/i386.c (ix86_valid_decl_attribute_p): Remove.
|
||
|
(ix86_valid_type_attribute_p): Make static.
|
||
|
* i386/i386.h (VALID_MACHINE_DECL_ATTRIBUTE,
|
||
|
VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
|
||
|
* i386/winnt.c (i386_pe_merge_decl_attributes): Move to tree.c.
|
||
|
* ia64/ia64-protos.h (ia64_valid_type_attribute): Remove.
|
||
|
* ia64/ia64.c (ia64_valid_type_attribute): Make static.
|
||
|
* ia64/ia64.h (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
|
||
|
* m32r/m32r-protos.h (m32r_valid_machine_decl_attribute): Remove.
|
||
|
* m32r/m32r.c (m32r_valid_decl_attribute): Make static.
|
||
|
* m32r/m32r.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
|
||
|
* m68hc11/m68hc11-protos.h (m68hc11_valid_decl_attribute_p,
|
||
|
m68hc11_valid_type_attribute_p): Remove.
|
||
|
* m68hc11/m68hc11.c (m68hc11_valid_decl_attribute_p): Remove.
|
||
|
(m68hc11_valid_type_attribute_p): Make static.
|
||
|
* m68hc11/m68hc11.h (VALID_MACHINE_DECL_ATTRIBUTE,
|
||
|
VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
|
||
|
* mcore/mcore-protos.h (mcore_valid_machine_decl_attribute,
|
||
|
mcore_merge_machine_decl_attribute): Remove.
|
||
|
* mcore/mcore.c (mcore_valid_machine_decl_attribute): Rename,
|
||
|
make static.
|
||
|
(mcore_merge_machine_decl_attributes): Move to tree.c.
|
||
|
* mcore/mcore.h (VALID_MACHINE_DECL_ATTRIBUTE,
|
||
|
VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
|
||
|
(TARGET_DLLIMPORT_DECL_ATTRIBUTES): Define.
|
||
|
* ns32k/ns32k-protos.h (ns32k_valid_decl_attribute_p,
|
||
|
ns32k_valid_type_attribute_p): Remove.
|
||
|
* ns32k/ns32k.c (ns32k_valid_decl_attribute_p): Remove.
|
||
|
(ns32k_valid_type_attribute_p): Make static.
|
||
|
* ns32k/ns32k.h (VALID_MACHINE_DECL_ATTRIBUTE,
|
||
|
VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
|
||
|
* rs6000/rs6000-protos.h (rs6000_valid_decl_attribute_p,
|
||
|
rs6000_valid_type_attribute_p): Remove.
|
||
|
* rs6000/rs6000.c (rs6000_valid_decl_attribute_p): Remove.
|
||
|
(rs6000_valid_type_attribute_p): Make static.
|
||
|
* rs6000/rs6000.h (VALID_MACHINE_DECL_ATTRIBUTE,
|
||
|
VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
|
||
|
* sh/sh-protos.h (sh_valid_machine_decl_attribute): Remove.
|
||
|
* sh/sh.c (sh_valid_machine_decl_attribute): Rename, make static.
|
||
|
* sh/sh.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
|
||
|
* v850/v850-protos.h (v850_valid_machine_decl_attribute): Remove.
|
||
|
* v850/v850.c (v850_valid_machine_decl_attribute): Rename, make static.
|
||
|
* v850/v850.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
|
||
|
|
||
|
2001-06-26 Vladimir Makarov <vmakarov@toke.toronto.redhat.com>
|
||
|
|
||
|
* glimits.h (USHRT_MAX): Use unsigned suffix if int can not hold
|
||
|
it.
|
||
|
|
||
|
2001-06-26 Gabriel Dos Reis <gdr@codesourcery.com>
|
||
|
|
||
|
* diagnostic.h (struct diagnostic_context): Add new field.
|
||
|
(lang_diagnostic_starter, lang_diagnostic_finalizer): Remove
|
||
|
declaratons.
|
||
|
(global_dc): Declare.
|
||
|
* diagnostic.c (global_diagnostic_context): New variable.
|
||
|
(global_output_buffer): Remove.
|
||
|
(global_dc): Define.
|
||
|
(lang_diagnostic_starter, lang_diagnostic_finalizer): Remove
|
||
|
definitions.
|
||
|
(initialize_diagnostics): Adjust initialization.
|
||
|
(set_diagnostic_context): Adjust setting.
|
||
|
|
||
|
2001-06-26 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||
|
|
||
|
* config/mips/iris5.h (UNALIGNED_INT_ASM_OP,
|
||
|
UNALIGNED_SHORT_ASM_OP): Define.
|
||
|
* config/mips/iris6.h (UNALIGNED_INT_ASM_OP,
|
||
|
UNALIGNED_SHORT_ASM_OP): Undef.
|
||
|
|
||
|
Tue Jun 26 12:40:12 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (float_truncate splitter, and to mov splitters): Add
|
||
|
reload_completed; fix operand predicate.
|
||
|
|
||
|
* haifa-sched.c (sched_init): Do not split insns.
|
||
|
* toplev.c (rest_of_compilation): Call split_all_insns before
|
||
|
sched1 pass; simplify condition of post-reload splitter;
|
||
|
call split_all_insn before sched2 pass.
|
||
|
|
||
|
2001-06-26 Gabriel Dos Reis <gdr@codesourcery.com>
|
||
|
|
||
|
* diagnostic.h (diagnostic_prefixing_rule_t): New enum type.
|
||
|
(set_message_prefixing_rule): Adjust prototype.
|
||
|
* diagnostic.c (current_prefixing_rule): Adjust type.
|
||
|
|
||
|
2001-06-26 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* defaults.h: Default escape sequences to ASCII.
|
||
|
* config/i370/i370.h: Adjust for ASCII default.
|
||
|
* config/1750a/1750a.h: Remove escape sequence definitions.
|
||
|
* config/a29k/a29k.h: Similarly.
|
||
|
* config/alpha/alpha.h: Similarly.
|
||
|
* config/arc/arc.h: Similarly.
|
||
|
* config/arm/arm.h: Similarly.
|
||
|
* config/avr/avr.h: Similarly.
|
||
|
* config/c4x/c4x.h: Similarly.
|
||
|
* config/clipper/clipper.h: Similarly.
|
||
|
* config/convex/convex.h: Similarly.
|
||
|
* config/d30v/d30v.h: Similarly.
|
||
|
* config/dsp16xx/dsp16xx.h: Similarly.
|
||
|
* config/elxsi/elxsi.h: Similarly.
|
||
|
* config/fr30/fr30.h: Similarly.
|
||
|
* config/h8300/h8300.h: Similarly.
|
||
|
* config/i386/i386.h: Similarly.
|
||
|
* config/i860/i860.h: Similarly.
|
||
|
* config/i960/i960.h: Similarly.
|
||
|
* config/ia64/ia64.h: Similarly.
|
||
|
* config/m32r/m32r.h: Similarly.
|
||
|
* config/m68hc11/m68hc11.h: Similarly.
|
||
|
* config/m68k/m68k.h: Similarly.
|
||
|
* config/m88k/m88k.h: Similarly.
|
||
|
* config/mcore/mcore.h: Similarly.
|
||
|
* config/mips/mips.h: Similarly.
|
||
|
* config/mn10200/mn10200.h: Similarly.
|
||
|
* config/mn10300/mn10300.h: Similarly.
|
||
|
* config/ns32k/ns32k.h: Similarly.
|
||
|
* config/pa/pa.h: Similarly.
|
||
|
* config/pdp11/pdp11.h: Similarly.
|
||
|
* config/pj/pj.h: Similarly.
|
||
|
* config/romp/romp.h: Similarly.
|
||
|
* config/rs6000/rs6000.h: Similarly.
|
||
|
* config/sh/sh.h: Similarly.
|
||
|
* config/sparc/sparc.h: Similarly.
|
||
|
* config/v850/v850.h: Similarly.
|
||
|
* config/vax/vax.h: Similarly.
|
||
|
* config/we32k/we32k.h: Similarly.
|
||
|
* doc/tm.texi: Update documentation.
|
||
|
|
||
|
2001-06-26 Gabriel Dos Reis <gdr@merlin.codesourcery.com>
|
||
|
|
||
|
* diagnostic.c (digit_buffer): Remove as global. Move to...
|
||
|
* diagnostic.h (struct output_buffer): ... here.
|
||
|
* diagnostic.c (output_formatted_integer): Adjust use of digit_buffer.
|
||
|
|
||
|
2001-06-25 Steve Ellcey <sje@cup.hp.com>
|
||
|
|
||
|
* config.gcc (ia64*-*-hpux*): Add ia64/hpux_longdouble.h to tm_file.
|
||
|
Define tmake_file to include ia64/t-hpux.
|
||
|
* real.c (INTEL_EXTENDED_IEEE_FORMAT): Test for value instead of
|
||
|
testing to see if it is defined.
|
||
|
* real.h (INTEL_EXTENDED_IEEE_FORMAT): Likewise. Default to 0 if
|
||
|
undefined.
|
||
|
* config/ia64/hpux_longdouble.h: New.
|
||
|
* config/ia64/ia64.c (hfa_element_mode): Add comment about incorrect
|
||
|
handling of long doubles.
|
||
|
(ia64_function_arg, ia64_function_value): Add checks for TFmode
|
||
|
and INTEL_EXTENDED_IEEE_FORMAT.
|
||
|
* config/ia64/ia64.h (INTEL_EXTENDED_IEEE_FORMAT): Define to one.
|
||
|
(HARD_REGNO_NREGS, HARD_REGNO_MODE_OK, LIBCALL_VALUE): Add checks for
|
||
|
TFmode and INTEL_EXTENDED_IEEE_FORMAT.
|
||
|
* config/ia64/ia64.md (all TFmode patterns): Test
|
||
|
INTEL_EXTENDED_IEEE_FORMAT in condition.
|
||
|
(floatdidf2, floatdisf2): New, for !INTEL_EXTENDED_IEEE_FORMAT.
|
||
|
* config/ia64/quadlib.c: New.
|
||
|
* config/ia64/t-hpux: New.
|
||
|
* config/i386/i386.h (INTEL_EXTENDED_IEEE_FORMAT): Define to one.
|
||
|
|
||
|
2001-06-25 Jim Wilson <wilson@redhat.com>
|
||
|
|
||
|
* config/i960/t-960bare (i960-c.o): Add missing header dependencies.
|
||
|
* config/i960/t-vxworks960: Likewise.
|
||
|
|
||
|
2001-06-25 Dale Johannesen <dalej@apple.com>
|
||
|
|
||
|
* bitmap.c (bitmap_last_bit_set): Fix a non-c89 usage (null actual
|
||
|
argument to macro).
|
||
|
|
||
|
Mon Jun 25 11:10:51 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (movsi_insv_1, movsi_insv_1_rex64): Fix constraints.
|
||
|
|
||
|
2001-06-25 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/c-tree.texi, doc/contrib.texi, doc/extend.texi,
|
||
|
doc/gcc.texi, doc/gcov.texi, doc/install.texi, doc/invoke.texi,
|
||
|
doc/md.texi, doc/rtl.texi, doc/tm.texi: Be more consistent about
|
||
|
the use of "GCC" and related terms.
|
||
|
* doc/gcc.1, doc/gcov.1: Regenerate.
|
||
|
|
||
|
2001-06-24 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/extend.texi, doc/gcc.texi, doc/install-old.texi,
|
||
|
doc/invoke.texi, doc/md.texi, doc/rtl.texi, doc/tm.texi: Remove
|
||
|
uses of @refill.
|
||
|
|
||
|
Sun Jun 24 21:21:49 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* (movsi_insv_1, movsi_insv_1_rex64): Allow immediate operand.
|
||
|
|
||
|
2001-06-24 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* builtins.c (expand_builtin_expect_jump): Disable if the
|
||
|
expression can't be re-evaluated.
|
||
|
|
||
|
2001-06-24 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
|
||
|
* config/arm/arm.c (arm_compute_save_reg_mask): For FIQ interrupt
|
||
|
handlers examine register r0-r7, for other interrupt handlers
|
||
|
examine r0-r12. If the interrupt handler is not a leaf function
|
||
|
save all call clobbered registers.
|
||
|
(arm_output_epilogue): If the prologue has pushed the IP register,
|
||
|
restore it here.
|
||
|
(Arm_expand_prologue): For interrupt functions that need the frame
|
||
|
pointer, push the IP register before it is corrupted.
|
||
|
|
||
|
* config/arm/arm.h (ARM_SIGN_EXTEND): Fix compile time warnings
|
||
|
about the use of signed and unsigned quantities in a conditional.
|
||
|
|
||
|
2001-06-23 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/alpha/crtfastmath.c: New file.
|
||
|
* config/alpha/t-crtfm: New file.
|
||
|
* config/alpha/elf.h (ENDFILE_SPEC): Use crtfastmath.o.
|
||
|
* config/alpha/osf.h (ENDFILE_SPEC): Likewise.
|
||
|
* config/alpha/t-crtbe (EXTRA_PARTS): Add pieces defined here.
|
||
|
* config.gcc (alpha-{linux,freebsd,netbsd,osf}): Use alpha/t-crtfm;
|
||
|
do not set extra_parts here.
|
||
|
|
||
|
2001-06-24 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/install-old.texi: Remove more documentation of configure
|
||
|
options.
|
||
|
* doc/install.texi: Add it here.
|
||
|
|
||
|
Sat Jun 23 19:40:05 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386-protos.h (emit_i387_cw_initialization): Declare.
|
||
|
* i386.md (movsi_insv_1): Remove '*'.
|
||
|
(fix_trunc?f?i2): Revamp to use control word parameters.
|
||
|
(fix_trunc?i_1): Likewise; update splitters.
|
||
|
(fix splitter): Remove.
|
||
|
* i386.c (MAX_386_STACK_LOCALS): set to 3.
|
||
|
(emit_i387_cw_initialization): New function.
|
||
|
(output_fix_trunc): Do not initialize control word;
|
||
|
kill dead code; simplify.
|
||
|
|
||
|
2001-06-23 Neil Booth <neil@cat.daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppmacro.c (make_string_token): Avoid warning.
|
||
|
(cpp_macro_definition): Prepend the macro name. Update
|
||
|
comments.
|
||
|
* cppmain.c (cb_define, dump_macro): Update for changes
|
||
|
to cpp_macro_definition.
|
||
|
|
||
|
Sat Jun 23 10:20:03 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* flow.c (attempt_auto_inc, try_pre_increment_1): Fix typo.
|
||
|
|
||
|
Sat Jun 23 01:23:59 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* flow.c (mark_set_1, attempt_auto_inc, mark_used_reg,
|
||
|
try_pre_increment_1): compute REG_FREQ using bb->frequency.
|
||
|
|
||
|
* regclass.c (loop_cost): Kill.
|
||
|
(frequency): New global variable.
|
||
|
(record_operand_costs): Replace loop_cost by frequency.
|
||
|
(scan_one_insn): Likewise.
|
||
|
(regclass): Likewise; set frequency according to bb->frequency.
|
||
|
|
||
|
* flow.c (split_edge): Set frequency.
|
||
|
|
||
|
Sat Jun 23 01:16:42 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* predict.c (block_info_def): Add nvisited.
|
||
|
(propagate_freq): Count nvisited; re-queue delayed blocks; handle
|
||
|
irreducible regions.
|
||
|
|
||
|
* flow.c (dump_edge_info): Dump the probability of edge.
|
||
|
(combine_predictions_for_insn): Dump the basic block.
|
||
|
|
||
|
2001-06-22 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/gcc.texi: Update documentation of source files of C
|
||
|
compiler.
|
||
|
|
||
|
2001-06-22 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* doc/invoke.texi (-funsafe-math-optimizations): Document its
|
||
|
possible effects at link time.
|
||
|
|
||
|
2001-06-22 Diego Novillo <dnovillo@redhat.com>
|
||
|
|
||
|
* basic-block.h (dump_edge_info): Declare.
|
||
|
(clear_edges): Declare.
|
||
|
(mark_critical_edges): Declare.
|
||
|
* flow.c (dump_edge_info): Remove static declaration.
|
||
|
(clear_edges): Ditto.
|
||
|
(mark_critical_edges): Ditto.
|
||
|
(free_basic_block_vars): Only clear edges and free basic block
|
||
|
array if basic_block_info is not NULL.
|
||
|
* ssa.c (compute_dominance_frontiers): Remove static declaration.
|
||
|
* ssa.h (compute_dominance_frontiers): Declare.
|
||
|
|
||
|
2001-06-22 Toshiyasu Morita (toshiyasu.morita@hsa.hitachi.com)
|
||
|
|
||
|
* predict.c: (expected_value_to_br_prob): Check for const_true_rtx
|
||
|
instead of const1_rtx for true case.
|
||
|
|
||
|
2001-06-22 David Mosberger <davidm@hpl.hp.com>
|
||
|
|
||
|
* config/ia64/crtfastmath.c: New file.
|
||
|
* config/ia64/t-ia64 (EXTRA_PARTS): Include it.
|
||
|
* config/ia64/linux.h (ENDFILE_SPEC): New.
|
||
|
|
||
|
2001-06-22 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
|
||
|
|
||
|
* config/h8300/h8300.c (asm_file_start): Remove reference to
|
||
|
"release F-1".
|
||
|
|
||
|
2001-06-22 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* c-common.c (verify_tree): Check for x being NULL.
|
||
|
* doc/c-tree.texi: Document COMPOUND_BODY of an empty
|
||
|
COMPOUND_STMT.
|
||
|
Fixes PR c/3259.
|
||
|
|
||
|
2001-06-22 DJ Delorie <dj@redhat.com>
|
||
|
|
||
|
* config/arm/arm.h (struct machine_function): Remove ra_rtx.
|
||
|
* config/arm/arm.c (arm_mark_machine_status): Remove ra_rtx.
|
||
|
(arm_return_addr): Use get_hard_reg_initial_val et al.
|
||
|
* config/d30v/d30v.h (struct machine_function): Remove ra_rtx.
|
||
|
* config/d30v/d30v.c (d30v_mark_machine_status): Remove ra_rtx.
|
||
|
(d30v_return_addr): Use get_hard_reg_initial_val et al.
|
||
|
* config/rs6000/rs6000.h (struct machine_function): Remove ra_rtx.
|
||
|
* config/rs6000/rs6000.c (rs6000_override_options): Don't set
|
||
|
mark_machine_status.
|
||
|
(rs6000_mark_machine_status): Remove.
|
||
|
(rs6000_return_addr): Use get_hard_reg_initial_val.
|
||
|
(rs6000_ra_ever_killed): Use has_hard_reg_initial_val.
|
||
|
* config/v850/v850.h (INIT_EXPANDERS): Delete.
|
||
|
* config/v850/v850.c (struct machine_function): Delete.
|
||
|
(v850_init_machine_status): Delete.
|
||
|
(v850_mark_machine_status): Delete.
|
||
|
(v850_free_machine_status): Delete.
|
||
|
(v850_return_addr): Use get_hard_reg_initial_val.
|
||
|
(v850_init_expanders): Delete.
|
||
|
|
||
|
Fri Jun 22 19:20:59 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* predict.c (estimate_bb_frequencies): Do not handle conditional
|
||
|
jumps jumping to fallthru basic block as conditional jumps.
|
||
|
|
||
|
Fri Jun 22 19:11:28 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* regs.h (struct reg_info_def): Add freq field.
|
||
|
(REG_N_REFS): Update comment.
|
||
|
(REG_FREQ): New.
|
||
|
* regclass.c (scan_one_insn): Update REG_FREQ.
|
||
|
* flow.c (mark_set_1): Update REG_FREQ, make REG_N_SETS unweighted.
|
||
|
(attempt_auto_inc): Likewise.
|
||
|
(mark_used_reg): Likewise.
|
||
|
(try_pre_increment_1): Likewise.
|
||
|
* local-alloc.c (struct qty): Add freq field.
|
||
|
(alloc_qty): Set freq.
|
||
|
(update_equiv_regs): Set REG_FREQ.
|
||
|
(QTY_CMP_PRI): Use freq.
|
||
|
(combine_regs): Update qty->freq.
|
||
|
* global.c (struct allocno): Update comment for n_refs;
|
||
|
add freq field.
|
||
|
(local_reg_freq): New array.
|
||
|
(global_alloc): Update freq field;
|
||
|
allocate and initialize local_reg_freq.
|
||
|
(allocno_compare): Use freq field.
|
||
|
(find_reg): Likewise.
|
||
|
* reload1.c (count_pseudo): Use freq isntead of n_refs.
|
||
|
(count_spilled_pseudo): Likewise.
|
||
|
|
||
|
* tm.texi (GCOV_TYPE_SIZE): Document.
|
||
|
* basic-block.h (gcov_type): Define.
|
||
|
(struct edge_def): Use gcov_type for count field.
|
||
|
(struct basic_block_def): Likewise.
|
||
|
* defaults.h (GCOV_TYPE_SIZE): Define.
|
||
|
* final.c (end_final): Use GCOV_TYPE_SIZE.
|
||
|
* flow.c (dump_edge_info, dump_flow_info, dump_bb): Print count fields
|
||
|
using HOST_WIDEST_INT_PRINT_DEC.
|
||
|
* gcov-io.h (__fetch_gcov_type, __store_gcov_type, __read_gcov_type,
|
||
|
__write_gcov_type): New.
|
||
|
(store_long): Remove.
|
||
|
* gcov.c (gcov_type): Set default.
|
||
|
(struct adj_list): Use gcov_type for arc_count.
|
||
|
(bb_info): Use gcov_type for succ_count, pred_count and exec_count.
|
||
|
(create_program_flow_graph): Read arc_count properly.
|
||
|
(solve_program_flow_graph): 'total' is gcov_type.
|
||
|
(output_data): Line_counts is gcov_type, print it properly.
|
||
|
* libgcc2.c (struct bb): Counts is gcov_type.
|
||
|
(__bb_exit_func): Use __read_gcov_type and __write_gcov_type.
|
||
|
* profile.c (LONG_TYPE_SIZE, LONG_LONG_TYPE_SIZE): Set default.
|
||
|
(GCOV_TYPE_SIZE): Define.
|
||
|
(struct bb_info): succ_count and pred_count is gcov_type.
|
||
|
(compute_branch_probabilities): Use __read_gcov_type,
|
||
|
print read edges to the dump file.
|
||
|
(total): Is gcov_type.
|
||
|
(gen_edge_profiler): Use GCOV_TYPE_SIZE.
|
||
|
|
||
|
2001-06-14 Andrew Haley <aph@cambridge.redhat.com>
|
||
|
|
||
|
* optabs.c (emit_libcall_block): When using non-call exceptions,
|
||
|
don't mark libcalls never throwing.
|
||
|
|
||
|
2001-06-21 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
* objc/objc-act.c (hash_init): Use xcalloc.
|
||
|
|
||
|
2001-06-21 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* flow.c (entry_exit_blocks): Initialize frequency.
|
||
|
(split_block): Copy it.
|
||
|
(dump_flow_info): Dump it.
|
||
|
|
||
|
Thu Jun 21 22:15:10 2001 J"orn Rennecke <amylaar@redhat.com>
|
||
|
|
||
|
* sh.c (barrier_align): Also recognize branch-around-a-jump-sequence
|
||
|
from machine-depedent_reorg for purposes of alignment supression
|
||
|
when no delay slot insn has been added.
|
||
|
|
||
|
2001-06-21 Neil Booth <neil@cat.daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppmacro.c (make_string_token): Null terminate.
|
||
|
|
||
|
2001-06-21 DJ Delorie <dj@redhat.com>
|
||
|
|
||
|
* config/alpha/alpha.h (struct machine_function): Remove.
|
||
|
* config/alpha/alpha.c (integrate.h): Include.
|
||
|
(override_options): Don't set up machine_status hooks.
|
||
|
(alpha_init_machine_status): Remove.
|
||
|
(alpha_mark_machine_status): Remove.
|
||
|
(alpha_free_machine_status): Remove.
|
||
|
(alpha_return_addr): Use get_hard_reg_initial_val.
|
||
|
(alpha_gp_save_rtx): Likewise.
|
||
|
(alpha_ra_ever_killed): Use has_hard_reg_initial_val.
|
||
|
|
||
|
2001-06-20 Aldy Hernandez <aldyh@redhat.com>
|
||
|
|
||
|
* config/sh/sh.md (interrupt_function): Use
|
||
|
current_function_interrupt.
|
||
|
(define_delay): Schedule in delay slot if TARGET_SH3, even if it is
|
||
|
an interrupt function.
|
||
|
|
||
|
* config/sh/sh.h (current_function_interrupt): Define extern.
|
||
|
|
||
|
* config/sh/sh.c (current_function_interrupt): New global.
|
||
|
(sh_expand_prologue): Set current_function_interrupt.
|
||
|
|
||
|
2001-06-21 Phil Edwards <pme@sources.redhat.com>
|
||
|
|
||
|
* doc/install.texi: Add 'c' to list of --enable-languages choices.
|
||
|
|
||
|
2001-06-21 DJ Delorie <dj@redhat.com>
|
||
|
|
||
|
* integrate.c (mark_hard_reg_initial_vals): Check for NULL.
|
||
|
|
||
|
* integrate.c (ggc.h): Include.
|
||
|
(initial_value_pair, initial_value_struct,
|
||
|
setup_initial_hard_reg_value_integration): Add prototypes.
|
||
|
(expand_inline_function): Call
|
||
|
setup_initial_hard_reg_value_integration.
|
||
|
(has_func_hard_reg_initial_val, get_func_hard_reg_initial_val,
|
||
|
get_hard_reg_initial_val, has_hard_reg_initial_val): New functions
|
||
|
to keep track of values present at the start of a function.
|
||
|
(mark_hard_reg_initial_vals): New, for gc.
|
||
|
(setup_initial_hard_reg_value_integration): New. Sets up pseudo
|
||
|
mappings for initial values.
|
||
|
(emit_initial_value_sets): New. Emits code to set initial value
|
||
|
pseudos.
|
||
|
* integrate.h: Add prototypes for new functions.
|
||
|
* function.h (struct function): Add hard_reg_initial_vals field.
|
||
|
* function.c (integrate.h): Include.
|
||
|
(mark_function_status): Call
|
||
|
mark_hard_reg_initial_vals.
|
||
|
* toplev.c (integrate.h): Include.
|
||
|
(rest_of_compilation): Call emit_initial_value_sets.
|
||
|
|
||
|
2001-06-21 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
* doc/contrib.texi, doc/cpp.texi, doc/cppinternals.texi,
|
||
|
doc/extend.texi, doc/gcc.texi, doc/install.texi, doc/invoke.texi,
|
||
|
doc/objc.texi, doc/tm.texi: Use the correct name "Objective-C"
|
||
|
everywhere instead of "Objective C".
|
||
|
|
||
|
2001-06-21 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/c-tree.texi, doc/contrib.texi, doc/extend.texi,
|
||
|
doc/gcc.texi, doc/install-old.texi, doc/install.texi,
|
||
|
doc/invoke.texi, doc/rtl.texi: Consistently use "front end" and
|
||
|
"back end" as nouns and "front-end" and "back-end" as adjectives.
|
||
|
|
||
|
Wed Jun 20 21:53:35 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* predict.c (estimate_probability): Fix loop bounds.
|
||
|
|
||
|
Wed Jun 20 19:10:48 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* toplev.c (rest_of_compilation): Run mark_constant_function
|
||
|
before profile-arcs.
|
||
|
|
||
|
Wed Jun 20 19:08:18 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* predict.c (estimate_loops_at_level, propagate_freq
|
||
|
estimate_bb_frequencies, count_to_freqs): New functions.
|
||
|
(estimate_probability): Call estimate_bb_frequencies.
|
||
|
* basic-block.h (basic_block_def): Add field "freq".
|
||
|
(BB_FREQ_MAX): New constant.
|
||
|
|
||
|
Wed Jun 20 17:02:50 2001 J"orn Rennecke <amylaar@redhat.com>
|
||
|
|
||
|
* sh.c (barrier_align): Don't ask for alignment when seeing a
|
||
|
branch-around-a-jump from machine_dependent_reorg.
|
||
|
|
||
|
Wed Jun 20 08:35:02 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* ssa.c (rename_block): Update parameter to remove_phi_alternative
|
||
|
(convert_from_ssa): Do create REG_DEAD and REG_UNUSED notes when
|
||
|
re-running life analysis.
|
||
|
|
||
|
2001-06-20 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
* objc/objc-act.c (hash_init): Assume xmalloc always succeeds,
|
||
|
also use memset to clear the hash tables.
|
||
|
(hash_enter): Assume xmalloc always succeeds.
|
||
|
(hash_add_attr): Ditto.
|
||
|
(continue_class): Ditto.
|
||
|
|
||
|
2001-06-20 Michael Meissner <meissner@redhat.com>
|
||
|
|
||
|
* builtins.c (predict.h): Include.
|
||
|
(expand_builtin_expect): Update comment.
|
||
|
(expand_builtin_expect_jump): New function to expand
|
||
|
__builtin_expect inside of a conditional jump expansion.
|
||
|
|
||
|
* expr.c (do_jump): Special case __builtin_expect (<test>, 0) and
|
||
|
__builtin_expect (<test>, 1).
|
||
|
|
||
|
* Makefile.in (builtins.o): Depend on $(PREDICT_H).
|
||
|
|
||
|
* rtl.h (expand_builtin_expect_jump): Add prototype.
|
||
|
|
||
|
2001-06-19 Geoffrey Keating <geoffk@redhat.com>
|
||
|
|
||
|
* doc/rtl.texi (Machine Modes): Correct description of
|
||
|
floating-point modes on machines with non-8-bit bytes.
|
||
|
|
||
|
2001-06-19 Bernd Schmidt <bernds@redhat.com>
|
||
|
|
||
|
* regmove.c (optimize_reg_copy_3): Do nothing if previous insn
|
||
|
carries a REG_EQUIV note. If it carries REG_EQUAL, delete the
|
||
|
note.
|
||
|
|
||
|
Tue Jun 19 07:53:52 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* ssa.c (remove_phi_alternative): Remove declaration. No longer
|
||
|
static. Second argument is a pointer to a basic block structure,
|
||
|
not a basic block index.
|
||
|
(convert_to_ssa): Do not remove dead code.
|
||
|
(convert_from_ssa): Do not remove dead code to create death notes.
|
||
|
* ssa.h (remove_phi_alternative): Declare.
|
||
|
|
||
|
* flow.c (delete_unreachable_blocks): Fix patch error in
|
||
|
previous change (call to find_unreachable_blocks was lost).
|
||
|
|
||
|
* ssa.c (ssa_uses): Remove definition.
|
||
|
(apply_delayed_renames): Don't grow ssa_uses.
|
||
|
(rename_block): Remove comment related to ssa_uses.
|
||
|
(rename_registers): Do not initialize ssa_uses.
|
||
|
(convert_from_ssa): Do not free ssa_uses.
|
||
|
|
||
|
* ssa-dce.c: Renamed from dce.c.
|
||
|
* Makefile.in (OBJS): Replace dce.o with ssa-dce.o
|
||
|
(dependencies): Replace dce.c with ssa-dce.c and dce.o with
|
||
|
ssa-dce.o.
|
||
|
|
||
|
2001-06-19 Eric Christopher <echristo@redhat.com>
|
||
|
|
||
|
* emit-rtl.c (gen_lowpart_common): Do not assume that SFmode
|
||
|
and DFmode are UNITS_PER_WORD and 2*UNITS_PER_WORD. Use
|
||
|
GET_MODE_BITSIZE instead of GET_MODE_SIZE/UNITS_PER_WORD.
|
||
|
|
||
|
Tue Jun 19 01:52:27 2001 J"orn Rennecke <amylaar@redhat.com>
|
||
|
|
||
|
* sh.c (output_branch): Delete bogus code.
|
||
|
|
||
|
* sh.c (initial_elimination_offset):
|
||
|
Fix FROM == RETURN_ADDRESS_POINTER_REGNUM case.
|
||
|
|
||
|
Mon Jun 18 12:50:49 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* flow.c (find_unreachable_blocks): New function.
|
||
|
(delete_unreachable_blocks): Use find_unreachable_blocks.
|
||
|
* basic-block.h (find_unreachable_blocks): Declare.
|
||
|
|
||
|
* dce.c (eliminate_dead_code): Fix formatting glitch.
|
||
|
|
||
|
2001-06-18 Jason Merrill <jason_merrill@redhat.com>
|
||
|
|
||
|
* c-common.h (RETURN_NULLIFIED_P): New macro.
|
||
|
* c-semantics.c (genrtl_return_stmt): Check it.
|
||
|
|
||
|
* expr.c (clear_storage): Set TREE_NOTHROW on the decl for memset.
|
||
|
(emit_block_move): Likewise.
|
||
|
|
||
|
Mon Jun 18 17:27:24 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* unroll.c: Include predict.h.
|
||
|
(unroll_loop): Drop prediction notes on preconditioning.
|
||
|
* predict.def (PRED_LOOP_PRECONDITIONG, PRED_LOOP_CONDITION):
|
||
|
New; add comments on the others.
|
||
|
* Makefile.in: (unroll.o): Add dependency on predict.h.
|
||
|
* loop.c (strength_reduce): Fix branch prediction.
|
||
|
|
||
|
Mon Jun 18 17:26:56 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* stmt.c (emit_case_nodes): Optimize test whether index is in given
|
||
|
interval.
|
||
|
|
||
|
Mon Jun 18 15:43:10 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* predict.c (estimate_probability): Do not bail out early
|
||
|
when note is present.
|
||
|
(combine_predictions_for_insn): Fix note removal code.
|
||
|
|
||
|
2001-06-18 Ben Elliston <bje@redhat.com>
|
||
|
|
||
|
* except.c (resolve_fixup_regions): Initialise "cleanup".
|
||
|
|
||
|
2001-06-17 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* tm.texi: Document STDC_0_IN_SYSTEM_HEADERS.
|
||
|
|
||
|
Sat Jun 16 20:20:39 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* expr.c (expand_expr, case ADDR_EXPR): If taking address of SAVE_EXPR,
|
||
|
use put_var_into_stack.
|
||
|
|
||
|
2001-06-16 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
|
||
|
|
||
|
* gccspec.c (lang_specific_driver): If compiling ObjC, add
|
||
|
-shared-libgcc when necessary.
|
||
|
* Makefile.in (gccspec.o): Compile with DRIVER_DEFINES.
|
||
|
|
||
|
2001-06-16 Daniel Berlin <dan@cgsoftware.com>
|
||
|
|
||
|
* bitmap.h: Add dump_bitmap, bitmap_zero, bitmap_union_of_diffs,
|
||
|
bitmap_a_or_b, bitmap_a_and_b, bitmap_first_set_bit,
|
||
|
bitmap_last_set_bit. All for compatibility with sbitmap's.
|
||
|
|
||
|
*bitmap.c (bitmap_zero): New function.
|
||
|
(bitmap_union_of_diffs): New function.
|
||
|
(bitmap_first_set_bit): New function.
|
||
|
(bitmap_last_set_bit): New function.
|
||
|
|
||
|
2001-06-16 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpp.texi, invoke.texi: Update.
|
||
|
* cpp.1, gcc.1: Regenerate.
|
||
|
|
||
|
Sat Jun 16 12:45:20 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (minsf): Fix splitter. (PR fortran/3191)
|
||
|
|
||
|
2001-06-16 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* doc/cpp.texi: Update.
|
||
|
* doc/cpp.1: Regenerate.
|
||
|
|
||
|
2001-06-15 Loren J. Rittle <ljrittle@acm.org>
|
||
|
|
||
|
* doc/install.texi: Use correct markup hints.
|
||
|
|
||
|
Fri Jun 15 18:05:22 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* function.c (gen_mem_addressof): Handle case where DECL is SAVE_EXPR.
|
||
|
|
||
|
* explow.c (expr_size): If DECL and size specified, use it.
|
||
|
|
||
|
2001-06-15 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* doc/cpp.texi: Formatting corrections.
|
||
|
Correct buggy example of use of __GNUC__ etc.
|
||
|
Clarify $ in identifiers.
|
||
|
* doc/cpp.1: Regenerate.
|
||
|
|
||
|
Fri Jun 15 19:35:38 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* optabs.c (expand_twoval_binop): Avoid undefined behaviour.
|
||
|
|
||
|
2001-06-15 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||
|
|
||
|
* doc/install.texi (Specific, alpha*-*-*): Fixed Tru64 UNIX
|
||
|
etc. spelling.
|
||
|
(Specific, alpha-*-osf1): Renamed to alpha*-*-osf*.
|
||
|
Added Tru64 UNIX V5.1 bootstrap hints.
|
||
|
(Specific, alpha*-*-osf*): Removed old section, obsolete.
|
||
|
|
||
|
2001-06-15 Andreas Jaeger <aj@suse.de>
|
||
|
|
||
|
* doc/install.texi (Specific): Mention that glibc cannot be
|
||
|
compiled with GCC 3.0.
|
||
|
|
||
|
2001-06-14 Andrew Haley <aph@cambridge.redhat.com>
|
||
|
|
||
|
* combine.c (nonzero_bits): Don't optimize away division by
|
||
|
zero.
|
||
|
|
||
|
2001-06-15 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* doc/cpp.texi: Revised and brought up to date.
|
||
|
* doc/cpp.1: Regenerate.
|
||
|
|
||
|
2001-06-15 Loren J. Rittle <ljrittle@acm.org>
|
||
|
|
||
|
* doc/install.texi: Update --enable-threads to match reality.
|
||
|
|
||
|
2001-06-15 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
|
||
|
|
||
|
* doc/install.texi: Update for C4x.
|
||
|
* README.C4X: Remove.
|
||
|
|
||
|
2001-06-14 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/c-tree.texi, doc/contrib.texi, doc/extend.texi,
|
||
|
doc/gcc.texi, doc/install.texi, doc/invoke.texi, doc/md.texi,
|
||
|
doc/objc.texi, doc/rtl.texi, doc/tm.texi: Fix spelling and typos.
|
||
|
Consistently use "built-in" and "bit-field". Minor logical markup
|
||
|
improvements.
|
||
|
* doc/gcc.1: Regenerate.
|
||
|
|
||
|
2001-06-14 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/mips/mips.md (exception_receiver): New.
|
||
|
|
||
|
2001-06-14 Daniel J. Berlin <dan@cgsoftware.com>
|
||
|
|
||
|
* doc/gcc.texi: Update passes documentation to be more in tune
|
||
|
with reality.
|
||
|
|
||
|
Thu Jun 14 15:38:28 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (ix86_expand_prologue): Fix merging conflict.
|
||
|
|
||
|
2001-06-14 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/c-tree.texi, doc/contrib.texi, doc/extend.texi,
|
||
|
doc/gcc.texi, doc/gcov.texi, doc/install-old.texi,
|
||
|
doc/invoke.texi, doc/md.texi, doc/rtl.texi, doc/tm.texi: Use more
|
||
|
logical markup. Use TeX quotes and dashes. Use @dots{} and
|
||
|
@minus{}. Avoid spaces inside @var. Update last modification
|
||
|
date in gcc.texi.
|
||
|
* doc/gcc.1, doc/gcov.1: Regenerate.
|
||
|
|
||
|
Thu Jun 14 12:44:15 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (x86_accumulate_outgoing_args, x86_prologue_using_move,
|
||
|
x86_epilogue_using_move): New global variables.
|
||
|
(override_options): Enable ACCUMULATE_OUTGOING_ARGS if preferred.
|
||
|
(ix86_emit_save_regs_using_mov): New static function.
|
||
|
(ix86_expand_prologue, ix86_expand_epilogue): Use moves if preferred.
|
||
|
* i386.h (MASK_MMX, MASK_SSE, MASK_SSE2, MASK_128BIT_LONG_DOUBLE,
|
||
|
MASK_MIX_SSE_I387): Renumber.
|
||
|
(MASK_NO_ACCUMULATE_OUTGOING_ARGS): New.
|
||
|
(x86_accumulate_outgoing_args, x86_prologue_using_move,
|
||
|
x86_epilogue_using_move): Declare.
|
||
|
(TARGET_PROLOGUE_USING_MOVE, TARGET_EPILOGUE_USING_MOVE): New.
|
||
|
|
||
|
2001-06-13 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||
|
|
||
|
* inclhack.def (hpux10_cpp_pow_inline): New hack.
|
||
|
|
||
|
2001-06-13 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* ifcvt.c (dead_or_predicable): Fix return value last patch.
|
||
|
|
||
|
2001-06-13 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* NEWS: Remove.
|
||
|
|
||
|
2001-06-13 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* ifcvt.c (cond_exec_get_condition): Use reversed_comparison_code.
|
||
|
(cond_exec_process_if_block, dead_or_predicable): Likewise.
|
||
|
|
||
|
2001-06-13 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||
|
|
||
|
* mips-tfile.c (copy_object): Always pass indexNil for symbol
|
||
|
table index.
|
||
|
|
||
|
2001-06-13 Kazu Hirata <kazu@hxi.com>
|
||
|
|
||
|
* config/h8300/h8300.h (OK_FOR_T): Remove.
|
||
|
(EXTRA_CONSTRAINT): Do not use OK_FOR_T.
|
||
|
* config/h8300/h8300.md: Remove alternatives involving inc and dec
|
||
|
in the helper patterns for addhi3 and addsi3.
|
||
|
|
||
|
2001-06-13 Phil Edwards <pme@sources.redhat.com>
|
||
|
|
||
|
* doc/contrib.texi: Link to libstdc++'s thanks.html for now.
|
||
|
|
||
|
2001-06-13 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* Makefile.in: Move _bb and __gcc_bcmp to LIB2FUNCS_ST.
|
||
|
* libgcc-std.ver: Take out __bb* and __gcc_bcmp.
|
||
|
|
||
|
* config/t-slibgcc-elf-ver, config/t-slibgcc-sld,
|
||
|
config/alpha/t-osf4, config/mips/t-iris6: Extract all
|
||
|
references to @shlib_map_file@, @shlib_objs@, or
|
||
|
@shlib_base_name@ to Makefile variables.
|
||
|
Bump soname version of libgcc to 1.
|
||
|
|
||
|
2001-06-13 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/install.texi: Use more logical markup. Include @node
|
||
|
commands in the source when generating any non-HTML.
|
||
|
|
||
|
2001-06-13 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* README: Remove. Some of the contents moved to ../README.
|
||
|
|
||
|
2001-06-13 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* doc/install.texi (--enable-shared): List package names
|
||
|
recognized by GCC.
|
||
|
|
||
|
2001-06-13 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* doc/install.texi (ix86-*-solaris*): Removed, outdated.
|
||
|
(*-*-solaris*): Document problem in /bin/sh that affects
|
||
|
configuring libraries.
|
||
|
(sparc-*-solaris*): Recommend GNU binutils 2.11.1 or vendor tools.
|
||
|
(*-sun-solaris2.8): Document linker problem that explains why
|
||
|
libjava is disabled by default.
|
||
|
|
||
|
2001-06-09 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
Revert this patch:
|
||
|
* toplev.c (rest_of_compilation): Remove dead code before
|
||
|
purge_addressof.
|
||
|
|
||
|
2001-06-12 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
Reverted:
|
||
|
2001-06-07 Nathan Sidwell <nathan@codesourcery.com>
|
||
|
* configure.in (sparc*-*-*): Check assembler R_SPARC_UA32 support.
|
||
|
* configure: Rebuilt.
|
||
|
|
||
|
2001-06-12 Jim Wilson <wilson@redhat.com>
|
||
|
|
||
|
* loop.c (strength_reduce): Move bl->all_reduced set before
|
||
|
check_ext_dependant_givs call.
|
||
|
(check_ext_dependant_givs): Clear bl->all_reduced when ignoring givs.
|
||
|
|
||
|
2001-06-12 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* doc/extend.texi (Function Attributes): Document SH's sp_switch
|
||
|
and trap_exit.
|
||
|
|
||
|
2001-06-13 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/invoke.texi: Use more logical markup. Use TeX quotes,
|
||
|
dashes and @dots{}.
|
||
|
|
||
|
2001-06-12 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/i386/i386.c (ix86_expand_prologue): Always use
|
||
|
gen_pro_epilogue_adjust_stack; update arguments.
|
||
|
(ix86_expand_epilogue): Likewise.
|
||
|
(ix86_emit_epilogue_esp_adjustment): Remove.
|
||
|
(ix86_adjust_cost): Remove pro_epilogue_adjust_stack hack.
|
||
|
* config/i386/i386.md (pro_epilogue_adjust_stack): Use a BLKmode
|
||
|
clobber of scratch memory instead of a modification of EBP as the
|
||
|
barrier. Update all peepholes to match.
|
||
|
|
||
|
2001-06-12 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/gcc.texi: Change the font used for @def... commands to a
|
||
|
fixed width font.
|
||
|
* doc/extend.texi: Use more logical markup. Use "built-in"
|
||
|
instead of "builtin". Use @deftypefn to mark up built-in
|
||
|
functions; specify their types in the @deftypefn and not in the
|
||
|
descriptive text. Use TeX quotes and dashes. Add more index
|
||
|
entries.
|
||
|
|
||
|
2001-06-12 lars brinkhoff <lars@nocrew.org>
|
||
|
|
||
|
* gcc.texi (HOST_BITS_PER_LONGLONG): Document.
|
||
|
(DIR_SEPARATOR_2): Likewise.
|
||
|
|
||
|
2001-06-12 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/install.texi (--exec-prefix, --bindir, --libdir,
|
||
|
--with-slibdir, --infodir, --mandir, --with-cpp-install-dir):
|
||
|
Document.
|
||
|
(--enable-cpp): Change to document --disable-cpp instead; update
|
||
|
to reflect current default.
|
||
|
(--without-fast-fixincludes): Remove documentation.
|
||
|
(Final install): Document installation directories in more
|
||
|
detail. Document use of make dvi.
|
||
|
|
||
|
Tue Jun 12 19:01:43 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* recog.c (validate_replace_rtx_1): Fix previous patch.
|
||
|
|
||
|
Tue Jun 12 17:25:39 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* recog.c (validate_replace_rtx_1): Do plus_constant call always.
|
||
|
|
||
|
Tue Jun 12 17:24:07 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* simplify-rtx.c (simplify_subreg): Allow volatile memory
|
||
|
to be subregged in case we don't have move instruction.
|
||
|
|
||
|
Tue Jun 12 12:20:12 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* loop.c: Include predict.h
|
||
|
(strength_reduce): Drop branch prediction note in case
|
||
|
number of iterations is known.
|
||
|
* predict.def (PRED_LOOP_ITERATIONS): new.
|
||
|
* Makefile.in (loop.o): Add dependency on predict.h
|
||
|
|
||
|
2001-06-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* c-decl.c (grokdeclarator): Use INTEGRAL_TYPE_P.
|
||
|
|
||
|
* c-typeck.c (c_start_case): Likewise.
|
||
|
|
||
|
2001-06-12 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* expr.c (store_field): Don't set MEM_ALIAS_SET for a field
|
||
|
in a structure at a variable address.
|
||
|
|
||
|
2001-06-12 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/gcov.texi: Use more logical markup.
|
||
|
|
||
|
2001-06-11 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* unroll.c (initial_reg_note_copy): Use PUT_REG_NOTE_KIND and
|
||
|
REG_NOTE_KIND, not PUT_MODE and GET_MODE.
|
||
|
(final_reg_note_copy): Remove REG_WAS_0 notes that are no longer
|
||
|
valid.
|
||
|
|
||
|
2001-06-11 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
* config/darwin.h (ASM_FILE_END): Remove decl of language_string.
|
||
|
|
||
|
2001-06-11 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/m68hc11.md ("*lshrdi3_const32"): Mark the clobber
|
||
|
as an early clobber to make sure it is not used by reload in
|
||
|
one of the operands.
|
||
|
|
||
|
2001-06-11 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* doc/c-tree.texi: Update information about flag_honor_std.
|
||
|
* doc/install.texi: Note that binutils is required on HPUX 11.
|
||
|
* doc/invoke.texi (-fhonor-std): Note that -fno-honor-std is
|
||
|
now the default.
|
||
|
|
||
|
* config/mips/abi64.h (RETURN_IN_MEMORY): Fix handling of
|
||
|
variable-sized types.
|
||
|
|
||
|
2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/md.texi: Use TeX dashes and quotes.
|
||
|
|
||
|
2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/rtl.texi: Reference manual chapter about trees.
|
||
|
|
||
|
2001-06-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||
|
|
||
|
* config/mips/iris6.h (NO_BUILTIN_WINT_TYPE): Define.
|
||
|
(WINT_TYPE): Override.
|
||
|
(WINT_TYPE_SIZE): Likewise.
|
||
|
(SUBTARGET_CPP_SIZE_SPEC): Define __WINT_TYPE__ as appropriate.
|
||
|
|
||
|
* config/sparc/sol2.h (WINT_TYPE): Define.
|
||
|
(WINT_TYPE_SIZE): Likewise.
|
||
|
|
||
|
* config/sparc/sol2-sld-64.h (NO_BUILTIN_WINT_TYPE): Define.
|
||
|
(WINT_TYPE): Override.
|
||
|
(WINT_TYPE_SIZE): Likewise.
|
||
|
(CPP_ARCH32_SPEC): Add __WINT_TYPE__ definition.
|
||
|
(CPP_ARCH64_SPEC): Likewise.
|
||
|
|
||
|
2001-06-11 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* unwind-dw2-fde.c (__deregister_frame_info): Don't play games
|
||
|
with alias attribute.
|
||
|
|
||
|
* config/linux.h (CPLUSPLUS_CPP_SPEC): Use %(cpp) not $(cpp_cpu).
|
||
|
* config/alpha/linux.h (CPLUSPLUS_CPP_SPEC): Likewise.
|
||
|
|
||
|
2001-06-11 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
|
||
|
|
||
|
* config/rs6000/linux.h (CPLUSPLUS_CPP_SPEC): New.
|
||
|
|
||
|
2001-06-11 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
* config/darwin.c (darwin_encode_section_info): Rewrite to simplify
|
||
|
and fix coding mistakes.
|
||
|
|
||
|
2001-06-11 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
|
||
|
* config/m32r/m32r.md (movstrsi_internal): Do not expect a
|
||
|
return string from m32r_output_block_move.
|
||
|
* config/m32r/m32r-protos.h: Make m32r_output_block_move a
|
||
|
void function.
|
||
|
* config/m32r/m32r.h (INT32_P): Rename to UNIT32_P and remove
|
||
|
integer overflow.
|
||
|
(ROUND_ADVANCE): Remove signed/unsigned conflict.
|
||
|
* config/m32r/m32r.c: Declare prototypes for static functions.
|
||
|
(move_src_operand): Replace INT32_P with UINT32_P.
|
||
|
(function_arg_partial_nregs): Fixed signed/unsigned conflict
|
||
|
in initialisation of 'size'.
|
||
|
(m32r_sched_reord): Remove redundant declarations of 'code'.
|
||
|
(m32r_output_block_move): Change to a void function.
|
||
|
(m32r_encode_section_info): Cast return of
|
||
|
TREE_STRING_POINTER to avoid compile time warning.
|
||
|
|
||
|
2001-06-11 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/alpha/osf5.h (TARGET_LD_BUGGY_LDGP): New.
|
||
|
* config/alpha/alpha.h (TARGET_LD_BUGGY_LDGP): Default.
|
||
|
(struct machine_function): Add gp_save_rtx.
|
||
|
* config/alpha/alpha.c (alpha_mark_machine_status): Mark it.
|
||
|
(alpha_gp_save_rtx): New.
|
||
|
* config/alpha/alpha-protos.h: Declare it.
|
||
|
* config/alpha/alpha.md (exception_receiver): Make an expander.
|
||
|
Use alpha_gp_save_rtx if TARGET_LD_BUGGY_LDGP.
|
||
|
|
||
|
2001-06-11 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/alpha/osf.h (LINK_SPEC): Hide _GLOBAL_* symbols.
|
||
|
|
||
|
2001-06-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||
|
|
||
|
* configure.in: Align --help messages.
|
||
|
Remove trailing full stops.
|
||
|
Consistently use lower case.
|
||
|
Fix DWARF 2 spelling.
|
||
|
* configure: Rebuilt.
|
||
|
|
||
|
2001-06-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||
|
|
||
|
* config/alpha/alpha.h (CPP_SPEC): Don't define __LANGUAGE_C and
|
||
|
variants for .cpp/.cp/.c++ files.
|
||
|
Move definition of __LANGUAGE_C_PLUS_PLUS ...
|
||
|
(CPLUSPLUS_CPP_SPEC): ... here.
|
||
|
|
||
|
Mon Jun 11 15:47:45 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* jump.c (duplicate_loop_exit_test): Fix loop header heuristics.
|
||
|
|
||
|
2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* c-decl.c (store_parm_decls): When comparing types in an
|
||
|
old-style function declaration with those from a previous
|
||
|
prototype, compare the unqualified versions of parameter types.
|
||
|
Fixes PR c/3116.
|
||
|
|
||
|
2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/objc.texi: Use more logical markup. Use TeX dashes.
|
||
|
|
||
|
2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/c-tree.texi: Use more logical markup.
|
||
|
|
||
|
2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* c-decl.c (xref_tag): Don't return previous tags of wrong type.
|
||
|
|
||
|
2001-06-11 Aldy Hernandez <aldyh@redhat.com>
|
||
|
|
||
|
* loop.c (scan_loop): Do not combine asm statements.
|
||
|
|
||
|
2001-06-11 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
|
||
|
|
||
|
* simplify-rtx.c (simplify_subreg): Fix offset calculation
|
||
|
for complex values within a CONCAT.
|
||
|
|
||
|
2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/install.texi: Update details of what components are included
|
||
|
in the GCC distribution. Update default directory for g++
|
||
|
includes. Update documentation relating to old libio. Adjust
|
||
|
documentation on DejaGnu environment variables. Remove
|
||
|
documentation of --enable-cpplib.
|
||
|
|
||
|
2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/contrib.texi: Fix alphabetical order. Fix typos. Improve
|
||
|
markup.
|
||
|
|
||
|
2001-06-10 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* ifcvt.c (life_data_ok): New.
|
||
|
(merge_if_block): Use it to determine whether to update
|
||
|
global_live_at_end.
|
||
|
(if_convert): Set it.
|
||
|
|
||
|
2001-06-10 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/alpha/osf5.h (ASM_OLDAS_SPEC): Add -c.
|
||
|
|
||
|
2001-06-10 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* doc/invoke.texi (MN10300 Options): Document -mno-crt0.
|
||
|
(SH Options): Document -mieee.
|
||
|
* doc/install.texi (Final install): Remove obsolete information
|
||
|
about installing cross compilers.
|
||
|
* doc/gcc.1: Rebuilt.
|
||
|
|
||
|
2001-06-10 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/alpha/alpha.c (override_options): Set align_loops,
|
||
|
align_jumps, and align_functions.
|
||
|
* config/alpha/alpha.h (FUNCTION_BOUNDARY): Set to 32 bits.
|
||
|
(LOOP_ALIGN, LABEL_ALIGN_AFTER_BARRIER): Remove.
|
||
|
|
||
|
2001-06-11 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
|
||
|
|
||
|
* emit-rtl.c (gen_lowpart_common): Do not assume that SFmode and DFmode
|
||
|
are one and two words in size.
|
||
|
|
||
|
2001-06-10 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* doc/invoke.texi (Optimization Options): Document -fpeephole2.
|
||
|
(Code Generation Options): Document -fnon-call-exceptions.
|
||
|
|
||
|
2001-06-10 Mark Kettenis <kettenis@gnu.org>
|
||
|
|
||
|
* config/i386/gnu.h (MD_FALLBACK_FRAME_STATE_FOR): Undefine.
|
||
|
|
||
|
2001-06-10 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* m68hc11.md (peepholes): Remove unused and wrong peepholes.
|
||
|
|
||
|
2001-06-10 Mark Mitchell <mark@codesourcery.com>
|
||
|
Gabriel Dos Reis <gdr@codesourcery.com>
|
||
|
|
||
|
* Makefile.in (c-parse.o): Depend on diagnostic.h
|
||
|
(dwarf2out.o): Likewise.
|
||
|
|
||
|
* dwarf2out.c: #include diagnostic.h
|
||
|
|
||
|
* toplev.h (warningcount, errorcount, sorrycount): Remove
|
||
|
declarations.
|
||
|
|
||
|
* toplev.c (warningcount, errorcount, sorrycount): Remove
|
||
|
definitions.
|
||
|
|
||
|
* diagnostic.h (struct output_buffer): Reorder fields.
|
||
|
(diagnostic_kind_count): New macro.
|
||
|
(errorcount, warningcount, sorrycount): Define as macros.
|
||
|
(diagnostic_report_warnings_p): New macro.
|
||
|
(output_state): Add diagnostic_count field.
|
||
|
|
||
|
* diagnostic.c (warningcount, errorcount, inhibit_warnings):
|
||
|
Remove tentative declaration.
|
||
|
(count_error): Use diagnostic_report_warnings_p.
|
||
|
|
||
|
* c-parse.in: #include diagnostic.h
|
||
|
|
||
|
2001-06-10 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/m68hc11.md ("extendhisi2"): Fix constraints to
|
||
|
prefer a memory for operand 1.
|
||
|
("*addsi3"): Fix constraints, the '!' was too strong.
|
||
|
("*addsi3_split"): Accept soft register and split accordingly.
|
||
|
|
||
|
2001-06-10 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/m68hc11-protos.h (m68hc11_initialize_trampoline):
|
||
|
Move definition in the RTX_CODE section.
|
||
|
|
||
|
2001-06-10 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/m68hc11.h (RETURN_ADDR_RTX): Define the return
|
||
|
address as relative to the argument pointer.
|
||
|
|
||
|
Sun Jun 10 10:58:53 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* predict.def (PRED_OPCODE): Place before call and error_return.
|
||
|
|
||
|
Sun Jun 10 10:00:17 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* predict.def (PRED_CALL, PRED_ERROR_RETURN): New.
|
||
|
* predict.c (estimate_probability): Calculate dominance
|
||
|
information; improve detection of NORETURN heuristics;
|
||
|
add call/error_return heuiristics; tweak comparison heuristics
|
||
|
to recognize -1.
|
||
|
|
||
|
2001-06-09 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* doc/invoke.texi (C Dialect Options): Document -aux-info.
|
||
|
(Debugging Options): Document -print-multi-directory and
|
||
|
-print-multi-lib.
|
||
|
* doc/gcc.1: Rebuilt.
|
||
|
|
||
|
* toplev.c (independent_decode_option): Require `=' between
|
||
|
`-aux-info' and filename in the same argument.
|
||
|
* gcc.c: Don't pass -aux-info=filename twice.
|
||
|
|
||
|
2001-06-09 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* expr.c (expand_expr, case ARRAY_REF): Do not replace
|
||
|
an array element with the known initializing value if it has
|
||
|
side-effects.
|
||
|
|
||
|
* toplev.c (rest_of_compilation): Remove dead code before
|
||
|
purge_addressof.
|
||
|
|
||
|
2001-06-09 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppinit.c (print_help): Document -fpreprocessed.
|
||
|
* invoke.texi: Similarly.
|
||
|
|
||
|
Sun Jun 10 00:35:37 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* predict.def: New file.
|
||
|
* predict.h: New file.
|
||
|
* predict.c: Include predict.h.
|
||
|
(predictor_info): New structure and array.
|
||
|
(predict_edge, predict_insn): Rewrite; make global.
|
||
|
(predict_edge_def, predict_insn_def): New global functions.
|
||
|
(dump_prediction, combine_predictions_for_insns): New
|
||
|
static functions.
|
||
|
(estimate_probability): Change calls to predict_edge
|
||
|
to predict_edge_def and calls to predict_insn to predict_insn_def;
|
||
|
combine probabilities.
|
||
|
(expected_value_to_br_prob): Behave as predictor.
|
||
|
* rtl.h (REG_BR_PRED): Update coment.
|
||
|
(invert_br_probabilities): New.
|
||
|
* jump.c: Include predict.h
|
||
|
(duplicate_loop_exit_test): Drop branch prediction notes.
|
||
|
(invert_jump): Use invert_br_probabilities.
|
||
|
* Makefile.in: Add dependency on predict.h for jump and predict pass.
|
||
|
* ifcvt.c (dead_or_predicable): Use invert_br_probabilities.
|
||
|
* combine.c (distribute_notes): Handle BR_PRED.
|
||
|
|
||
|
Sat Jun 9 23:29:41 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* predict.c (predict_insn, predict_edge): New static functions.
|
||
|
(estimate_probability): Revamp to use new functions;
|
||
|
fix loop header heruistics; add loop exist heruistics
|
||
|
|
||
|
2001-06-09 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config.gcc: Re-enable bi-arch sparc on Solaris 7 and above.
|
||
|
|
||
|
2001-06-09 Peter Jakubek <pjak@snafu.de>
|
||
|
|
||
|
* config/m68k/m68k.md (ashrdi_const): Fix right shift by 16.
|
||
|
|
||
|
2001-06-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||
|
|
||
|
* vax.h (NOTICE_UPDATE_CC): Set CC_NO_OVERFLOW in cc_status.flags
|
||
|
for integer operations that don't update C bit.
|
||
|
|
||
|
2001-06-09 Nicola Pero <nicola@brainstorm.co.uk>
|
||
|
|
||
|
* gthr-posix.h (__gthread_objc_init_thread_system): If
|
||
|
pthread_key_create fails, it's not clear what the return value is.
|
||
|
This obvious fix makes sure it always returns -1 if a problem
|
||
|
occurs.
|
||
|
|
||
|
2001-06-09 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/gcc.texi: Use @defcodeindex for the index of options. Add
|
||
|
more index entries. Use more logical markup where appropriate.
|
||
|
Use TeX quotes and dashes.
|
||
|
|
||
|
2001-06-09 Benjamin Kosnik <bkoz@redhat.com>
|
||
|
|
||
|
* unwind-pe.h: Conditionally qualify references to abort with
|
||
|
std::.
|
||
|
|
||
|
2001-06-09 Julian Foad <julian_foad@hotmail.com>
|
||
|
|
||
|
* doc/invoke.texi: Remove superfluous text.
|
||
|
|
||
|
2001-06-08 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/alpha/linux.h (CPLUSPLUS_CPP_SPEC): New.
|
||
|
(LIB_SPEC): Mirror config/linux.h version.
|
||
|
|
||
|
2001-06-08 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* except.c (get_exception_pointer, get_exception_filter): Take a
|
||
|
struct function. Update all callers.
|
||
|
* except.h (get_exception_pointer): Update declaration.
|
||
|
* expr.c (expand_expr): Update get_exception_pointer call.
|
||
|
* integrate.c (expand_inline_function): Remap the exception pointer
|
||
|
from callee to caller.
|
||
|
|
||
|
2001-06-08 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* c-decl.c (grokdeclarator): Make the TREE_TYPE for declarations
|
||
|
accurately reflect its cv-qualification.
|
||
|
* c-typeck.c (type_lists_compatible_p): Ignore the top-levl
|
||
|
cv-qualifiers on function types.
|
||
|
|
||
|
2001-06-08 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* basic-block.h: Improve comments.
|
||
|
* except.c (expand_eh_region_end_allowed): Remove redundant call
|
||
|
to do_pending_stack_adjust.
|
||
|
* flow.c (life_analysis): Fix typo in comment.
|
||
|
(calculate_global_regs_live): Add documentation.
|
||
|
(mark_set_1): Likewise.
|
||
|
(debug_regset): Likewise.
|
||
|
* doc/rtl.texi (cond_exec): Document it.
|
||
|
|
||
|
Fri Jun 8 21:52:51 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.h (CONST_COSTS): set cost of constants representable in
|
||
|
immediate fields to 0.
|
||
|
|
||
|
Fri Jun 8 21:34:54 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* function.c (diddle_return_value): Kill code to determine
|
||
|
return value before expand_function_end.
|
||
|
(expand_function_end): Delay call to clobber_return_register
|
||
|
after fucntion return value is computed.
|
||
|
|
||
|
Re-install temporary reverted patch:
|
||
|
* toplev.c (rest_of_compilation): Call split_all_insns
|
||
|
before reg-stack and shorten-branches. Do shorten-branches
|
||
|
after reg-stack.
|
||
|
* final.c (shorten_branches): Remove insn splitting code.
|
||
|
|
||
|
2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/gcc.texi, doc/invoke.texi: Add index of command line
|
||
|
options. Use @opindex to index them rather than other indexing
|
||
|
commands. Use @var{...} instead of <...>. Avoid spaces in names
|
||
|
inside @var. Don't use @kindex to index escape sequences in
|
||
|
source code.
|
||
|
|
||
|
2001-06-08 Jason Merrill <jason_merrill@redhat.com>
|
||
|
|
||
|
* stmt.c (current_nesting_level): New fn.
|
||
|
* tree.h: Declare it.
|
||
|
* c-semantics.c (genrtl_compound_stmt): Use it.
|
||
|
|
||
|
* dbxout.c (dbxout_symbol): Use DECL_RTL_SET_P.
|
||
|
|
||
|
2001-06-08 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* jump.c (mark_modified_reg): Allow jump threading if condition
|
||
|
codes are represented by a hard register.
|
||
|
|
||
|
2001-06-08 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* config/ia64/ia64.c (ia64_function_arg): Use [SDT]Fmode as gr_mode
|
||
|
for complex floats passed to unprototyped functions.
|
||
|
|
||
|
2001-06-08 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* except.c (expand_eh_region_end_allowed): Call
|
||
|
do_pending_stack_adjust as necessary.
|
||
|
|
||
|
Fri Jun 8 14:16:33 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* function.c (clobber_return_register): Clobber the pseudo return
|
||
|
register too.
|
||
|
|
||
|
* sibcall.c (skip_unreturned_value): New function.
|
||
|
(call_ends_block_p): Use it.
|
||
|
|
||
|
* recog.c (split_insn): Break out from ...
|
||
|
(split_all_insns): ... here; do not use basic block information
|
||
|
when it is broken.
|
||
|
|
||
|
Thu Jun 7 18:27:53 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* simplify-rtx.c (simplify_subreg): Fix verification of
|
||
|
combined subreg.
|
||
|
|
||
|
2001-06-08 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||
|
|
||
|
* config/mips/mips.h (CPP_SPEC): Simplify .s/.S handling.
|
||
|
Don't define _LANGUAGE_C and variants for .cpp/.cp/.c++ files.
|
||
|
Move definition of _LANGUAGE_C_PLUS_PLUS ...
|
||
|
(CPLUSPLUS_CPP_SPEC): ... here.
|
||
|
Fixes PRs c++/3047, target/441.
|
||
|
|
||
|
2001-06-08 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
|
||
|
|
||
|
* doc/install.texi2html (MAKEINFO): Keep value if set already.
|
||
|
|
||
|
2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/gcc.texi: Add trailing slash to URL.
|
||
|
|
||
|
2001-06-07 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
* config/darwin.h (ENCODE_SECTION_INFO): Define.
|
||
|
(REDO_SECTION_INFO_P): Ditto.
|
||
|
(STRIP_NAME_ENCODING): Ditto.
|
||
|
(ASM_DECLARE_OBJECT_NAME): Use ENCODE_SECTION_INFO.
|
||
|
(ASM_OUTPUT_ALIGNED_DECL_LOCAL): Ditto.
|
||
|
(ASM_OUTPUT_LABELREF): Use STRIP_NAME_ENCODING.
|
||
|
(GEN_LAZY_PTR_NAME_FOR_SYMBOL): Ditto.
|
||
|
* config/darwin.c: No longer include c-tree.h.
|
||
|
(machopic_classify_ident): Rewrite to use symbol encoding.
|
||
|
(lookup_name_darwin): Remove.
|
||
|
(machopic_non_lazy_ptr_name): Handle encoded symbols.
|
||
|
(machopic_stub_name): Use STRIP_NAME_ENCODING.
|
||
|
(machopic_validate_stub_or_non_lazy_ptr): Ditto.
|
||
|
(machopic_finish): Ditto, remove test of decl.
|
||
|
(update_non_lazy_ptrs): New function.
|
||
|
(darwin_encode_section_info): New function.
|
||
|
* config/darwin-protos.h: Declare it.
|
||
|
* config/rs6000/rs6000.c (machopic_output_stub): Use
|
||
|
STRIP_NAME_ENCODING.
|
||
|
|
||
|
2001-06-07 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* tree.h (DECL_SOURCE_FILE): Improve documentation.
|
||
|
(DECL_SOURCE_LINE): Likewise.
|
||
|
|
||
|
2001-06-07 Loren J. Rittle <ljrittle@acm.org>
|
||
|
|
||
|
* config/alpha/elf.h (MAKE_DECL_ONE_ONLY): Copy definition
|
||
|
from config/elfos.h.
|
||
|
|
||
|
2001-06-07 Phil Edwards <pme@sources.redhat.com>
|
||
|
|
||
|
* linux.h (CPLUSPLUS_CPP_SPEC): Move -D_GNU_SOURCE to here.
|
||
|
* pa/pa-linux.h: Allow CPLUSPLUS_CPP_SPEC to remain.
|
||
|
|
||
|
2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/contrib.texi: Add copyright notice.
|
||
|
|
||
|
2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/md.texi: Use four digit years in copyright notice.
|
||
|
|
||
|
2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* config.gcc: For $target_alias of athlon-*, set
|
||
|
target_cpu_default2=5.
|
||
|
|
||
|
Thu Jun 7 16:17:40 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* global.c (build_insn_chain): Allow ADDR_VEC or ADDR_DIF_VEC after
|
||
|
end of last block if last real insn is a JUMP_INSN.
|
||
|
|
||
|
2001-06-07 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* NEWS: Regenerate.
|
||
|
|
||
|
2001-06-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||
|
|
||
|
* gthr-posix.h (__gthread_objc_thread_detach): Simply cast
|
||
|
pthread_t to objc_thread_t.
|
||
|
(__gthread_objc_thread_id): Likewise.
|
||
|
|
||
|
2001-06-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||
|
|
||
|
* alpha/osf5.h (CPP_XFLOAT_SPEC): Override default definition.
|
||
|
(ASM_OLDAS_SPEC): Likewise.
|
||
|
|
||
|
* alpha/osf.h (CPP_XFLOAT_SPEC): Define.
|
||
|
(CPP_SUBTARGET_SPEC): Use it.
|
||
|
(ASM_OLDAS_SPEC): Define.
|
||
|
(ASM_SPEC): Use it.
|
||
|
(SUBTARGET_EXTRA_SPECS): Define, declare the new specs above.
|
||
|
|
||
|
2001-06-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||
|
|
||
|
* config/alpha/alpha.c (alpha_va_arg): Handle TFmode, TCmode args,
|
||
|
passed by reference.
|
||
|
|
||
|
2001-06-07 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/tm.texi (TARGET_SWITCHES, TARGET_OPTIONS): Adjust markup.
|
||
|
Document use of N_(...), and show it in examples. Note that
|
||
|
documentation should be added to invoke.texi. Avoid an overfull
|
||
|
hbox.
|
||
|
|
||
|
Thu Jun 7 17:09:50 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* toplev.c (rest_of_compilation): Revert previous patch.
|
||
|
* final.c (shorten_branches): Likewise.
|
||
|
|
||
|
2001-06-07 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
|
||
|
|
||
|
* pself.c, pself1.c, pself2.c, pself3.c, pself4.c, pself5.c:
|
||
|
Remove.
|
||
|
|
||
|
2001-06-07 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/install-old.texi: Remove more obsolete documentation.
|
||
|
|
||
|
Thu Jun 7 13:20:14 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* expr.c (copy_blkmode_from_reg): Fix operand_subword_force call.
|
||
|
|
||
|
Thu Jun 7 12:12:58 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* toplev.c (rest_of_compilation): Call split_all_insns
|
||
|
before reg-stack and shorten-branches. Do shorten-branches
|
||
|
after reg-stack.
|
||
|
* final.c (shorten_branches): Remove insn splitting code.
|
||
|
|
||
|
2001-06-07 Nathan Sidwell <nathan@codesourcery.com>
|
||
|
|
||
|
* configure.in (sparc*-*-*): Check assembler R_SPARC_UA32 support.
|
||
|
* configure: Rebuilt.
|
||
|
|
||
|
2001-06-07 Andreas Jaeger <aj@suse.de>
|
||
|
|
||
|
* emit-rtl.c (operand_subword): Remove unused variable.
|
||
|
|
||
|
Wed Jun 6 14:51:05 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (floatdi?f): Avoid usinf of SSE instructions
|
||
|
if TARGET_64BIT is false.
|
||
|
(floatdi?f_i386_only): New insn.
|
||
|
(floatdi?f_i386): Disable for !TARGET_64BIT.
|
||
|
|
||
|
* (min?f, max?f splitters): Handle case where
|
||
|
operands are cross-matched.
|
||
|
|
||
|
* i386.h (HI_REGISTER_NAMES): Remove redundant definition
|
||
|
(MMX_REGISTER_NAMES): Kill.
|
||
|
(PRINT_OPERAND): Fix comment.
|
||
|
(PRINT_REG): Likewise.
|
||
|
* i386.c (print_reg): Kill support for 'm' CODE; simplify.
|
||
|
(print_operand): Update comment; kill 'm'.
|
||
|
|
||
|
* i386.c (x86_branch_hints): New global variable
|
||
|
(print_operand): Support outputting of branch prediction hints.
|
||
|
* i386.md (conditional jump patterns): Add branch prediction hints
|
||
|
to the template.
|
||
|
* i386.h (x86_branch_hints): Declare
|
||
|
(TARGET_BRANCH_PREDICTION_HINTS): New macro.
|
||
|
(PRINT_OPERAND_FUNCT_VALID_P): New.
|
||
|
* final.c (final_forward_branch_p): New function.
|
||
|
|
||
|
2001-06-06 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* flow.c (mark_used_reg): Clean up looping over multiple hard
|
||
|
registers. Do conditional life bits across multiple hard regs.
|
||
|
|
||
|
2001-06-05 Jeffrey D. Oldham <oldham@codesourcery.com>
|
||
|
|
||
|
* reload1.c (reload): Revert Schmidt's change so all USEs are not
|
||
|
deleted during reload.
|
||
|
|
||
|
2001-06-05 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* c-semantics.c (genrtl_scope_stmt): Write out nested inline
|
||
|
functions here, instead of ...
|
||
|
* c-decl.c (c_expand_body): ... here.
|
||
|
|
||
|
2001-06-05 David O'Brien <obrien@FreeBSD.org>
|
||
|
|
||
|
* config.gcc, config/sparc/bsd.h: Do not directly include
|
||
|
sparc/sparc.h. Instead do it via tm_file.
|
||
|
|
||
|
2001-06-05 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* dwarf2.h (DW_EH_PE_aligned): New.
|
||
|
* dwarf2asm.c (eh_data_format_name): Name it.
|
||
|
(dw2_asm_output_encoded_addr_rtx): Align for it.
|
||
|
* dwarf2out.c (output_call_frame_info): Handle it for personality
|
||
|
routine and LSDA pointers.
|
||
|
|
||
|
* unwind-pe.h (DW_EH_PE_aligned): New.
|
||
|
(base_of_encoded_value): Handle it.
|
||
|
(read_encoded_value_with_base): Likewise.
|
||
|
* unwind-dw2-fde.c (base_from_object): Likewise.
|
||
|
(get_cie_encoding): Likewise.
|
||
|
|
||
|
* config/alpha/elf.h: Remove ecoff commentary.
|
||
|
* config/alpha/osf.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
|
||
|
|
||
|
2001-06-05 David O'Brien <obrien@FreeBSD.org>
|
||
|
|
||
|
* config.gcc, config/i386/bsd386.h: Do not directly include
|
||
|
i386/386bsd.h. Instead do it via tm_file.
|
||
|
|
||
|
2001-06-05 David O'Brien <obrien@FreeBSD.org>
|
||
|
|
||
|
* elfos.h (USING_ELFOS_H): Identify the use of elfos.h in the same
|
||
|
way svr4.h does.
|
||
|
|
||
|
2001-06-05 Pascal Obry <obry@act-europe.fr>
|
||
|
|
||
|
* configure.in: Quote $enable_win32_registry in case the value has
|
||
|
spaces in it.
|
||
|
* configure: Ditto.
|
||
|
|
||
|
2001-06-05 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* print-rtl.c (xspaces): Remove.
|
||
|
(print_rtx): Use printf field-width, rather than xpsaces, to
|
||
|
indent.
|
||
|
* toplev.c (main): Disable sibling-call optimization if we are
|
||
|
handling exceptions.
|
||
|
|
||
|
2001-06-05 Bernd Schmidt <bernds@redhat.com>
|
||
|
|
||
|
* reload1.c (reload): Delete all USEs generated during reload.
|
||
|
|
||
|
2001-06-05 scott snyder <snyder@fnal.gov>
|
||
|
|
||
|
* gccbug.in: Fix typo.
|
||
|
|
||
|
2001-06-05 Andreas Jaeger <aj@suse.de>
|
||
|
|
||
|
* builtins.def: Fix definition of __builtin_cosf, it uses float as
|
||
|
parameter and return value.
|
||
|
|
||
|
2001-06-04 Anthony Green <green@redhat.com>
|
||
|
|
||
|
* config/sparc/elf.h (CPP_PREDEFINES): Don't assert cpu or
|
||
|
machine. This is now done in sparc.h.
|
||
|
|
||
|
2001-06-05 Nathan Sidwell <nathan@codesourcery.com>
|
||
|
|
||
|
Correct CVS resurrection of invoke.texi.
|
||
|
* doc/invoke.texi: Document new tree dump flags.
|
||
|
|
||
|
2001-06-05 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* c-typeck.c (build_c_cast): Use TYPE_MAIN_VARIANT when checking
|
||
|
for casting an aggregate to its own type. Fixes PR c/2735.
|
||
|
|
||
|
2001-06-05 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/texinfo.tex: Update to version 2001-05-24.08.
|
||
|
|
||
|
2001-06-05 Nathan Sidwell <nathan@codesourcery.com>
|
||
|
|
||
|
* c-common.h (flag_dump_translation_unit): Remove.
|
||
|
(enum tree_dump_index): Define.
|
||
|
(TDF_ADDRESS, TDF_SLIM): New #defines.
|
||
|
(dump_node_to_file): Remove.
|
||
|
(dump_node): Make extern. Add flags.
|
||
|
(dump_flag, dump_enabled_p, dump_begin, dump_end,
|
||
|
dump_switch_p): Prototype.
|
||
|
* c-common.c (flag_dump_translation_unit): Remove.
|
||
|
* c-decl.c (c_decode_option): Remove -fdump-translation-unit
|
||
|
logic. Use dump_switch_p.
|
||
|
* c-dump.h (struct dump_info): Add node and user fields.
|
||
|
(dump_pointer): Declare.
|
||
|
* c-dump.c (dump_node): Make extern. Add flags.
|
||
|
(SOL_COLUMN, EOL_COLUMN, COLUMN_ALIGNMENT): New #defines.
|
||
|
(dump_new_line, dump_maybe_newline): Use them.
|
||
|
(dump_pointer): New function.
|
||
|
(dequeue_and_dump): Check TDF_SLIM before dumping a _DECL's
|
||
|
chain or function's body. Dump address, if TDF_ADDRESS set.
|
||
|
(dump_flag): Define.
|
||
|
(dump_node_to_file): Remove.
|
||
|
(struct dump_file_info): New struct.
|
||
|
(dump_files): New array.
|
||
|
(dump_begin, dump_end, dump_enabled_p, dump_switch_p): Define.
|
||
|
* c-lang.c (finish_file): Adjust dumping.
|
||
|
* toplev.h (dump_base_name): Make extern.
|
||
|
* invoke.texi: Document new flags.
|
||
|
|
||
|
2001-06-04 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* c-tree.h (lang_decl): Add pending_sizes fields.
|
||
|
* c-decl.c (store_parm_decls): Save pending_sizes away for nested
|
||
|
functions.
|
||
|
(c_expand_body): Expand them.
|
||
|
(lang_mark_tree): Mark lang_decl:pending_sizes.
|
||
|
* function.c (expand_pending_sizes): New function, broken out
|
||
|
from ...
|
||
|
(expand_function_start): ... here.
|
||
|
* tree.h (expand_pending_sizes): Declare it.
|
||
|
|
||
|
2001-06-04 Loren J. Rittle <ljrittle@acm.org>
|
||
|
|
||
|
* doc/install.texi: Update FreeBSD information. Generalize
|
||
|
and update information for alpha-based platforms using ELF.
|
||
|
|
||
|
2001-06-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||
|
|
||
|
* c-decl.c (get_parm_info): Use INTEGRAL_TYPE_P.
|
||
|
(store_parm_decls): Likewise.
|
||
|
* c-typeck.c (convert_arguments): Likewise.
|
||
|
|
||
|
2001-06-04 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* sibcall.c (optimize_sibling_and_tail_recursive_call): Suppress
|
||
|
optimization if current_function_calls_setjmp.
|
||
|
|
||
|
2001-06-04 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/c-tree.texi: Fix documentation of TREE_STRING_LENGTH for
|
||
|
wide strings.
|
||
|
|
||
|
Mon Jun 4 20:44:25 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* simplify-rtx.c (simplify_subreg): Fix combining of
|
||
|
paradoxical subregs.
|
||
|
|
||
|
Mon Jun 4 20:15:25 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* rtlanal.c (rtx_unsable_p): ADDRESSOF is stable.
|
||
|
(no_labels_between_p): Short circuit case beg==end.
|
||
|
|
||
|
Mon Jun 4 20:03:05 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* rtlanal.c (operand_preference): Fix preference for objects.
|
||
|
|
||
|
Mon Jun 4 20:00:40 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* gcse.c (handle_avail_expr): Be prepared to handle single_set
|
||
|
parallels.
|
||
|
|
||
|
Mon Jun 4 19:59:46 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* combine.c (if_then_else_cond): Use simplify_subreg instead
|
||
|
of operand_subword.
|
||
|
* integreate.c (sub_constants): Likewise.
|
||
|
|
||
|
Mon Jun 4 19:59:12 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* emit-rtl.c (constant_subword): Deprecate; remove most of code
|
||
|
and use simplify_gen_subreg.
|
||
|
|
||
|
Mon Jun 4 19:55:23 CEST 2001 Lars Brinkhoff <lars@nocrew.org>
|
||
|
|
||
|
* sibcall.c (skip_copy_to_return_value): recognize the situation
|
||
|
when the called function's return value is copied into an
|
||
|
intermediate pseudo, and then into the calling functions return
|
||
|
value register.
|
||
|
|
||
|
Mon Jun 4 16:50:33 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* simplify_rtx.c (simplify_subreg): Keep subregs on return values,
|
||
|
check CLASS_CANNOT_CHANGE_MODE before avoiding subreg on hard reg,
|
||
|
in case register wasn't OK previously, accept it now; allow
|
||
|
subregs of frame pointer if reload completed and frame pointer
|
||
|
is not needed.
|
||
|
|
||
|
* combine.c (sombine_simplify_rtx): Fix comment;
|
||
|
use subreg_lowpart_offset instead of subreg_lowpart_p
|
||
|
(gen_lowpart_for_combine): Use subreg_lowpart_offset.
|
||
|
* rtl.h (subreg_lowpart_parts_p): Kill.
|
||
|
(subreg_lowpart_offset, subreg_highpart_offset): Declare.
|
||
|
* simplify-rtx.c (simplify_subreg): Use subreg_lowpart_offset.
|
||
|
* emit-rtl.c (gen_lowpart_SUBREG): Use subreg_lowpart_offset;
|
||
|
(gen_lowpart_common): Likewise.
|
||
|
(subreg_lowpart_p): Likewise.
|
||
|
(subreg_lowpart_parts_p): Kill.
|
||
|
(subreg_lowpart_offset, subreg_highpart_offset): New function.
|
||
|
|
||
|
* emit-rtl.c (gen_lowpart_common): Use simplify_gen_subreg
|
||
|
to simplify SUBREG and REG.
|
||
|
(gen_highpart): Use simplify_gen_subreg for all simplifications.
|
||
|
|
||
|
* emit-rtl.c (gen_realpart, gen_imagpart): Do not handle
|
||
|
CONCAT specially.
|
||
|
|
||
|
* rtlanal.c (replace_regs): Use simplify_gen_subreg
|
||
|
|
||
|
Mon Jun 4 09:21:19 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* doc/c-tree.texi (ARRAY_REF): Say what type of expression must be.
|
||
|
(ARRAY_RANGE_REF): Added description.
|
||
|
|
||
|
* tree.def (ARRAY_RANGE_REF): New code.
|
||
|
* alias.c (handled_component_p, can_address_p): Handle it.
|
||
|
* dwarf2out.c (loc_descriptor_from_tree): Likewise.
|
||
|
* explow.c (set_mem_attributes): Likewise.
|
||
|
* expr.c (expand_assignment, get_inner_reference): Likewise.
|
||
|
(expand_expr, expand_expr_unaligned, do_jump): Likewise.
|
||
|
* fold-const.c (operand_equal_p): Likewise.
|
||
|
* tree.c (staticp, stabilize_reference): Likewise.
|
||
|
* varasm.c (decode_addr_const): Likewise.
|
||
|
|
||
|
Sun Jun 3 21:59:51 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* reload.c (reload_inner_reg_of_subreg): Return 1 for PLUS.
|
||
|
(push_reload): Handle non-REG in reload_inner_reg_of_subreg case.
|
||
|
|
||
|
2001-06-03 kaz Kojima <kkojima@rr.iij4u.or.jp>
|
||
|
|
||
|
* gcc/config/sh/sh.c (print_operand_address, print_operand): Call
|
||
|
mark_constant_pool_use before output_addr_const.
|
||
|
(struct pool_node): New field wend.
|
||
|
(add_constant): Note a sequence of constants that are referenced
|
||
|
by a given label.
|
||
|
(pool_window_label, pool_window_last): New variables.
|
||
|
(dump_table): Emit a unspec_volatile representing the end of a
|
||
|
sequence of constants.
|
||
|
(mark_constant_pool_use): New function.
|
||
|
* gcc/config/sh/sh.md (UNSPECV_WINDOW_END): New constant.
|
||
|
(consttable_2): Add the second operand which flags whether
|
||
|
this consttable entry was used or not.
|
||
|
(consttable_4, consttable_8, consttable_sf, consttable_df):
|
||
|
Likewise.
|
||
|
(consttable_window_end): New insn.
|
||
|
|
||
|
2001-06-03 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* insn-addr.h (INSN_ADDRESSES_NEW): Make insn_uid__ unsigned.
|
||
|
Reformat according to coding standards.
|
||
|
|
||
|
Warning removal.
|
||
|
* config/sh/sh.c (print_operand_address): Cast INTVAL to int.
|
||
|
(shl_and_kind): Cast wide constant.
|
||
|
(gen_far_branch): Define as static, as in declaration.
|
||
|
(barrier_align): Compute cache-line length as unsigned. Add
|
||
|
parentheses in initial credit computation.
|
||
|
(rounded_frame_size): Add parentheses.
|
||
|
(permanent_obstack): Remove declaration. Include ggc.h for
|
||
|
declaration of ggc_add_root_rtx().
|
||
|
(get_free_reg): Removed declaration of unused variable reg.
|
||
|
(legitimize_pic_address): Mark mode argument as unused.
|
||
|
|
||
|
2001-06-03 Igor Shevlyakov <igor@windriver.com>
|
||
|
|
||
|
* config/sh/sh.c (output_branch): Support for insn with lenght
|
||
|
attr 12 & 16 which represents cond branches outside +-4096 range.
|
||
|
|
||
|
2001-06-03 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/sh/lib1funcs.asm (ic_invalidate): Align the
|
||
|
cache-mirroring sequence. Add nops.
|
||
|
|
||
|
2001-06-03 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/install-old.texi: Remove more old installation
|
||
|
documentation.
|
||
|
* doc/install.texi: Add relevant parts here.
|
||
|
|
||
|
2001-06-03 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
|
||
|
|
||
|
* doc/install.texi2html: New script.
|
||
|
|
||
|
2001-06-03 David Edelsohn <edelsohn@gnu.org>
|
||
|
|
||
|
* doc/install.texi: Update AIX information again.
|
||
|
|
||
|
2001-06-02 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/gcc.texi, doc/install-old.texi: Remove old system-specific
|
||
|
installation documentation.
|
||
|
* doc/install.texi: Move it to here.
|
||
|
|
||
|
2001-06-02 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/install.texi: Clean up Texinfo markup.
|
||
|
|
||
|
2001-06-02 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/cpp.texi, doc/cppinternals.texi, doc/gcc.texi: Move contents
|
||
|
to just after title page.
|
||
|
|
||
|
2001-06-02 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* doc/install-old.texi: Remove documentation of some configuration
|
||
|
options.
|
||
|
* doc/install.texi: Add relevant parts of this documentation here.
|
||
|
|
||
|
2001-06-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
|
||
|
|
||
|
* contrib.texi: Updated entries for Mark Mitchell, Joseph S. Myers,
|
||
|
Gerald Pfeifer, Bernd Schmidt, and Dean Wakerley.
|
||
|
|
||
|
Sat Jun 2 12:23:51 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (all uses of ext_register_operand): Make sure they are
|
||
|
VOIDmode; replace all uses outside zero_extend.
|
||
|
(and?i splitters): Use ext_register_operands.
|
||
|
(test?i peep2): Remove ignored constraints.
|
||
|
* i386.c (ext_register_operand): Check that operand is
|
||
|
either pseudo or hard or 'Q' register.
|
||
|
|
||
|
Sat Jun 2 06:53:50 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* tree.h (struct record_layout_info_s): New field unpadded_align.
|
||
|
(set_lang_adjust_rli): New declaration.
|
||
|
* stor-layout.c (layout_decl): If DECL is packed, but at alignment
|
||
|
it would have if not packed, do not downgrade DECL_ALIGN.
|
||
|
(lang_adjust_rli, set_lang_adjust_rli): New.
|
||
|
(start_record_layout): Initialize new field unpadded_align.
|
||
|
(debug_rli): Display it.
|
||
|
(place_union_field, place_field): Set it.
|
||
|
(layout_type, case RECORD_TYPE): Call via lang_adjust_rli if set.
|
||
|
|
||
|
* print-tree.c (print_node): Don't print "regdecl" when bit doesn't
|
||
|
mean that; use proper names instead.
|
||
|
Print DECL_NO_STATIC_CHAIN.
|
||
|
|
||
|
* except.c (expand_builtin_frob_return_addr): Add missing call
|
||
|
to convert_memory_address #ifdef POINTERS_EXTEND_UNSIGNED.
|
||
|
(expand_builtin_eh_return): Likewise.
|
||
|
(expand_eh_return): Clean up ptr_mode != Pmode cases.
|
||
|
|
||
|
2001-06-01 Jan van Male <jan.vanmale@fenk.wau.nl>
|
||
|
|
||
|
* doc/invoke.texi: Remove references to papers about sequence points
|
||
|
to readings.html, refer to that page.
|
||
|
|
||
|
2001-06-01 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
|
||
|
|
||
|
* README: Update references to installation instructions.
|
||
|
|
||
|
2001-06-01 Laurent Guerby <guerby@acm.org>
|
||
|
Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
|
||
|
|
||
|
* doc/install.texi: Define srcdir when sources come from CVS.
|
||
|
Significantly improve markup. Wrap overly long lines
|
||
|
|
||
|
2001-06-01 DJ Delorie <dj@redhat.com>
|
||
|
|
||
|
* c-tree.texi, contrib.texi, cpp.texi, cppinternals.texi,
|
||
|
extend.texi, fdl.texi, gcov.texi, invoke.texi, md.texi,
|
||
|
objc.texi, rtl.texi, tm.texi, texinfo.tex, gcc.1, cpp.1,
|
||
|
gcov.1: Move to doc subdirectory.
|
||
|
* install.texi: Move to doc/install-old.texi.
|
||
|
* gcc.texi: Move to doc, refer to install-old.texi.
|
||
|
* Makefile.in: Reflect move of docs to doc/.
|
||
|
* f/Make-lang.in: Ditto.
|
||
|
* java/Make-lang.in: Ditto.
|
||
|
* doc/.cvsignore: New.
|
||
|
|
||
|
2001-05-31 Jan van Male <jan.vanmale@fenk.wau.nl>
|
||
|
|
||
|
* invoke.texi: use two spaces between command options, eliminate
|
||
|
some 'overfull hboxes'
|
||
|
|
||
|
2001-06-01 Hans-Peter Nilsson <hp@axis.com>
|
||
|
|
||
|
* Makefile.in (s-mlib): Make backtick-commands always succeed.
|
||
|
(DRIVER_DEFINES): Ditto.
|
||
|
|
||
|
2001-05-31 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* gcc.c (init_gcc_specs): When linking against libgcc_s.so,
|
||
|
also link against libgcc.a.
|
||
|
|
||
|
2001-05-31 Geoff Keating <geoffk@cygnus.com>
|
||
|
|
||
|
* config/mips/mips.h (ASM_OUTPUT_ASCII): Convert to function.
|
||
|
* config/mips/mips.c (mips_output_ascii): New function.
|
||
|
* config/mips/mips-protos.h (mips_output_ascii): Prototype.
|
||
|
|
||
|
* config/mips/mips.h (DWARF_CIE_DATA_ALIGNMENT): Force to 4.
|
||
|
|
||
|
Thu May 31 19:09:53 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* flow.c (set_block_for_new_insns): Remove bogus shortcut.
|
||
|
* i386.c (ix86_expand_int_movcc): Force one of operands to be register.
|
||
|
|
||
|
2001-05-31 Rodney Brown <rbrown64@csc.com.au>
|
||
|
|
||
|
* install.texi (Configuration): Add html links for --with-gnu-as &
|
||
|
--with-gnu-ld and refer to them from hppa & SCO triplets.
|
||
|
(Specific): Link back to with-gnu-ld for all ELF platfoms.
|
||
|
(Specific): Reword AVR binutils recommendation.
|
||
|
|
||
|
2001-05-30 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* ggc-page.c (size_lookup): Increase minimum allocation size
|
||
|
to eight bytes.
|
||
|
(ggc_print_statistics): Report size of each bin in bytes, not
|
||
|
as its order; there is no longer a direct relationship.
|
||
|
|
||
|
2001-05-31 Jan van Male <jan.vanmale@fenk.wau.nl>
|
||
|
|
||
|
* extend.texi: Fix formating of examples, eliminate some
|
||
|
'overfull hboxes'.
|
||
|
* gcc.texi: Eliminate some 'overfull hboxes'.
|
||
|
* invoke.texi: Use two spaces between command options, eliminate
|
||
|
some 'overfull hboxes'.
|
||
|
|
||
|
2001-05-30 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* dwarf2out.c (dwarf2out_finish): Don't emit DW_AT_stmt_list at -g1.
|
||
|
|
||
|
2001-05-30 Tom Tromey <tromey@redhat.com>
|
||
|
|
||
|
* gcc.c (do_spec_1): In `%O' case, if we computed saved_suffix,
|
||
|
use it in the new association.
|
||
|
|
||
|
2001-05-30 Loren J. Rittle <ljrittle@acm.org>
|
||
|
John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||
|
|
||
|
* gthr-posix.h (__gthread_active_ptr): Cast function pointer
|
||
|
to target type to allow ISO C++ compiler to accept it.
|
||
|
* gthr-dce.h (__gthread_active_ptr): Likewise.
|
||
|
* gthr-solaris.h (__gthread_active_ptr): Likewise.
|
||
|
|
||
|
2001-05-30 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpplex.c (_cpp_lex_token): Revert patch of 16 May 2001
|
||
|
so that we do accept comments in preprocessed input.
|
||
|
|
||
|
2001-05-30 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpphash.c (alloc_node): Cast allocated pointer.
|
||
|
|
||
|
2001-05-30 Gordon Sadler <gbsadler1@lcisp.com>
|
||
|
|
||
|
* invoke.texi (Option Summary): Remove -isystem-c++ from options.
|
||
|
|
||
|
2001-05-29 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
* gcc.texi: Add links for information about Objective-C.
|
||
|
|
||
|
2001-05-29 Nathan Sidwell <nathan@codesourcery.com>
|
||
|
|
||
|
* configure.in (gcc_version): Remove unrequired \ on ". (Solaris
|
||
|
/bin/sed fails on [^\"]).
|
||
|
(configargs.h): Likewise.
|
||
|
|
||
|
2001-05-29 Hartmut Schirmer <SchirmerH@Innovative-Systems.de>
|
||
|
|
||
|
* config/sh/sh.h (IDENT_ASM_OP): End with TAB, not LF.
|
||
|
|
||
|
2001-05-28 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
* objc/objc.gperf: Remove, no longer used.
|
||
|
|
||
|
2001-05-28 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* c-tree.texi, contrib.texi, cpp.texi, extend.texi, gcc.texi,
|
||
|
gcov.texi, install.texi, md.texi, objc.texi, rtl.texi, tm.texi:
|
||
|
Remove trailing whitespace.
|
||
|
|
||
|
2001-05-28 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
|
||
|
|
||
|
* doc/install.texi (Specific): http://reality.sgi.com/ariel/freeware/
|
||
|
became http://freeware.sgi.com/.
|
||
|
|
||
|
2001-05-27 Geoffrey Keating <geoffk@redhat.com>
|
||
|
|
||
|
* local-alloc.c (update_equiv_regs): Don't eliminate constant
|
||
|
expressions at -O0.
|
||
|
|
||
|
2001-05-27 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
* objc/objc-act.c: Add/fix various comments.
|
||
|
(init_selector): Remove, no longer used.
|
||
|
(build_msg_pool_reference): Ditto.
|
||
|
(objc_debug): Ditto.
|
||
|
|
||
|
2001-05-27 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* c-decl.c (init_decl_processing):
|
||
|
Don't call start_identifier_warnings.
|
||
|
* flags.h (warn_id_clash, id_clash_len): Remove.
|
||
|
* stringpool.c: Don't include flags.h.
|
||
|
(scan_for_clashes, do_identifier_warnings,
|
||
|
start_identifier_warnings): Remove.
|
||
|
* toplev.c (warn_id_clash, id_clash_len): Remove.
|
||
|
(display_help): Don't document -Wid-clash.
|
||
|
(decode_W_option): Print warning on -Wid-clash.
|
||
|
* tree.h (start_identifier_warnings): Remove.
|
||
|
* invoke.texi: Remove documentation of -Wid-clash.
|
||
|
|
||
|
2001-05-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* fixinc/fixtests.c: Declare entries in ENV_TABLE.
|
||
|
|
||
|
2001-05-27 Bruce Korb <bkorb@gnu.org>
|
||
|
|
||
|
* fixinc/check.tpl(HACK) add and use a Scheme variable
|
||
|
(has no test text): error out if no "test_text" is defined
|
||
|
* fixinc/fixincl.tpl: likewise
|
||
|
(FIXIDX): make it an enumeration so we minimize diffs
|
||
|
* fixinc/inclhack.def: re-alphabetize and add sort instructions
|
||
|
* fixinc/fixincl.x: regenerate
|
||
|
* fixinc/tests/base/stdio.h: test output got moved due to
|
||
|
the alphabetizing
|
||
|
* README-fixinc: rewrite (mostly)
|
||
|
|
||
|
2001-05-27 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpplib.c (run_directive): Set pfile->directive.
|
||
|
|
||
|
2001-05-23 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
|
||
|
|
||
|
* c-tree.texi: Reformat the manual as a single chapter now
|
||
|
included by gcc.texi.
|
||
|
* gcc.texi: Include c-tree.texi. Merge all indexes.
|
||
|
* Makefile.in (dvi): Add generation for the cppinternals
|
||
|
documentation. Added dependencies on fdl.texi and c-tree.texi
|
||
|
where appropriate. Use TEXI2DVI instead of custom tex calls.
|
||
|
(info): Added dependencies on fdl.texi and c-tree.texi where
|
||
|
appropriate. Remove the target c-tree.info.
|
||
|
|
||
|
2001-05-27 Lars Brinkhoff <lars@nocrew.org>
|
||
|
|
||
|
* combine.c (try_combine): Fix typo in comment.
|
||
|
* expr.c (expand_expr): Likewise.
|
||
|
* config/i370/i370.md (untyped_call): Likewise.
|
||
|
|
||
|
2001-05-26 Bruce Korb <bkorb@gnu.org>
|
||
|
|
||
|
* fixinc/fixtests.c(stdc_0_in_system_headers_test): Must return "FIX"
|
||
|
when fixincl is operating in test mode
|
||
|
* fixinc/inclhack.def(AAB_dgux_int_varargs) : aesthetics
|
||
|
(AAB_ultrix_limits): remove redundant text
|
||
|
(AAB_ultrix_memory): ditto
|
||
|
(AAB_ultrix_string): ditto
|
||
|
(djgpp_wchar_h): fix the test text
|
||
|
(irix_stdio_va_list): add test text
|
||
|
(irix_limits_const): add a testing output file (limits.h is overwritten)
|
||
|
(strict_ansi_not_ctd): put limits.h second in list for same reason
|
||
|
(solaris27_mutex_init): test text needed selection text, too
|
||
|
|
||
|
* fixinc/fixtests.c(stdc_0_in_system_headers_test): Must return "FIX"
|
||
|
when fixincl is operating in test mode
|
||
|
|
||
|
2001-05-26 Philip Blundell <philb@gnu.org>
|
||
|
|
||
|
* config/c4x/c4x-protos.h: Use GCC_C_PRAGMA_H in place of _C_PRAGMA_H.
|
||
|
* config/i960/i960-protos.h: Likewise.
|
||
|
* config/i370/i370-protos.h: Likewise.
|
||
|
* config/h8300/h8300-protos.h: Likewise,
|
||
|
* config/sh/sh-protos.h: Likewise.
|
||
|
* config/v850/v850-protos.h: Likewise.
|
||
|
|
||
|
2001-05-26 Philip Blundell <philb@gnu.org>
|
||
|
|
||
|
* config/arm/arm-protos.h: Use GCC_C_PRAGMA_H in place of _C_PRAGMA_H.
|
||
|
|
||
|
2001-05-25 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* toplev.c (debug_args, f_options, W_options): Mark
|
||
|
descriptions for translation.
|
||
|
(display_help): Translate descriptions on output.
|
||
|
|
||
|
* cp/lang-options.h, f/lang-options.h, java/lang-options.h,
|
||
|
objc/lang-options.h: Mark descriptions for translation.
|
||
|
|
||
|
* aclocal.m4: Quote final argument of patsubst. Use
|
||
|
3-argument form of AC_DEFINE. Restore quotes to [] while
|
||
|
using AC_FD_CC.
|
||
|
* configure.in: Remove unnecessary changequote calls.
|
||
|
* configure, config.in: Regenerate.
|
||
|
|
||
|
2001-05-25 Sam TH <sam@uchicago.edu>
|
||
|
|
||
|
* basic-block.h: Fix header include guards.
|
||
|
* bitmap.h c-dump.h c-lex.h c-pragma.h c-tree.h collect2.h
|
||
|
cppdefault.h cpphash.h cpplib.h defaults.h diagnostic.h errors.h
|
||
|
except.h flags.h gcc.h gcov-io.h graph.h gstab.h gthr-aix.h
|
||
|
gthr-dce.h gthr-posix.h gthr-rtems.h gthr-single.h gthr-solaris.h
|
||
|
gthr-vxworks.h gthr-win32.h gthr.h hard-reg-set.h hwint.h
|
||
|
insn-addr.h libgcc2.h mbchar.h mkdeps.h params.h prefix.h real.h
|
||
|
rtl.h sbitmap.h system.h timevar.h toplev.h tradcpp.h tsystem.h
|
||
|
varray.h version.h: Likewise.
|
||
|
* config/dbxelf.h config/fp-bit.h config/arm/arm-protos.h
|
||
|
config/arm/arm.h config/c4x/c4x-protos.h
|
||
|
config/h8300/h8300-protos.h config/h8300/h8300.h
|
||
|
config/i370/i370-protos.h config/i370/i370.h
|
||
|
config/i960/i960-protos.h config/mcore/mcore.h
|
||
|
config/mips/mips-protos.h config/sh/sh-protos.h config/sh/sh.h
|
||
|
config/v850/v850-protos.h config/v850/v850.h: Likewise.
|
||
|
* fixinc/fixlib.h fixinc/server.h: Likewise.
|
||
|
|
||
|
2001-05-25 Stacey Sheldon <ssheldon@Catena.com>
|
||
|
|
||
|
* config/arc/initfini.c (.init): Fix typo.
|
||
|
|
||
|
2001-05-25 Geoffrey Keating <geoffk@redhat.com>
|
||
|
|
||
|
* config/rs6000/rs6000.md (fseldfsf4): Correct mode of operand 4.
|
||
|
|
||
|
2001-05-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||
|
|
||
|
* i386/i386.h (CC1_CPU_SPEC): Clarify -m486 etc deprecation messages.
|
||
|
|
||
|
2001-05-25 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* libgcc-std.ver: Export XFmode and TFmode versions of symbols.
|
||
|
|
||
|
2001-05-25 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config.gcc (all gnu and linux): Use t-slibgcc-elf-ver with t-linux.
|
||
|
(i386-*-solaris2): Use t-slibgcc-elf-ver or t-slibgcc-sld.
|
||
|
(sparc*-*-solaris2): Likewise.
|
||
|
* config/t-linux: Remove shared libgcc macros.
|
||
|
* config/t-slibgcc-elf-ver: Move from sparc/t-slibgcc.
|
||
|
* config/t-slibgcc-sld: Move from sparc/t-slibgcc-sld.
|
||
|
|
||
|
2001-05-25 Loren J. Rittle <ljrittle@acm.org>
|
||
|
|
||
|
* config.gcc (*-*-freebsd*): Report bad configuration.
|
||
|
|
||
|
2001-05-25 David Edelsohn <edelsohn@gnu.org>
|
||
|
|
||
|
* xcoffout.h (DBX_OUTPUT_GCC_MARKER): Do not emit any marker.
|
||
|
|
||
|
* config/rs6000/aix.h (USER_LABEL_PREFIX): AIX symbols do not have
|
||
|
any prefix.
|
||
|
(ASM_OUTPUT_LABELREF): Delete.
|
||
|
|
||
|
2001-05-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||
|
|
||
|
* fixinc/inclhack.def (strict_ansi_not, strict_ansi_not_ctd,
|
||
|
strict_ansi_only): Don't run if stdc_0_in_system_headers.
|
||
|
* fixinc/fixincl.x: Regenerate.
|
||
|
* fixinc/fixtests.c (stdc_0_in_system_headers_test): New function.
|
||
|
(FIX_TEST_TABLE): Declare it.
|
||
|
* fixinc/fixlib.h: Include config.h.
|
||
|
|
||
|
2001-05-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||
|
|
||
|
* fixinc/inclhack.def (alpha___assert): Change char * args to
|
||
|
const char * on Tru64 UNIX to avoid excessive warnings from
|
||
|
assert.h.
|
||
|
* fixinc/fixincl.x: Regenerate.
|
||
|
|
||
|
2001-05-25 Geoff Keating <geoffk@redhat.com>
|
||
|
|
||
|
* dbxout.c (dbxout_symbol): Invert previous patch, which was
|
||
|
outputting a tag only for variable-size records.
|
||
|
|
||
|
2001-05-25 Jeff Knaggs <jknaggs@redhat.com>
|
||
|
|
||
|
* config/alpha/alpha.md (movtf_internal): Use reg_overlap_mentioned_p
|
||
|
instead of rtx_equal_p for early clobber test.
|
||
|
|
||
|
2001-05-26 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* builtins.def: Encode additional information, such as names and
|
||
|
types, here.
|
||
|
* builtin-types.def: New file.
|
||
|
* builtins.c (built_in_names): Adjust use of DEF_BUILTIN.
|
||
|
(built_in_decls): Likewise. Don't explicitly initialize global
|
||
|
data to NULL.
|
||
|
(expand_builtin_mathfn): Handle float and long double variants of
|
||
|
math builtins.
|
||
|
(expand_builtin): Likewise.
|
||
|
* c-common.c (c_common_nodes_and_builtins): Make it table-driven.
|
||
|
(expand_tree_builtin): Handle long, long long, float, and long
|
||
|
double variants of math functions.
|
||
|
* c-common.h (c_tree_index): Remove some unused nodes.
|
||
|
(void_ftype): Remove.
|
||
|
(void_type_ptr): Likewise.
|
||
|
(int_ftype_int): Likewise.
|
||
|
(ptr_ftype_sizetype): Likewise.
|
||
|
* c-decl.c (init_decl_processing): Remove creation of DWARF
|
||
|
builtins.
|
||
|
* defaults.h (MD_INIT_BUILTINS): Provide default definition.
|
||
|
* tree.h (built_in_function): Adjust definition of DEF_BUILTIN.
|
||
|
* Makefile.in (c-common.o): Depend on builtin-types.def.
|
||
|
|
||
|
2001-05-25 Dale Johannesen <dalej@apple.com>
|
||
|
|
||
|
* config/rs6000/t-darwin: Fix dependencies for darwin.o.
|
||
|
|
||
|
2001-05-25 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* c-parse.in (notype_initdcl): Remove redundant line.
|
||
|
|
||
|
2001-05-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||
|
|
||
|
* aclocal.m4: Fixed typo.
|
||
|
(gcc_AC_HEADER_STDBOOL): Define.
|
||
|
(gcc_AC_C__BOOL): Define.
|
||
|
* configure.in: Use them.
|
||
|
(AC_CHECK_HEADERS): Remove stdbool.h
|
||
|
* configure, config.in: Regenerate.
|
||
|
|
||
|
2001-05-25 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* function.c (expand_function_start): Don't abort on PARALLEL
|
||
|
returns from hard_function_value.
|
||
|
|
||
|
2001-05-25 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/i386/i386.md: Revert previous change. Do not apply
|
||
|
the peephole if the components do not die after the sequence.
|
||
|
|
||
|
2001-05-25 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* c-parse.in (array_declarator): New. Handle C99 constructs.
|
||
|
Don't restrict [*] declarators to C only.
|
||
|
(after_type_declarator, parm_declarator_starttypename,
|
||
|
parm_declarator_nostarttypename, notype_declarator,
|
||
|
direct_absdcl1): Use it.
|
||
|
* c-decl.c (build_array_declarator, set_array_declarator_type):
|
||
|
New functions. Warn that [*] isn't properly implemented; pedwarn
|
||
|
for [*] outside C99 mode if pedantic rather than giving a hard
|
||
|
error.
|
||
|
(grokdeclarator): Handle static and type qualifiers in parameter
|
||
|
array declarators.
|
||
|
* c-tree.h (build_array_declarator, set_array_declarator_type):
|
||
|
Declare.
|
||
|
* extend.texi (Attribute Syntax): Document attributes in parameter
|
||
|
array declarators.
|
||
|
|
||
|
2001-05-25 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* config/i386/i386.md: Make sure cmpstr peepholes do not
|
||
|
affect liveness information.
|
||
|
|
||
|
2001-05-24 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* c-typeck.c (digest_init): Issue error messages about
|
||
|
invalid constants, not warnings.
|
||
|
|
||
|
2001-05-24 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* invoke.texi (-fno-builtin): Document that this is always on
|
||
|
in C++.
|
||
|
|
||
|
2001-05-24 Philip Blundell <philb@gnu.org>
|
||
|
|
||
|
* doc/install.texi (arm*-*-linux-gnu): Say that binutils 2.10 is
|
||
|
required.
|
||
|
|
||
|
2001-05-24 Philip Blundell <philb@gnu.org>
|
||
|
|
||
|
* config/arm/arm.c (output_return_instruction): Correctly handle
|
||
|
interworking and interrupt functions.
|
||
|
|
||
|
2001-05-24 Philip Blundell <philb@gnu.org>
|
||
|
|
||
|
* config/arm/arm.h (TARGET_SWITCHES): Correct misleading help for
|
||
|
-m{no-}sched-prolog. Fix typos and improve formatting.
|
||
|
|
||
|
2001-05-24 Philip Blundell <philb@gnu.org>
|
||
|
|
||
|
* invoke.texi (ARM Options): Improve wording slightly. Add
|
||
|
documentation for more options, including those for Thumb mode.
|
||
|
Don't mention options that don't exist or are unimplemented.
|
||
|
(Thumb Options): Delete; merged into above section.
|
||
|
|
||
|
2001-05-24 Geoff Keating <geoffk@redhat.com>
|
||
|
|
||
|
* config/rs6000/linux.h (SIGNAL_FRAMESIZE): Define.
|
||
|
(MD_FALLBACK_FRAME_STATE_FOR): Use it.
|
||
|
|
||
|
Thu May 24 19:47:19 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* simplify-rtx.c (simplify_subreg): Fix CONCAT simplification;
|
||
|
fix hard register simplification.
|
||
|
|
||
|
Thu May 24 00:15:17 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||
|
|
||
|
* sparc/sol2.h (CPLUSPLUS_CPP_SPEC): Add all of CPP_SPEC instead
|
||
|
of just copying CPP_CPU_SPEC.
|
||
|
|
||
|
Thu May 24 15:56:48 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (incdec_operand): Accept only 1 and -1.
|
||
|
|
||
|
2001-05-23 Kelley Cook <kelley.cook@home.com>
|
||
|
|
||
|
* Makefile.in: Move many of the *_H definitions eariler in the
|
||
|
file, so that rules in t-* files that use them for
|
||
|
dependencies will work in a parallel build.
|
||
|
* config/i386/t-cygwin (winnt.o): Depend on $(CONFIG_H).
|
||
|
|
||
|
2001-05-23 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* integrate.c (expand_inline_function): Handle CONCAT DECL_RESULT.
|
||
|
|
||
|
2001-05-23 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpp.texi: Update for handling of charconsts.
|
||
|
* cpplex.c (maybe_read_ucs): Don't accept D800-DFFF. Update
|
||
|
diagnostics. Skip to the end if the UCS is too short.
|
||
|
(cpp_interpret_charconst): Long charconsts issue a warning
|
||
|
not an error.
|
||
|
|
||
|
2001-05-23 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* doc/install.texi (alpha-linux): Require binutils 2.11.
|
||
|
|
||
|
2001-05-23 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* c-lex.c (read_escape, read_ucs): Delete.
|
||
|
(lex_string): Use cpp_parse_escape.
|
||
|
* cpplex.c (read_ucs): Rename maybe_read_ucs. Do nothing
|
||
|
if not C++ or not C99. Warn if traditional.
|
||
|
(parse_escape): Rename cpp_parse_escape. Make the bitmask
|
||
|
unsigned. Warn for out-of-range escape sequences here.
|
||
|
Update to use maybe_read_ucs.
|
||
|
(cpp_interpret_charconst): Don't warn here.
|
||
|
* cpplib.h (cpp_parse_escape): New exported function.
|
||
|
|
||
|
2001-05-23 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* extend.texi (Attribute Syntax): Clarify application of
|
||
|
attributes to parameters declared as functions or arrays.
|
||
|
|
||
|
2001-05-23 Jason Merrill <jason_merrill@redhat.com>
|
||
|
|
||
|
* dbxout.c (dbxout_type_methods): Do still group methods by name.
|
||
|
|
||
|
2001-05-23 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* diagnostic.c (vnotice): Kill.
|
||
|
(fnotice): Call vfprintf directly.
|
||
|
(diagnostic_for_decl, output_do_verbatim, output_verbatim,
|
||
|
verbatim, set_diagnostic_context): Rename string argument to
|
||
|
indicate that it is run through gettext.
|
||
|
(vbuild_message_string, build_message_string, output_do_printf):
|
||
|
Rename string argument to indicate that it is NOT run through
|
||
|
gettext.
|
||
|
(output_printf, diagnostic_for_decl, fatal_io_error, sorry,
|
||
|
output_do_verbatim, set_diagnostic_context, fnotice, _fatal_insn):
|
||
|
Run msgid argument through gettext.
|
||
|
(default_print_error_function): Run constant strings through
|
||
|
gettext when nothing else will.
|
||
|
(fatal_error, internal_error, error_recursion): Use fnotice.
|
||
|
Present complete sentences to gettext.
|
||
|
|
||
|
2001-05-23 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* jump.c (mark_jump_label): Fix thinko in 2001-05-19 change.
|
||
|
|
||
|
2001-05-23 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* function.c (expand_function_start): Always use a pseudo
|
||
|
for the function result value.
|
||
|
|
||
|
2001-05-22 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/mips/iris6.h (EH_FRAME_SECTION_ASM_OP): Give the
|
||
|
section pointer alignment.
|
||
|
|
||
|
* doc/install.texi (alpha-linux): Require binutils >= 2.10.
|
||
|
|
||
|
* unwind-dw2-fde.c (__deregister_frame_info): Stringize use
|
||
|
of __USER_LABEL_PREFIX__.
|
||
|
|
||
|
2001-05-22 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* unwind-dw2-fde.c (__deregister_frame_info): Stubbify in favour of...
|
||
|
(__deregister_frame_info_bases): New.
|
||
|
* unwind-dw2-fde.h: Declare it.
|
||
|
* libgcc-std.ver: Export it.
|
||
|
* crtstuff.c (__do_global_dtors_aux): Call it if we would have
|
||
|
called __register_frame_info_bases.
|
||
|
|
||
|
2001-05-22 Loren J. Rittle <ljrittle@acm.org>
|
||
|
|
||
|
* config/freebsd.h (FBSD_CPP_PREDEFINES): Use #endif/#if pair
|
||
|
instead of #elif (which is OK for this case but not in general).
|
||
|
|
||
|
2001-05-22 Andrew MacLeod <amacleod@redhat.com>
|
||
|
|
||
|
* builtins.c (expand_builtin_longjmp): A longjmp can be a call too.
|
||
|
* config/ia64/ia64.md (nonlocal_goto): Reverse label and frame pointer
|
||
|
parameters to __ia64_nonlocal_goto. Flag as NO_RETURN.
|
||
|
* config/ia64/ia64.c (ia64_expand_epilogue): Make sure we are issuing
|
||
|
"r2" to the assembly file. Only issue allocs with non-zero parameters.
|
||
|
|
||
|
2001-05-22 Loren J. Rittle <ljrittle@acm.org>
|
||
|
David O'Brien <obrien@freebsd.org>
|
||
|
|
||
|
* config/freebsd.h (LIB_SPEC): Key the exact setting to
|
||
|
configure-time options and target version of FreeBSD. Set-up
|
||
|
to match architectural change in threading support. Correctly
|
||
|
report when -pthread option is not supported by configure-time
|
||
|
options.
|
||
|
(FBSD_CPP_PREDEFINES): Move from architecture-specific files
|
||
|
and extend to encode target version number in run-time setting
|
||
|
of __FreeBSD__ macro to match the system compiler.
|
||
|
(CPP_PREDEFINES): Likewise.
|
||
|
(PREFERRED_DEBUGGING_TYPE): Change to DWARF2_DEBUG.
|
||
|
|
||
|
* config/alpha/freebsd.h (CPP_PREDEFINES): Moved to common freebsd.h.
|
||
|
* config/i386/freebsd.h (CPP_PREDEFINES): Likewise.
|
||
|
|
||
|
2001-05-22 Loren J. Rittle <ljrittle@acm.org>
|
||
|
David O'Brien <obrien@freebsd.org>
|
||
|
|
||
|
* config.gcc (the unlabeled system switch statement): Add
|
||
|
generic configuration section to handle *-*-freebsd*. Also,
|
||
|
to match the system compiler, default to threading support (it
|
||
|
may be disabled with the standard --disable-threads
|
||
|
configuration-time switch).
|
||
|
(i[34567]86-*-freebsd* in machine-specific section): Use it.
|
||
|
(alpha*-*-freebsd* in machine-specific section): Likewise.
|
||
|
|
||
|
* config/freebsd3.h: New file to expose FBSD_MAJOR macro (3).
|
||
|
* config/freebsd4.h: New file to expose FBSD_MAJOR macro (4).
|
||
|
* config/freebsd5.h: New file to expose FBSD_MAJOR macro (5).
|
||
|
* config/freebsd6.h: New file to expose FBSD_MAJOR macro (6).
|
||
|
* config/freebsd-nthr.h: New file to expose FBSD_NO_THREADS macro.
|
||
|
|
||
|
2001-05-22 Loren J. Rittle <ljrittle@acm.org>
|
||
|
David O'Brien <obrien@freebsd.org>
|
||
|
|
||
|
* config/t-freebsd (TARGET_LIBGCC2_CFLAGS): Add -fPIC.
|
||
|
* config/t-freebsd-thread (TARGET_LIBGCC2_CFLAGS): Add
|
||
|
-pthread instead setting macro.
|
||
|
|
||
|
2001-05-22 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* crtstuff.c (__register_frame_info_bases): Declare.
|
||
|
(frame_dummy): Use it, if CRT_GET_RFIB_TEXT or CRT_GET_RFIB_DATA.
|
||
|
(__do_global_dtors_aux, __do_global_dtors): Streamline.
|
||
|
|
||
|
* config/i386/linux.h (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): New.
|
||
|
(CRT_GET_RFIB_DATA): New.
|
||
|
* config/i386/sysv4.h: Likewise.
|
||
|
* config/i386/sco5.h: Likewise.
|
||
|
(ASM_PREFERRED_EH_DATA_FORMAT): New.
|
||
|
|
||
|
2001-05-22 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* rtl.c (read_string): Break out from ...
|
||
|
(read_rtx): ... here.
|
||
|
|
||
|
2001-05-22 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
|
||
|
|
||
|
* doc/install.texi (Specific): Remove a bogus and duplicate part
|
||
|
copied from the end of the document.
|
||
|
|
||
|
2001-05-22 Bernd Schmidt <bernds@redhat.com>
|
||
|
|
||
|
* Makefile.in (LIBGCC_DEPS): Correct LIB1ASMSRC dependency.
|
||
|
|
||
|
2001-05-22 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
|
||
|
|
||
|
* install.texi: Remove obsolete information on SunOS as well as
|
||
|
i386-sun-sunos4, i860-intel-osf1, and powerpcle-*-solaris2*.
|
||
|
(Installing GNU CC on the Sun): Remove section.
|
||
|
|
||
|
2001-05-22 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* cppfiles.c (remove_component_p): Don't assume lstat/stat will
|
||
|
keep errno unchanged on success.
|
||
|
|
||
|
2001-05-22 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* c-lex.c (lex_number): If pedantic and not C99, pedwarn exactly
|
||
|
once for hexadecimal floats, whether or not they contain a decimal
|
||
|
point. Don't let the setting of pedantic otherwise affect the
|
||
|
parsing of hexadecimal floats.
|
||
|
|
||
|
2001-05-22 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
|
||
|
|
||
|
* README.ACORN: Remove obsolete file.
|
||
|
|
||
|
2001-05-22 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* combine.c (gen_binary): Use swap_commutative_operands_p
|
||
|
(simplify_comparison): Likewise.
|
||
|
* expmed.c (emit_store_flag): Likewise.
|
||
|
* expr.c (compare_from_rtx): Likewise.
|
||
|
(do_compare_rtx_and_jump): Likewise.
|
||
|
* optabs.c (emit_cmp_and_jump_insn): Revert last patch; abort
|
||
|
if not emitting a branch and operands want swapping.
|
||
|
|
||
|
2001-05-22 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* c-lex.c (c_lex): Just cast cpp's hashnode to gcc's one.
|
||
|
* stringpool.c: (IS_FE_IDENT, make_identifier): Delete.
|
||
|
(maybe_get_identifier): Update.
|
||
|
* tree.h (make_identifier): Delete.
|
||
|
|
||
|
2001-05-21 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* combine.c (subst): Do not substitute for a register as
|
||
|
a destination subreg/strict_low_part/zero_extract.
|
||
|
|
||
|
* combine.c (simplify_comparison): Update op1 after constant
|
||
|
extension.
|
||
|
* recog.c (const_int_operand): Accept only constants valid
|
||
|
for the given mode.
|
||
|
* genrecog.c: Update comments wrt const_int_operand.
|
||
|
|
||
|
* emit-rtl.c (init_emit_once): Zero unused memory in a
|
||
|
CONST_DOUBLE.
|
||
|
|
||
|
2001-05-21 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* tree.h (type_num_arguments): Declare it.
|
||
|
* tree.c (type_num_arguments): New function.
|
||
|
|
||
|
2001-05-21 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* dwarf2out.c (current_funcdef_number): Move outside dwarf2
|
||
|
conditional ifdef.
|
||
|
|
||
|
2001-05-21 Geoff Keating <geoffk@redhat.com>
|
||
|
|
||
|
* config/rs6000/rs6000.md (maxsf3): Use rs6000_emit_minmax.
|
||
|
(maxsf3+1): Delete.
|
||
|
(minsf3): Use rs6000_emit_minmax.
|
||
|
(minsf3+1): Generalize to handle both SMIN and SMAX. Use
|
||
|
rs6000_emit_minmax.
|
||
|
(movsfcc): Use rs6000_emit_cmove.
|
||
|
(fselsfsf4): Don't compare a CONST_INT with a floating-point value.
|
||
|
Don't generate emit_fselsfsf4.
|
||
|
(fseldfsf4): Likewise.
|
||
|
(maxdf3): Use rs6000_emit_minmax.
|
||
|
(maxdf3+1): Delete.
|
||
|
(mindf3): Use rs6000_emit_minmax.
|
||
|
(mindf3+1): Generalize to handle both SMIN and SMAX. Use
|
||
|
rs6000_emit_minmax.
|
||
|
(movdfcc): Use rs6000_emit_cmove.
|
||
|
(fseldfdf4): Don't compare a CONST_INT with a floating-point value.
|
||
|
Don't generate emit_fselsfsf4.
|
||
|
(fselsfdf4): Likewise.
|
||
|
* config/rs6000/rs6000.c (zero_fp_constant): New predicate.
|
||
|
(min_max_operator): New predicate.
|
||
|
(rs6000_emit_cmove): New function.
|
||
|
(rs6000_emit_minmax): New function.
|
||
|
* config/rs6000/rs6000-protos.h: Prototype new functions.
|
||
|
* config/rs6000/rs6000.h (PREDICATE_CODES): Add zero_fp_constant
|
||
|
and min_max_operator.
|
||
|
|
||
|
* config/rs6000/rs6000.c (output_cbranch): Handle all
|
||
|
conditional types in the switch statement.
|
||
|
|
||
|
2001-05-21 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* c-decl.c (finish_decl): Don't set DECL_C_HARD_REGISTER for
|
||
|
non-register variables.
|
||
|
* extend.texi: Document that asm-specifications do not make sense
|
||
|
for non-static local variables.
|
||
|
|
||
|
2001-05-21 Jason Merrill <jason_merrill@redhat.com>
|
||
|
|
||
|
* dbxout.c (MINIMAL_DEBUG, flag_minimal_debug): Lose.
|
||
|
(dbxout_type_fields): Lose minimal_debug support.
|
||
|
(dbxout_type_methods, dbxout_type): Likewise.
|
||
|
|
||
|
2001-05-17 Andrew Haley <aph@redhat.com>
|
||
|
|
||
|
* config/rs6000/linux.h (MD_FALLBACK_FRAME_STATE_FOR): New.
|
||
|
|
||
|
2001-05-21 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* dwarf2out.c (DEBUG_FRAME_SECTION): Rename from FRAME_SECTION.
|
||
|
Update all users.
|
||
|
|
||
|
2001-05-20 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* dwarf2out.c (DEBUG_ABBREV_SECTION, DEBUG_ARANGES_SECTION,
|
||
|
DEBUG_MACINFO_SECTION, DEBUG_LOC_SECTION, DEBUG_PUBNAMES_SECTION,
|
||
|
DEBUG_STR_SECTION): Rename from s/DEBUG_//. Update all users.
|
||
|
* dwarfout.c (DEBUG_SFNAMES_SECTION, DEBUG_SRCINFO_SECTION,
|
||
|
DEBUG_MACINFO_SECTION, DEBUG_PUBNAMES_SECTION, DEBUG_ARANGES_SECTION):
|
||
|
Likewise.
|
||
|
* config/mips/iris6.h (DEBUG_SFNAMES_SECTION, DEBUG_SRCINFO_SECTION,
|
||
|
DEBUG_MACINFO_SECTION, DEBUG_PUBNAMES_SECTION, DEBUG_ARANGES_SECTION,
|
||
|
DEBUG_FRAME_SECTION, DEBUG_ABBREV_SECTION): Rename as above.
|
||
|
(DEBUG_LOC_SECTION, DEBUG_STR_SECTION): New.
|
||
|
* config/ia64/ia64.h (DEBUG_ABBREV_SECTION, DEBUG_ARANGES_SECTION,
|
||
|
DEBUG_PUBNAMES_SECTION): Rename as above.
|
||
|
(DEBUG_MACINFO_SECTION, DEBUG_LOC_SECTION, DEBUG_STR_SECTION): New.
|
||
|
|
||
|
2001-05-20 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* optabs.c (emit_cmp_and_jump_insns): Don't swap commutative
|
||
|
operands unless the operation is commutative.
|
||
|
|
||
|
2001-05-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* fold-const.c (tree_expr_nonnegative_p): Detect more non-negative
|
||
|
cases.
|
||
|
|
||
|
2001-05-21 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* extend.texi: Clarify documentation of extensions included in ISO
|
||
|
C99. Prefer C99 terminology and syntax to old GNU terminology and
|
||
|
syntax. Add more index entries. Document mixed declarations and
|
||
|
code as an extension in C89 mode. Warn about future changes to
|
||
|
semantics of inline functions. Fixes PR other/930.
|
||
|
|
||
|
Sun May 20 16:39:24 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* expr.c (expand_expr, case ARRAY_REF): Don't fold constant
|
||
|
access if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.
|
||
|
(expand_expr, case COMPONENT_REF): Do copy if misaligned even
|
||
|
if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.
|
||
|
|
||
|
* stmt.c (expand_decl): Set mode, alignment, and sizes for CONST_DECL.
|
||
|
|
||
|
2001-05-20 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* sched-deps.c (sched_analyze_insn): Force volatile memory reads
|
||
|
to be output before a branch.
|
||
|
|
||
|
2001-05-20 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* Makefile.in (dwarf2asm.o): Depend on $(TREE_H).
|
||
|
|
||
|
2001-05-20 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/i386/att.h (ASM_SHORT, ASM_LONG): Add trailing \t.
|
||
|
(ASM_DOUBLE): Remove.
|
||
|
* config/i386/bsd.h, config/i386/sco5.h: Likewise.
|
||
|
* config/i386/sun386.h: Likewise.
|
||
|
|
||
|
* config/i386/i386.h (UNALIGNED_SHORT_ASM_OP): New.
|
||
|
(UNALIGNED_INT_ASM_OP, INT_ASM_OP): New.
|
||
|
|
||
|
* config/i386/cygwin.h (INT_ASM_OP): Remove.
|
||
|
* config/i386/freebsd-aout.h, config/i386/i386-aout.h: Likewise.
|
||
|
* config/i386/i386-coff.h, config/i386/i386-interix.h: Likewise.
|
||
|
* config/i386/netbsd.h, config/i386/openbsd.h: Likewise.
|
||
|
|
||
|
* config/i386/cygwin.h: Adjust uses of ASM_LONG for trailing \t.
|
||
|
* config/i386/djgpp.h, config/i386/i386.h: Likewise.
|
||
|
* config/i386/i386elf.h, config/i386/ptx4-i.h: Likewise.
|
||
|
* config/i386/sco5.h, config/i386/svr3gas.h: Likewise.
|
||
|
* config/i386/sysv4.h, config/i386/vsta.h: Likewise.
|
||
|
* config/i386/win32.h: Likewise.
|
||
|
|
||
|
2001-05-20 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* invoke.texi: Add more options to summary list.
|
||
|
|
||
|
2001-05-20 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* invoke.texi: Document meaning of -pedantic when -std=gnu* is
|
||
|
used. Fixes PR c/2291.
|
||
|
* gcc.1: Regenerate.
|
||
|
|
||
|
2001-05-20 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/m68hc11.c (m68hc11_override_options): Ignore
|
||
|
the -fpic and -fPIC options, clear flag_pic.
|
||
|
|
||
|
2001-05-20 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* hashtable.c (calc_hash): Fix HASHSTEP definition.
|
||
|
* stringpool.c (make_identifier): No statistics here anymore.
|
||
|
* objc-act.c (steup_string_decl): Remove redundant check.
|
||
|
|
||
|
2001-05-20 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* Makefile.in (OBJS, LIBCPP_OBJS, LIBCPP_DEPS,
|
||
|
cpplib.o, cpphash.o, fix-header): Update.
|
||
|
(hashtable.o): New target.
|
||
|
* c-common.h: Include cpplib.h. Define C_RID_CODE and
|
||
|
struct c_common_identifier here.
|
||
|
* c-lang.c (c_init_options): Update. Call set_identifier_size.
|
||
|
* c-lex.c (c_lex): Update.
|
||
|
* c-pragma.h: Update.
|
||
|
* c-tree.h (struct lang_identifier): Contain c_common_identifier.
|
||
|
Delete rid_code.
|
||
|
(C_RID_CODE): Delete.
|
||
|
* cpphash.c: Rewrite to use hashtable.c.
|
||
|
* cpphash.h: Update include guards.
|
||
|
(struct cpp_reader): Remove hashtab.
|
||
|
hash_ob and buffer_ob are no longer pointers. Add hash_table
|
||
|
and our_hashtable.
|
||
|
(HASHSTEP, _cpp_init_hashtable, _cpp_lookup_with_hash): Delete.
|
||
|
(_cpp_cleanup_hashtable): Rename _cpp_destroy_hashtable.
|
||
|
(_cpp_cleanup_stacks): Rename _cpp_init_directives.
|
||
|
* cppinit.c (cpp_create_reader): Update.
|
||
|
* cpplex.c (cpp_ideq, parse_identifier, cpp_output_token): Update.
|
||
|
(cpp_interpret_charconst): Eliminate warning.
|
||
|
* cpplib.c (do_pragma, do_endif, push_conditional,
|
||
|
cpp_push_buffer, cpp_pop_buffer): Update.
|
||
|
(_cpp_init_stacks): Rename cpp_init_directives.
|
||
|
(_cpp_cleanup_stacks): Remove.
|
||
|
* cpplib.h: Update include guards. Include tree-core.h and c-rid.h.
|
||
|
(cpp_hashnode, cpp_token, NODE_LEN, NODE_NAME,
|
||
|
cpp_forall_identifiers, cpp_create_reader): Update.
|
||
|
(C_RID_CODE, cpp_make_node): New.
|
||
|
(c_common_identifier): New identifier node for C front ends.
|
||
|
* cppmain.c (main): Update.
|
||
|
* fix-header.c (read_scan_file): Update.
|
||
|
* flags.h (id_clash_len): Make unsigned.
|
||
|
* ggc.h (ggc_mark_nonnull_tree): New.
|
||
|
* hashtable.c: New.
|
||
|
* hashtable.h: New.
|
||
|
* stringpool.c: Update comments and copyright. Update to use
|
||
|
hashtable.c.
|
||
|
* toplev.c (approx_sqrt): Move to hashtable.c.
|
||
|
(id_clash_len): Make unsigned.
|
||
|
* toplev.h (ident_hash): New.
|
||
|
* tree.c (gcc_obstack_init): Move to hashtable.c.
|
||
|
* tree.h: Include hashtable.h.
|
||
|
(IDENTIFIER_POINTER, IDENTIFIER_LENGTH): Update.
|
||
|
(GCC_IDENT_TO_HT_IDENT, HT_IDENT_TO_GCC_IDENT): New.
|
||
|
(struct tree_identifier): Update.
|
||
|
(make_identifier): New.
|
||
|
cp:
|
||
|
* cp-tree.h (struct lang_identifier, C_RID_YYCODE): Update.
|
||
|
(C_RID_CODE): Remove.
|
||
|
* lex.c (cxx_init_options): Call set_identifier_size. Update.
|
||
|
(init_parse): Don't do it here.
|
||
|
objc:
|
||
|
* objc-act.c (objc_init_options): Call set_identifier_size. Update.
|
||
|
|
||
|
Sat May 19 18:23:04 2001 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* except.c (dw2_build_landing_pads): Use word_mode, not Pmode,
|
||
|
as ncessary.
|
||
|
(expand_eh_return): Convert between word_mode and Pmode.
|
||
|
* unwind-dw2.c (extract_cie_info): Do not assume words and pointers
|
||
|
are the same size.
|
||
|
(execute_stack_op): Likewise.
|
||
|
(execute_cfa_program): Likewise.
|
||
|
(uw_frame_state_for): Likewise.
|
||
|
(uw_update_context_1): Likewise.
|
||
|
* unwind.inc (_Unwind_Reason_Code): Likewise.
|
||
|
* config/mips/mips.h (EH_RETURN_DATA_REGNO): Define.
|
||
|
(EH_RETURN_STACKADJ_RTX): Likewise.
|
||
|
* config/mips/mips.c (compute_frame_size): Make space for saving
|
||
|
EH return registers.
|
||
|
(mips_expand_epilogue): Handle EH stack adjustments.
|
||
|
* config/mips/mips.md (eh_return): New pattern.
|
||
|
(eh_set_lr_si): Likewise.
|
||
|
(eh_set_lr_di): Likewise.
|
||
|
Add splitter to perform EH return after reload.
|
||
|
|
||
|
2001-05-19 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* jump.c (mark_jump_label): Tidy previous change.
|
||
|
|
||
|
2001-05-19 Bruce Korb <bkorb@gnu.org>
|
||
|
|
||
|
* fixinc/genfixes: no need for two warnings
|
||
|
* fixinc/Makefile.in: open stdin for those building with a closed one.
|
||
|
|
||
|
2001-05-19 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* jump.c (jump_optimize_1): Tidy.
|
||
|
(mark_jump_label): When changing the label in a LABEL_REF, change
|
||
|
update any REG_EQUAL notes as well.
|
||
|
|
||
|
2001-05-19 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* c-parse.in (parm_declarator): Split into
|
||
|
parm_declarator_starttypename and parm_declarator_nostarttypename.
|
||
|
(parm_declarator_starttypename, parm_declarator_nostarttypename):
|
||
|
New. Allow parenthesised sub-declarators which don't begin with a
|
||
|
TYPENAME. Fixes PR c/166.
|
||
|
|
||
|
2001-05-19 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* defaults.h (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER): New
|
||
|
macro.
|
||
|
* tm.texi (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER):
|
||
|
Document it.
|
||
|
* toplev.c (main): If the target does not allow profiling without
|
||
|
a frame pointer, issue an error message.
|
||
|
* config/i386/linux.h (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER):
|
||
|
Define it to false.
|
||
|
|
||
|
Sat May 19 07:53:42 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* recog.c (general_operand): Modify last change to allow it if reload
|
||
|
has completed.
|
||
|
|
||
|
Sat May 19 10:23:54 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* recog.c (general_operand): Prohibit nonzero subreg bytes on
|
||
|
subregs containing mem.
|
||
|
|
||
|
Sat May 19 09:40:45 2001 Denis Chertykov <denisc@overta.ru>
|
||
|
|
||
|
* regrename.c (regrename_optimize): frame pointer register can
|
||
|
use a few hardregs.
|
||
|
|
||
|
2001-05-18 Jason Merrill <jason_merrill@redhat.com>
|
||
|
|
||
|
* README.DWARF: Move into dwarfout.c.
|
||
|
|
||
|
2001-05-18 Dale Johannesen <dalej@apple.com>
|
||
|
|
||
|
* config/rs6000/rs6000.c (secondary_reload_class): Fix Darwin
|
||
|
specific misuse of r0 as a reload address.
|
||
|
|
||
|
Fri May 18 22:42:04 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* combine.c (combine_simplify_rtx): Clear op0_mode if simplification
|
||
|
succeeded.
|
||
|
|
||
|
Fri May 18 07:26:34 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* genrecog.c (enum decision_type): Add DT_elt_zero-wide_safe.
|
||
|
(add_to_sequence): Make that decision type.
|
||
|
(maybe_both_true_2, nodes_identical_1, factor_tests): Use it.
|
||
|
(write_switch, write_cond, debug_decision_2): Likewise.
|
||
|
|
||
|
* dbxout.c (dbxout_type): Use host_integerp and fix typo in testing
|
||
|
for INTEGER_TYPE.
|
||
|
(dbxout_symbol, case TYPE_DECL): Don't generate tag for records of
|
||
|
variable size.
|
||
|
|
||
|
2001-05-18 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
* configure.in (gcc_cv_as_eh_frame): Cope with old assemblers.
|
||
|
* configure: Regenerate.
|
||
|
|
||
|
2001-05-18 Per Bothner <per@bothner.com>
|
||
|
|
||
|
Changes needed for java/jvspec.c
|
||
|
* gcc.h (n_infiles, outfiles): Add declarations.
|
||
|
* gcc.c (n_infiles, outfiles): Mske no longer static.
|
||
|
|
||
|
Fri May 18 10:14:42 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* config/pa/som.h (EXCEPTION_SECTION): Define.
|
||
|
|
||
|
2001-05-18 Daniel Berlin <dan@cgsoftware.com>
|
||
|
|
||
|
* dwarf2out.c: Add dw_loc_list_ref, a reference to a location
|
||
|
list.
|
||
|
Add have_location_lists, a variable to determine whether we need a
|
||
|
.debug_loc section or not.
|
||
|
(enum dw_val_class): Add dw_val_class_loc_list.
|
||
|
(dw_val_struct): Add val_loc_list.
|
||
|
(dw_loc_list_struct): New structure, represents location lists.
|
||
|
(new_loc_list): New function, return a new location list, given
|
||
|
the range and location expression.
|
||
|
(add_loc_descr_to_loc_list): New function, add a location
|
||
|
expression to a location list, given the expression and range.
|
||
|
(output_loc_list): New function, output a location list.
|
||
|
(gen_internal_sym): Modified to take symbol prefix, so we can
|
||
|
reuse it for location list symbols.
|
||
|
(add_AT_loc_list): New function, add a location list to a DIE at
|
||
|
the named attribute.
|
||
|
(AT_loc_list): New function, return the location list reference
|
||
|
for a given attribute, if it's a location list.
|
||
|
(print_die): Handle dw_val_class_loc_list.
|
||
|
(size_of_die): Ditto.
|
||
|
(value_format): Ditto.
|
||
|
(output_die): Ditto.
|
||
|
(output_location_lists): New function, output all of the location
|
||
|
lists for a DIE and it's children.
|
||
|
(dwarf2out_finish): Call output_location_lists if we have location
|
||
|
lists.
|
||
|
|
||
|
|
||
|
Fri May 18 15:39:16 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* gcse.c (try_replace_reg): First try global replace, later try to
|
||
|
simplify the expression.
|
||
|
|
||
|
* gcse.c (find_used_regs): Change calling convention; work via
|
||
|
note_uses.
|
||
|
(cprop_insn): Update call of find_used_regs; work for CALL_INSNs too.
|
||
|
|
||
|
2001-05-18 Bernd Schmidt <bernds@redhat.com>
|
||
|
|
||
|
Revert
|
||
|
2001-02-09 Nick Clifton <nickc@redhat.com>
|
||
|
* config/arm/arm.md: Change output constraint on post inc
|
||
|
load/store multiple patterns to be a read/write constraint.
|
||
|
|
||
|
2001-05-18 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* basic-block.h (struct basic_block_def): Add documentation about
|
||
|
what a basic block is, and what the various fields are used for.
|
||
|
* flow.c (calculate_globlal_regs_live): Add documentation about
|
||
|
how the algorithm works, and how we know that it will terminate.
|
||
|
Check that the the inductive assumption that guarantees
|
||
|
termination actually holds.
|
||
|
(mark_used_regs): Treat conditionally set registers as used.
|
||
|
(debug_regset): Add comment.
|
||
|
* rtl.texi (cond_exec): Add documentation.
|
||
|
|
||
|
* function.c (expand_function_start): Avoid creating BLKmode
|
||
|
pseudos.
|
||
|
|
||
|
2001-05-17 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* dwarf2out.c (output_comp_unit): Always output a compilation-unit
|
||
|
DIE, even if it has no children.
|
||
|
(dwarf2out_finish): Always output the line-number table, even if
|
||
|
it has no content.
|
||
|
|
||
|
2001-05-18 David Edelsohn <edelsohn@gnu.org>
|
||
|
|
||
|
* rs6000.md (movsfcc,movdfcc): Remove NE case.
|
||
|
|
||
|
2001-05-17 Bruce Korb <bkorb@gnu.org>
|
||
|
|
||
|
* fixinc/fixincl.tpl: rewritten as an AutoGen version 5 template
|
||
|
* fixinc/genfixes: emit a warning if AutoGen is out of date
|
||
|
|
||
|
2001-05-17 Brendan Conoboy <blc@cygnus.com>
|
||
|
Bruce Korb <bkorb@gnu.org>
|
||
|
|
||
|
* fixinc/fixincl.sh(FIXINC): accept local directory if fixincl not
|
||
|
found in fixinc directory. Facilitates binary distributions.
|
||
|
|
||
|
2001-05-17 Jeffrey Oldham <oldham@codesourcery.com>
|
||
|
|
||
|
* dbxout.c (dbxout_symbol_location): For CONCAT, skip types not
|
||
|
COMPLEX_TYPE.
|
||
|
|
||
|
Thu May 17 19:42:39 2001 Mark Kettenis <kettenis@wins.uva.nl>
|
||
|
|
||
|
* dwarf2out.c (modified_type_die): Equate qualified type to die.
|
||
|
|
||
|
Thu May 17 23:19:46 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* integrate.c (copy_rtx_and_substitute): Use simplify_gen_subreg.
|
||
|
(simplify_subreg): Handle complex types represented as CONCAT.
|
||
|
|
||
|
* recog.c (validate_replace_rtx_1): Properly canonicalize expression
|
||
|
* rtl.h (swap_commutative_operands_p): Declare.
|
||
|
* rtlanal.c (swap_commutative_operands_p): New.
|
||
|
(operand_preference): New static function.
|
||
|
|
||
|
* combine.c (combine_simplify_rtx): Use swap_commutative_operands_p.
|
||
|
(gen_binary): Likewise.
|
||
|
* optabs.c (emit_cmp_and_jump_insns, emit_conditional_move): Likewise.
|
||
|
* simplify-rtx.c (simplify_gen_binary,
|
||
|
simplify_gen_relational): Likewise.
|
||
|
|
||
|
Thu May 17 20:43:36 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* cse.c (fold_rtx): Use simplify_subreg.
|
||
|
|
||
|
* simplify-rtx.c (simplify_replace_rtx): Use simplify_gen_subreg.
|
||
|
(simplify_gen_subreg): New.
|
||
|
(simplify_rtx): Use simplify_subreg.
|
||
|
* rtl.h (simplify_gen_subreg): Declare.
|
||
|
|
||
|
2001-05-17 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* doc/install.texi: Update Solaris information.
|
||
|
|
||
|
* except.h (protect_cleanup_actions): Remove it.
|
||
|
(lang_protect_cleanup_actions): Declare it.
|
||
|
* except.c (protect_cleanup_actions): Remove it.
|
||
|
(lang_protect_cleanup_actions): New variable.
|
||
|
(init_eh): Don't make protect_cleanup_actions a GC root.
|
||
|
(expand_eh_region_and_cleanup): Call
|
||
|
lang_protect_cleanup_actions.
|
||
|
(output_function_exception_table): Remove unused `align'
|
||
|
variable.
|
||
|
* varasm.c (assemble_external): Abort if we have not yet
|
||
|
opened the assembly output file.
|
||
|
|
||
|
Thu May 17 11:54:50 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* except.c (sjlj_emit_function_enter): Call assemble_external_libcall
|
||
|
for eh_personality_libfunc.
|
||
|
|
||
|
Thu May 17 19:48:00 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* recog.c (validate_replace_rtx_1): Use "TO" mode if not VOIDmode
|
||
|
when calling simplify_subreg. This is needed to allow replacing
|
||
|
of expression of one mode by expression of different mode.
|
||
|
|
||
|
Thu May 17 19:40:03 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* simplify-rtx.c (simplify_subreg): Avoid creating of incorrect subregs.
|
||
|
|
||
|
2001-05-17 Bernd Schmidt <bernds@redhat.com>
|
||
|
|
||
|
* expr.c (protect_from_queue): Protect against subsequent calls to
|
||
|
emit_queue.
|
||
|
(expand_expr, case ADDR_EXPR): Prevent protect_from_queue from being
|
||
|
too clever.
|
||
|
|
||
|
Thu May 17 18:17:34 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* simplify_rtx.c (simplify_subreg): Fix simplification of nested subregs.
|
||
|
|
||
|
2001-05-17 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
|
||
|
|
||
|
* gccbug.in (CATEGORIES): Add "bootstrap".
|
||
|
|
||
|
Thu May 17 16:59:41 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* simplify-rtx.c (simplify_subreg): Break out from ...
|
||
|
* combine.c (combine_splify_rtx) ... here and ...
|
||
|
* recog.c (validate_replace_rtx_1): ... here;
|
||
|
* rtl.h (subreg_lowpart_parts_p, simplify_subreg): Declare.
|
||
|
* emit-rtl.c (subreg_lowpart_parts_p): Break out from ...
|
||
|
(subreg_lowpart_p): ... here.
|
||
|
|
||
|
2001-05-17 Bernd Schmidt <bernds@redhat.com>
|
||
|
|
||
|
* stmt.c (expand_asm_operands): For inout operands, make sure
|
||
|
the substitution of '=' for '+' makes it into the rtl.
|
||
|
|
||
|
* reload1.c (delete_output_reload): Call eliminate_regs on substed.
|
||
|
(reload_as_needed): Call update_eliminable_offsets a bit later.
|
||
|
|
||
|
2001-05-17 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
|
||
|
|
||
|
* gcc.texi (gccbug): Refer to the web pages for detailed information
|
||
|
on GNATS.
|
||
|
|
||
|
2001-05-16 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* libgcc1-test.c, libgcc1.c, config/i386/perform.h: Delete file.
|
||
|
|
||
|
* Makefile.in: Delete variables: OLDCC, CCLIBFLAGS, OLDAR,
|
||
|
OLDAR_FLAGS, LIBGCC1, LIBGCC1_TEST, CROSS_LIBGCC1,
|
||
|
LIB1FUNCS, and LIB1FUNCS_EXTRA. Delete rules: libgcc1-test,
|
||
|
libgcc1-test.o. Clarify commentary now that libgcc1 no longer exists.
|
||
|
* cross-make: Don't set LIBGCC1.
|
||
|
* mklibgcc.in: Delete all code for building from libgcc1.c.
|
||
|
Always honor LIB1ASMFUNCS if set.
|
||
|
|
||
|
* crtstuff.c, floatlib.c, longlong.h, config/fp-bit.c,
|
||
|
config/arc/lib1funcs.asm, config/arm/lib1funcs.asm,
|
||
|
config/d30v/libgcc1.asm, config/fr30/lib1funcs.asm,
|
||
|
config/h8300/lib1funcs.asm, config/i386/cygwin.asm,
|
||
|
config/i386/uwin.asm, config/m68hc11/larith.asm,
|
||
|
config/m68k/lb1sf68.asm, config/mcore/lib1.asm,
|
||
|
config/mn10200/lib1funcs.asm, config/sh/lib1funcs.asm,
|
||
|
config/sparc/lb1spc.asm, config/sparc/lb1spl.asm,
|
||
|
config/v850/lib1funcs.asm, config/c4x/libgcc.S:
|
||
|
Delete or update references to libgcc1 in commentary.
|
||
|
|
||
|
* config/t-libc-ok, config/t-linux, config/t-linux-aout,
|
||
|
config/t-netbsd, config/a29k/t-a29kbare, config/a29k/t-vx29k,
|
||
|
config/alpha/t-interix, config/alpha/t-osf, config/alpha/t-vms,
|
||
|
config/arc/t-arc, config/arm/t-arm-aout, config/arm/t-arm-coff,
|
||
|
config/arm/t-arm-elf, config/arm/t-linux, config/arm/t-pe,
|
||
|
config/arm/t-semi, config/arm/t-strongarm-coff,
|
||
|
config/arm/t-strongarm-elf, config/arm/t-strongarm-pe,
|
||
|
config/arm/t-xscale-coff, config/arm/t-xscale-elf, config/avr/t-avr,
|
||
|
config/c4x/t-c4x, config/d30v/t-d30v, config/fr30/t-fr30,
|
||
|
config/h8300/t-h8300, config/i386/t-beos, config/i386/t-cygwin,
|
||
|
config/i386/t-i386elf, config/i386/t-interix, config/i386/t-netware,
|
||
|
config/i386/t-next, config/i386/t-rtems-i386, config/i386/t-sol2,
|
||
|
config/i960/t-960bare, config/i960/t-vxworks960, config/ia64/t-ia64,
|
||
|
config/m32r/t-m32r, config/m68hc11/t-m68hc11-gas, config/m68k/t-lynx,
|
||
|
config/m68k/t-m68kbare, config/m68k/t-m68kelf,
|
||
|
config/m68k/t-mot3300-gald, config/m68k/t-mot3300-gas,
|
||
|
config/m68k/t-next, config/m68k/t-vxworks68, config/m88k/t-bug,
|
||
|
config/m88k/t-dgux, config/m88k/t-dgux-gas, config/m88k/t-dguxbcs,
|
||
|
config/m88k/t-luna, config/m88k/t-luna-gas, config/m88k/t-m88k,
|
||
|
config/m88k/t-m88k-gas, config/m88k/t-sysv4, config/mcore/t-mcore,
|
||
|
config/mcore/t-mcore-pe, config/mips/t-bsd, config/mips/t-bsd-gas,
|
||
|
config/mips/t-cross64, config/mips/t-ecoff, config/mips/t-elf,
|
||
|
config/mips/t-iris6, config/mips/t-r3900, config/mips/t-svr3,
|
||
|
config/mips/t-svr3-gas, config/mips/t-svr4, config/mips/t-svr4-gas,
|
||
|
config/mips/t-ultrix, config/mn10200/t-mn10200,
|
||
|
config/mn10300/t-mn10300, config/pa/t-linux, config/pa/t-linux64,
|
||
|
config/pa/t-pa, config/pa/t-pa64, config/pa/t-pro,
|
||
|
config/pdp11/t-pdp11, config/pj/t-pj, config/rs6000/t-aix43,
|
||
|
config/rs6000/t-beos, config/rs6000/t-darwin, config/rs6000/t-newas,
|
||
|
config/rs6000/t-ppccomm, config/rs6000/t-rs6000, config/sh/t-linux,
|
||
|
config/sh/t-sh, config/sparc/t-chorus-elf, config/sparc/t-elf,
|
||
|
config/sparc/t-sol2, config/sparc/t-sp86x, config/sparc/t-sparcbare,
|
||
|
config/sparc/t-sparclite, config/sparc/t-splet,
|
||
|
config/sparc/t-sunos41, config/sparc/t-vxsparc,
|
||
|
config/sparc/t-vxsparc64, config/v850/t-v850:
|
||
|
Don't set any of LIBGCC1, CROSS_LIBGCC1, or LIBGCC1_TEST.
|
||
|
|
||
|
* config/alpha/alpha.h, config/i386/i386.h, config/i860/i860.h:
|
||
|
Don't set FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, INTIFY, or FLOATIFY.
|
||
|
* config/d30v/d30v.h: Don't mention LIBGCC_NEEDS_DOUBLE,
|
||
|
FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, FLOATIFY, INTIFY,
|
||
|
nongcc_SI_type, nongcc_word_type, or perform_*
|
||
|
* config/i860/fx2800: Don't define perform_umodsi3 or perform_modsi3.
|
||
|
|
||
|
* config/i386/386bsd.h, config/i386/beos-elf.h,
|
||
|
config/i386/linux-aout.h, config/i386/linux-oldld.h,
|
||
|
config/i386/linux.h, config/i386/mach.h, config/i386/netbsd.h,
|
||
|
config/i386/openbsd.h, config/i386/osfrose.h, config/i386/rtemself.h:
|
||
|
Don't include i386/perform.h.
|
||
|
|
||
|
* config/a29k/t-a29k, config/arm/t-semiaof, config/i370/t-i370,
|
||
|
config/i370/t-linux, config/i370/t-mvs, config/i370/t-oe,
|
||
|
config/i386/t-djgpp, config/i386/t-i386bare, config/i386/t-vsta,
|
||
|
config/ia64/t-hpux, config/mips/t-mips, config/mips/t-mips-gas,
|
||
|
config/mips/t-osfrose, config/sparc/t-sp64, config/sparc/t-sunos40,
|
||
|
config/vax/t-openbsd, config/vax/t-vax: Delete.
|
||
|
|
||
|
* config.gcc: Remove references to deleted files.
|
||
|
(arm-semi-aof): Use arm/t-semi for tmake_file.
|
||
|
|
||
|
* gcc.texi, install.texi, invoke.texi, tm.texi:
|
||
|
Delete or rewrite text which is no longer relevant now that
|
||
|
libgcc1 no longer exists.
|
||
|
|
||
|
* config/t-openbsd, config/alpha/t-interix, config/i386/t-interix:
|
||
|
No need to set INSTALL_ASSERT_H. (Missed in previous sweep.)
|
||
|
|
||
|
2001-05-16 Wolfgang Bangerth <wolfgang.bangerth@iwr.uni-heidelberg.de>
|
||
|
Bruce Korb <bkorb@gnu.org>
|
||
|
|
||
|
* fixinc/inclhack.def(solaris27_mutex_init): Fix broken mutex
|
||
|
initializer
|
||
|
|
||
|
2001-05-16 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* i386.md: Add two peepholes to clean up code generated by
|
||
|
cmpstr* expanders.
|
||
|
|
||
|
2001-05-16 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* dwarf2asm.c (eh_data_format_name): Add names for "pointer size"
|
||
|
variants of non-absolute encodings.
|
||
|
|
||
|
* config/i386/i386.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
|
||
|
|
||
|
* libgcc-std.ver (_Unwind_Find_FDE, __register_frame_info_bases,
|
||
|
__register_frame_info_table_bases): Export.
|
||
|
|
||
|
2001-05-16 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* except.c (eh_data_format_name): Move to ...
|
||
|
* dwarf2asm.c: ... here. Use designated initializers if available.
|
||
|
(dw2_asm_output_encoded_addr_rtx): Accept varargs commentary.
|
||
|
* dwarf2asm.h: Update declarations.
|
||
|
* dwarf2out.c (output_cfi) [DW_CFA_set_loc]: If for_eh, mind
|
||
|
ASM_PREFERRED_EH_DATA_FORMAT.
|
||
|
(output_call_frame_info): Likewise. Use 'L' augmentation for
|
||
|
the LSDA encoding.
|
||
|
|
||
|
* unwind-dw2-fde.h (struct fde_vector): New.
|
||
|
(struct old_object): Rename from struct object.
|
||
|
(struct object): New.
|
||
|
(__register_frame_info_bases): Declare.
|
||
|
(__register_frame_info_table_bases): Declare.
|
||
|
(struct dwarf_fde): Remove explicit pc_begin/pc_range members.
|
||
|
* unwind-dw2-fde.c (objects): Remove.
|
||
|
(unseen_objects, seen_objects): New.
|
||
|
(__register_frame_info_bases): New.
|
||
|
(__register_frame_info): Use it.
|
||
|
(__register_frame_info_table_bases): New.
|
||
|
(__register_frame_info_table): Use it.
|
||
|
(__deregister_frame_info): Rewrite for changed object struct.
|
||
|
(base_from_object, get_cie_encoding, get_fde_encoding): New.
|
||
|
(fde_unencoded_compare): Rename from fde_compare; uninline.
|
||
|
(fde_single_encoding_compare, fde_mixed_encoding_compare): New.
|
||
|
(start_fde_sort): Adjust for new definition of fde_vector.
|
||
|
(fde_insert): Likewise.
|
||
|
(end_fde_sort): Likewise. Select comparison function based
|
||
|
on properties of the object.
|
||
|
(fde_split): Take object and fde_compare_t arguments.
|
||
|
(frame_heapsort, fde_merge): Likewise.
|
||
|
(classify_object_over_fdes): Rename from count_fdes. Handle
|
||
|
encoded pointers. Collect encoding, mixed_encoding, and pc_begin
|
||
|
for the object.
|
||
|
(add_fdes): Handle encoded pointers.
|
||
|
(init_object): Rename from frame_init. Update for new struct object.
|
||
|
(linear_search_fdes): Rename from search_fdes. Handle encoded
|
||
|
pointers.
|
||
|
(binary_search_unencoded_fdes): Broken out from _Unwind_Find_FDE.
|
||
|
(binary_search_single_encoding_fdes): New.
|
||
|
(binary_search_mixed_encoding_fdes): New.
|
||
|
(search_object): New.
|
||
|
(_Unwind_Find_FDE): Update for new struct object. Fill in
|
||
|
the dwarf_eh_bases.
|
||
|
* unwind-dw2.c: Include unwind-pe.h. Constify all pointers
|
||
|
iterating over EH data.
|
||
|
(_Unwind_FrameState): Remove saw_lsda, addr_encoding. Add
|
||
|
fde_encoding, lsda_encoding.
|
||
|
(read_uleb128, read_sleb128): Remove.
|
||
|
(read_encoded_pointer): Remove. All callers use read_encoded_value.
|
||
|
(extract_cie_info): Set lsda_encoding from 'L' augmentation.
|
||
|
(uw_frame_state_for): Don't set bases.func. Handle encoded fde
|
||
|
pointers.
|
||
|
* unwind-pe.h: Add "struct" to _Unwind_Context references.
|
||
|
|
||
|
2001-05-16 Neil Booth <neil@cat.daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppexp.c (lex): Use NODE_NAME and NODE_LEN.
|
||
|
* cpphash.c (_cpp_lookup_with_hash): Similarly.
|
||
|
* cpplex.c (cpp_ideq, parse_identifier, cpp_token_len,
|
||
|
cpp_spell_token, cpp_output_token): Similarly.
|
||
|
* cpplib.c (lex_macro_node, do_undef, do_pragma,
|
||
|
do_pragma_poison, parse_assertion, do_assert): Similarly.
|
||
|
* cppmacro.c (builtin_macro, parse_args, funlike_invocation_p,
|
||
|
save_parameter, _cpp_create_definition, check_trad_stringification,
|
||
|
cpp_macro_definition): Similarly.
|
||
|
* cppmain.c (cb_define, cb_undef, dump_macro): Similarly.
|
||
|
* c-lex.c (cb_undef, c_lex): Similarly.
|
||
|
* fix-header.c (recognized_function): Similarly.
|
||
|
* cpplib.h (NODE_LEN, NODE_NAME): New.
|
||
|
(cpp_hashnode): Rename length len.
|
||
|
|
||
|
Wed May 16 13:41:10 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* pa32-regs.h (HARD_REGNO_MODE_OK): Allow TI/TFmode values in
|
||
|
GPRs.
|
||
|
|
||
|
2001-05-16 Andreas Jaeger <aj@suse.de>
|
||
|
|
||
|
* Makefile.in (toplev.o): Add dependency on dwarf2asm.h.
|
||
|
|
||
|
* toplev.c: Include dwarf2asm.h for prototype of
|
||
|
dw2_output_indirect_constants.
|
||
|
|
||
|
Wed May 16 19:53:53 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* stmt.c (expand_asm_operands): Be able to offload addressof
|
||
|
expression to memory. (PR optimization/185)
|
||
|
|
||
|
Wed May 16 18:53:23 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* combine.c (combine_simplify_rtx): Set op0_mode to VOIDmode after
|
||
|
applying distributive law.
|
||
|
|
||
|
2001-05-16 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||
|
|
||
|
* pa-hpux10.h (THREAD_MODEL_SPEC): Define.
|
||
|
|
||
|
* gthr-dce.h (UNUSED): Attribute unused macro.
|
||
|
(__gthread_key_dtor): Make arguments UNUSED.
|
||
|
(__gthread_key_delete): Revise for compatibility with DRAFT4
|
||
|
implementation.
|
||
|
|
||
|
2001-05-16 David Edelsohn <edelsohn@gnu.org>
|
||
|
|
||
|
* doc/install.texi: Update AIX information.
|
||
|
* README.RS6000: Remove obsolete file.
|
||
|
|
||
|
2001-05-16 Jakub Jelinek <jakub@redhat.com>
|
||
|
Nathan Sidwell <nathan@codesourcery.com>
|
||
|
|
||
|
* gcc.c (give_switch): Don't write before start of string.
|
||
|
Always append suffix.
|
||
|
|
||
|
2001-05-16 Nathan Sidwell <nathan@codesourcery.com>
|
||
|
|
||
|
* cpplex.c (_cpp_lex_token, '/' case): Comments can't appear
|
||
|
after stage3.
|
||
|
|
||
|
2001-05-16 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
|
||
|
|
||
|
* README.ALTOS: Remove obsolete file.
|
||
|
|
||
|
2001-05-16 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* c-lex.h (save_and_forget_protocol_qualifiers,
|
||
|
forget_protocol_qualifiers, remember_protocol_qualifiers):
|
||
|
Remove deleted functions' prototypes.
|
||
|
|
||
|
2001-05-16 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* c-parse.in (methodtype): New production.
|
||
|
(methoddef, methodproto): Collapse separate '-' and '+'
|
||
|
handlers into 1.
|
||
|
|
||
|
2001-05-16 Neil Booth <neil@cat.daikokuya.demon.co.uk>
|
||
|
|
||
|
* c-common.h (RID_FIRST_PQ): New.
|
||
|
* c-parse.in (objc_pq_context): New.
|
||
|
(objc parser): Set objc_pq_context rather than calling
|
||
|
remember_protocol_qualifiers and forget_protocol_qualifiers.
|
||
|
Don't call save_and_forget_protocol_qualifiers.
|
||
|
(yylexname): Handle objc protocol qualifiers here.
|
||
|
* stringpool.c (struct str_header): Replace with sp_hashnode.
|
||
|
(SP_EMPTY, SP_LEN, SP_TREE, SP_STR, SP_VALID): New.
|
||
|
(alloc_string): Rename alloc_ident. Use the SP_ accessors.
|
||
|
Allocate an IDENTIFIER_NODE for each identifier.
|
||
|
(FORALL_STRINGS, set_identifier): Delete.
|
||
|
(FORALL_IDS, expand_string_table, stringpool_statistics): Update.
|
||
|
(ggc_alloc_string): Use an obstack.
|
||
|
(get_identifier, maybe_get_identifier, mark_string_hash): Update.
|
||
|
* tree.h: Update comments.
|
||
|
(set_identifier): Delete.
|
||
|
* objc/objc-act.c (N_PQ, saved_pq, saved_not_pq,
|
||
|
save_and_forget_protocol_qualifiers, forget_protocol_qualifiers,
|
||
|
remember_protocol_qualifiers): Delete.
|
||
|
|
||
|
Tue May 15 22:14:09 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* flow.c (life_analysis): After life analysis is complete, do
|
||
|
an optional scan over insns looking for REG_LABEL notes that
|
||
|
reference a deleted label.
|
||
|
(propagate_block_delete_insn): Verify INOTE is a CODE_LABEL
|
||
|
before peeking at LABEL_NUSES.
|
||
|
|
||
|
2001-05-15 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* unwind-sjlj.c (_Unwind_GetDataRelBase): New.
|
||
|
(_Unwind_GetTextRelBase): New.
|
||
|
|
||
|
2001-05-15 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* config/sparc/sol2.h (CPLUSPLUS_CPP_SPEC): Define.
|
||
|
|
||
|
2001-05-15 Geoffrey Keating <geoffk@redhat.com>
|
||
|
|
||
|
* objc/objc-act.c (handle_class_ref): Use rest_of_decl_compilation
|
||
|
so that CHOOSE_SECTION gets used.
|
||
|
|
||
|
* config/rs6000/sysv4.h (ASM_PREFERRED_EH_DATA_FORMAT): Treat
|
||
|
TARGET_RELOCATABLE like flag_pic for now.
|
||
|
|
||
|
2001-05-15 David Edelsohn <edelsohn@gnu.org>
|
||
|
|
||
|
* rs6000.md (movdi splitter): Sign extend more efficiently.
|
||
|
* rs6000.c (reg_or_arith_cint_operand): Redefine 64-bit constant
|
||
|
to "long long" valid on 32-bit and 64-bit hosts.
|
||
|
(logical_operand): Cast trunc_int_for_mode return value.
|
||
|
(rs6000_emit_move): Shift macro to encapsulate variable.
|
||
|
(rs6000_va_start): Use HOST_WIDE_INT_PRINT_DEC.
|
||
|
(rs6000_emit_{prologue,epilogue}): EH regno is unsigned but
|
||
|
plus_constant requires signed argument.
|
||
|
|
||
|
2001-05-15 Loren J. Rittle <ljrittle@acm.org>
|
||
|
|
||
|
* gthr-posix.h: Make additional pthread-* functions weak.
|
||
|
|
||
|
Tue May 15 13:51:32 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* recog.c (apply_change_group): Avoid unneeded validating.
|
||
|
|
||
|
2001-05-14 David Edelsohn <edelsohn@gnu.org>
|
||
|
|
||
|
* rs6000.c (num_insns_constant_wide): Constants are sign-extended.
|
||
|
(num_insns_constant): CONST_INT can be 64-bits.
|
||
|
|
||
|
2001-05-14 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
* config/darwin.h (LIB_SPEC): Just use -lSystem.
|
||
|
(LIBGCC_SPEC): Don't define.
|
||
|
|
||
|
2001-05-14 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* configure.in (gcc_cv_as_eh_frame): New test.
|
||
|
* config.in, configure: Rebuild.
|
||
|
* gcc.c (init_spec): Honor USE_AS_TRADITIONAL_FORMAT.
|
||
|
|
||
|
2001-05-14 Andrew MacLeod <amacleod@redhat.com>
|
||
|
|
||
|
* config/ia64/lib1funcs.asm (__divtf3): Fix incorrect bits in
|
||
|
extended precision divide.
|
||
|
|
||
|
2001-05-14 Andrew MacLeod <amacleod@redhat.com>
|
||
|
|
||
|
* config/ia64/ia64.c (rtx_needs_barrier): Call rtx_needs_barrier
|
||
|
for RETURNS as well.
|
||
|
|
||
|
Mon May 14 17:34:48 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.h (TARGET_64BIT): Define to constant if !TARGET_BI_ARCH
|
||
|
(CPP_CPU??_SIZE_TYPE): New.
|
||
|
(CPP_CPU??_SPEC, CPP_CPUCOMMON_SPEC): Break out from...
|
||
|
(CPP_CPU_SPEC): ... here; support choosing of CPU.
|
||
|
(EXTRA_SPECS): Add cpp_cpu??, cpp_cpu??sizet, cpp_cpucommon.
|
||
|
(MAX_LONG_TYPE_SIZE, MAX_BITS_PER_WORD): Define to 32 for 32bit-only
|
||
|
compiler.
|
||
|
* i386.c (override_options): Add sorry about not suported modes.
|
||
|
|
||
|
Mon May 14 08:56:47 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* config/pa/som.h (NM_FLAGS): Remove.
|
||
|
(ASM_OUTPUT_FUNCTION_PREFIX): No longer truncate subspace names.
|
||
|
(ASM_OUTPUT_SECTION_NAME): Remove.
|
||
|
(MAKE_DECL_ONE_ONLY, ASM_WEAKEN_LABEL): Likewise.
|
||
|
|
||
|
2001-05-14 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* regrename.c (regrename_optimize): Do not rename registers to
|
||
|
leaf registers.
|
||
|
|
||
|
2001-05-14 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* rtl.texi (CALL_INSN_FUNCTION_USAGE): Note that (and when) it may
|
||
|
contain MEMs. Remove useless distinction about clobbering
|
||
|
registers.
|
||
|
|
||
|
2001-05-13 Geoff Keating <geoffk@redhat.com>
|
||
|
|
||
|
* config/rs6000/rs6000.h (EXCEPTION_SECTION): Move to...
|
||
|
* config/rs6000/aix.h (EXCEPTION_SECTION): ... here.
|
||
|
* config/rs6000/sysv4.h (CONST_SECTION_ASM_OP): Delete.
|
||
|
(ASM_PREFERRED_EH_DATA_FORMAT): Define.
|
||
|
(EXCEPTION_SECTION): Define.
|
||
|
|
||
|
2001-05-13 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* libgcc2.c, libgcc2.h: Restore __eprintf. Label as used for
|
||
|
binary backward compat only.
|
||
|
* Makefile.in (LIB2FUNCS_ST): New. Put _eprintf here, not
|
||
|
in LIB2FUNCS. Pass it to mklibgcc.
|
||
|
* mklibgcc.in: Handle LIB2FUNCS_ST.
|
||
|
|
||
|
* Makefile.in (installdirs): Don't create $(gcc_tooldir).
|
||
|
|
||
|
2001-05-13 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* tm.texi (THREAD_MODEL_SPEC): Document it.
|
||
|
* gcc.c (main): Use it.
|
||
|
* config/rs6000/aix43.h (THREAD_MODEL_SPEC): Define it.
|
||
|
* config/rs6000/aix51.h (THREAD_MODEL_SPEC): Likewise.
|
||
|
|
||
|
2001-05-13 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
|
||
|
|
||
|
* rtl.h (SYMBOL_REF_WEAK): New macro.
|
||
|
* rtlanal.h (rtx_addr_can_trap): Use it, a weak SYMBOL_REF can trap.
|
||
|
* varasm.c (make_decl_rtl): Mark SYMBOL_REF weak if necessary.
|
||
|
* rtl.texi (SYMBOL_REF_WEAK): Document it.
|
||
|
* gcc.texi: Remove wrong description.
|
||
|
|
||
|
2001-05-13 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* Makefile.in (STAMP): New macro.
|
||
|
Replace all uses of `touch' with $(STAMP).
|
||
|
* fixinc/Makefile.in: Likewise.
|
||
|
|
||
|
Sun May 13 07:26:34 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* configure.in: ldopen is never in -lexc, so don't test for it.
|
||
|
Add test for exc_resume in -lexc for Ada.
|
||
|
* configure: Regenerated.
|
||
|
|
||
|
2001-05-12 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* dwarf2asm.c (size_of_encoded_value): New function.
|
||
|
* dwarf2asm.h: Declare it.
|
||
|
* except.c (output_function_exception_table): Align the TType
|
||
|
array only as wide as the encoding.
|
||
|
|
||
|
2001-05-12 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* extend.texi: Document #pragma GCC java_exceptions.
|
||
|
|
||
|
2001-05-12 Neil Booth <neil@cat.daikokuya.demon.co.uk>
|
||
|
|
||
|
* c-parse.in (bison parser, init_reswords): Remove uses of
|
||
|
doing_objc_thang.
|
||
|
* c-tree.h (doing_objc_thang): Remove.
|
||
|
|
||
|
2001-05-12 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpplex.c (_cpp_lex_token): Ensure we warn at most once
|
||
|
about files not ending in newlines.
|
||
|
|
||
|
2001-05-12 Neil Booth <neil@cat.daikokuya.demon.co.uk>
|
||
|
|
||
|
* dwarfout.c (dwarfout_init): Add cast.
|
||
|
* sched-deps.c (sched_analyze_insn): Remove unused vars.
|
||
|
* unwind-dw2-fde.c (_Unwind_Find_FDE): Flag unused parameter so.
|
||
|
cp:
|
||
|
* method.c (build_mangled_C99_name): Remove unused prototype.
|
||
|
|
||
|
2001-05-12 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/arm/arm.h (TARGET_PTRMEMFUNC_VBIT_LOCATION): Use delta.
|
||
|
|
||
|
2001-05-12 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* defaults.h (TARGET_PTRMEMFUNC_VBIT_LOCATION): Define.
|
||
|
* tm.texi (TARGET_PRTMEMFUNC_VBIT_LOCATION): Document.
|
||
|
|
||
|
2001-05-11 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* defaults.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
|
||
|
* dwarf2asm.c (dw2_force_const_mem, dw2_output_indirect_constant_1,
|
||
|
dw2_output_indirect_constants, dw2_asm_output_encoded_addr_rtx): New.
|
||
|
* dwarf2asm.h (dw2_asm_output_encoded_addr_rtx): Prototype.
|
||
|
(dw2_output_indirect_constants): Prototype.
|
||
|
* dwarf2out.c (dwarf2out_begin_prologue): Generate
|
||
|
current_function_func_begin_label if we'll need it for EH. Exit
|
||
|
early for IA64_UNWIND_INFO.
|
||
|
* except.c: Get DW_EH_PE_* defines from dwarf2.h.
|
||
|
(eh_data_format_name): Update for indirect references.
|
||
|
(output_function_exception_table): Care for IA64_UNWIND_INFO.
|
||
|
Handle ASM_PREFERRED_EH_DATA_FORMAT.
|
||
|
* except.h (MUST_USE_SJLJ_EXCEPTIONS): IA64_UNWIND_INFO needn't
|
||
|
define HAVE_eh_return etc.
|
||
|
* final.c (final_start_function): Always call dwarf2out_begin_prologue.
|
||
|
(final_end_function): Don't call output_function_exception_table.
|
||
|
* toplev.c (compile_file): Call dw2_output_indirect_constants.
|
||
|
(rest_of_compilation): Invoke output_function_exception_table
|
||
|
for ia64 before assemble_end_function.
|
||
|
* tm.texi (ASM_PREFERRED_EH_DATA_FORMAT): Document.
|
||
|
(ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): Document.
|
||
|
|
||
|
* unwind-dw2.c (_Unwind_GetTextRelBase, _Unwind_GetDataRelBase): New.
|
||
|
* unwind.h: Declare them.
|
||
|
* libgcc-std.ver: Export them.
|
||
|
* unwind-pe.h: New file.
|
||
|
|
||
|
* config/alpha/elf.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
|
||
|
|
||
|
* config/ia64/fde-glibc.c: Use "struct unw_table_entry"
|
||
|
instead of "fde".
|
||
|
(find_fde_for_dso): Extract DT_PLTGOT.
|
||
|
(_Unwind_FindTableEntry): Rename from __ia64_find_fde; return
|
||
|
the segment and gp as well.
|
||
|
* config/ia64/frame-ia64.c: Remove file.
|
||
|
* config/ia64/frame-ia64.h: Remove file.
|
||
|
* config/ia64/unwind-ia64.c: New file.
|
||
|
* config/ia64/unwind-ia64.h: New file.
|
||
|
* config/ia64/ia64.h (ASM_OUTPUT_EH_CHAR): Remove.
|
||
|
(ASM_OUTPUT_EH_SHORT, ASM_OUTPUT_EH_INT): Remove.
|
||
|
(ASM_OUTPUT_EH_DOUBLE_INT): Remove.
|
||
|
(ASM_PREFERRED_EH_DATA_FORMAT): New.
|
||
|
(ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): New.
|
||
|
(IA64_UNWIND_INFO): Re-enable.
|
||
|
(HANDLER_SECTION): Remove.
|
||
|
(EH_RETURN_DATA_REGNO): New.
|
||
|
* config/ia64/ia64.md (exception_receiver): Remove.
|
||
|
* config/ia64/t-glibc (LIB2ADDEH): Re-enable.
|
||
|
* config/ia64/t-ia64 (LIB2ADDEH): Re-enable.
|
||
|
|
||
|
2001-05-11 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/ia64/ia64.c (group_barrier_needed_p): Don't allow
|
||
|
calls and jumps to be bundled together.
|
||
|
(ia64_reorg): Emit a break after a noreturn call that ends
|
||
|
a function.
|
||
|
* config/ia64/ia64.md (break_f): New.
|
||
|
|
||
|
2001-05-12 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* c-lex.c (lex_charconst): Convert into a simple wrapper
|
||
|
around cpp_interpret_charconst, to which most of the code
|
||
|
body is moved.
|
||
|
* cppexp.c (MAX_CHAR_TYPE_SIZE, MAX_WCHAR_TYPE_SIZE,
|
||
|
MAX_LONG_TYPE_SIZE, MAX_INT_TYPE_SIZE, MAX_CHAR_TYPE_MASK,
|
||
|
MAX_WCHAR_TYPE_MASK, parse_escape, parse_charconst): Remove.
|
||
|
(lex): Use cpp_interpret_charconst.
|
||
|
* cpplex.c (parse_escape, read_ucs, cpp_interpret_charconst,
|
||
|
hex_digit_value): New functions.
|
||
|
(MAX_CHAR_TYPE_SIZE, MAX_WCHAR_TYPE_SIZE): New macros.
|
||
|
* cpplib.h (cpp_interpret_charconst): New prototype.
|
||
|
* Makefile.in: Update.
|
||
|
|
||
|
2001-05-12 Dean Wakerley <dean@wakerley.com>
|
||
|
|
||
|
* doc/install.texi: New file. Converted to texinfo from the HTML
|
||
|
documentation in wwwdocs/htdocs/install.
|
||
|
|
||
|
Fri May 11 15:50:13 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* gcse.c (insert_insn_end_bb): Do not search for assignments to
|
||
|
non-argumment registers that are mentioned in CALL_INSN_FUNCTION_USAGE.
|
||
|
|
||
|
* toplev.c (compile_file): Move comment for opening output
|
||
|
file to just before the code that opens the output file.
|
||
|
|
||
|
2001-05-11 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* regmove.c (regmove_optimize): Suppress the optimization for
|
||
|
unchanging destination register. Add comment above function.
|
||
|
|
||
|
2001-05-11 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* Makefile.in: Exterminate all references to assert.h.
|
||
|
* cross-make: Likewise.
|
||
|
* assert.h: Delete.
|
||
|
* configure.in: Correct commentary.
|
||
|
* configure: Regenerate.
|
||
|
|
||
|
* libgcc-std.ver, libgcc2.c, libgcc2.h, sys-protos.h:
|
||
|
Remove __eprintf.
|
||
|
|
||
|
* config/t-freebsd, config/t-linux, config/t-linux-aout,
|
||
|
config/t-netbsd, config/t-rtems, config/x-linux,
|
||
|
config/i386/t-beos, config/mcore/t-mcore, config/mcore/t-mcore-pe:
|
||
|
No need to override INSTALL_ASSERT_H.
|
||
|
|
||
|
* fixinc/fixinc.dgux, fixinc/fixinc.interix, fixinc/fixinc.ptx,
|
||
|
fixinc/fixinc.svr4, fixinc/fixinc.winnt, fixinc/fixinc.wrap,
|
||
|
fixinc/fixincl.sh: Don't install assert.h into objdir/include.
|
||
|
|
||
|
2001-05-11 Graham Stott <grahams@redhat.com>
|
||
|
|
||
|
* combine.c (simplify_comparison): Fix typo.
|
||
|
|
||
|
2001-05-11 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* loop.h (struct movables): Remove `num'.
|
||
|
* loop.c (scan_loop): Don't set it. Use count_insns_in_loop.
|
||
|
Adjust call to strength_reduce.
|
||
|
(num_unmoved_movables): New function.
|
||
|
(move_movables): Don't set movables->num.
|
||
|
(strength_reduce): Compute the number of instructions in the loop
|
||
|
here, rather than in the caller.
|
||
|
(check_dbra_loop): Always clear reversible_mem_store if there
|
||
|
are any memory sets.
|
||
|
(loop_regs_scan): Don't count instructions here.
|
||
|
(count_insn_in_loop): New function.
|
||
|
|
||
|
2001-05-11 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* optabs.c (emit_libcall_block): Don't mark calls as CONST_CALL_P.
|
||
|
|
||
|
2001-05-11 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* c-common.c (finish_label_expr): New function, lifted from
|
||
|
from cp/semantics.c.
|
||
|
* c-common.h (finish_label_expr, lookup_label): New prototypes.
|
||
|
* c-parse.in: Move 3 blocks of parser code into new functions.
|
||
|
* c-typeck.c (simple_asm_stmt, c_cast_expr): New functions.
|
||
|
* c-tree.h (simple_asm_stmt, c_cast_expr): New prototypes.
|
||
|
(lookup_label): Remove.
|
||
|
|
||
|
2001-05-11 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/mn10300/t-mn10300 (dp-bit.c, fp-bit.c): Don't define
|
||
|
FLOAT_BIT_ORDER_MISMATCH.
|
||
|
|
||
|
2001-05-10 David Edelsohn <edelsohn@gnu.org>
|
||
|
|
||
|
* expr.c (emit_push_insn): Convert PUSH_ROUNDING argument to
|
||
|
bytes. Reported by Kazu Hirata <kazu@hxi.com>.
|
||
|
|
||
|
2001-05-10 David Edelsohn <edelsohn@gnu.org>
|
||
|
|
||
|
* expr.c (emit_group_load): extract_bit_field requires a REG or
|
||
|
MEM as an argument.
|
||
|
|
||
|
Thu May 10 14:45:44 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* cse.c (cse_insn): Mostly remove first hunk of code which collapsed
|
||
|
a computed jump into an unconditional jump.
|
||
|
In second hunk of code for collapsing computed and conditional jumps
|
||
|
into unconditional jumps, reemit the jump in additional cases.
|
||
|
|
||
|
* jump.c (jump_optimize_1): Do not wrap the new jump target
|
||
|
inside a LABEL_REF; gen_jump will do that automatically.
|
||
|
|
||
|
2001-05-10 Toon Moene <toon@moene.indiv.nluug.nl>
|
||
|
|
||
|
* dwarf2out.c (mem_loc_descriptor): Do not pass constant pool
|
||
|
contents for a SYMBOL_REF in case of floating point constants.
|
||
|
|
||
|
2001-05-10 DJ Delorie <dj@redhat.com>
|
||
|
|
||
|
* c-common.c (combine_strings): Widen strings in a
|
||
|
host-endian-independent way.
|
||
|
|
||
|
2001-05-10 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* c-parse.in: Remove many shift/reduce conflicts. Update
|
||
|
%expect values.
|
||
|
(declspecs_nosc_nots_nosa_noea, declspecs_nosc_nots_nosa_ea,
|
||
|
declspecs_nosc_nots_sa_noea, declspecs_nosc_nots_sa_ea,
|
||
|
declspecs_nosc_ts_nosa_noea, declspecs_nosc_ts_nosa_ea,
|
||
|
declspecs_nosc_ts_sa_noea, declspecs_nosc_ts_sa_ea,
|
||
|
declspecs_sc_nots_nosa_noea, declspecs_sc_nots_nosa_ea,
|
||
|
declspecs_sc_nots_sa_noea, declspecs_sc_nots_sa_ea,
|
||
|
declspecs_sc_ts_nosa_noea, declspecs_sc_ts_nosa_ea,
|
||
|
declspecs_sc_ts_sa_noea, declspecs_sc_ts_sa_ea, declspecs_ts,
|
||
|
declspecs_nots, declspecs_ts_nosa, declspecs_nots_nosa,
|
||
|
declspecs_nosc_ts, declspecs_nosc_nots, declspecs_nosc, declspecs,
|
||
|
maybe_type_quals_setattrs, typespec_nonattr, typespec_attr,
|
||
|
typespec_reserved_nonattr, typespec_reserved_attr,
|
||
|
typespec_nonreserved_nonattr, maybe_setattrs, structsp_attr,
|
||
|
structsp_nonattr, components_notype, component_notype_declarator,
|
||
|
absdcl1_ea, absdcl1_noea, direct_absdcl1, absdcl_maybe_attribute,
|
||
|
firstparm, setspecs_fp): New
|
||
|
(typed_declspecs, reserved_declspecs, typed_typespecs,
|
||
|
reserved_typespecquals, declmods, typespec, typespecqual_reserved,
|
||
|
typed_declspecs_no_prefix_attr reserved_declspecs_no_prefix_attr
|
||
|
declmods_no_prefix_attr, nonempty_type_quals, structsp,
|
||
|
type_quals): Remove. Users updated.
|
||
|
(initdecls, notype_initdecls, after_type_declarator,
|
||
|
parm_declarator, notype_declarator, absdcl1, components, ivars):
|
||
|
Don't allow attributes at the start of a declarator; include them
|
||
|
in the production containing the declarator instead. Always
|
||
|
require type specifiers before trying to redeclare a typedef name.
|
||
|
(typename): Allow for attributes but warn that they are ignored.
|
||
|
(parmlist, firstparm, setspecs_fp): Include attributes in
|
||
|
parmlist; suck them off the parser stack in firstparm using
|
||
|
setspecs_fp.
|
||
|
|
||
|
Thu May 10 09:17:42 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* ifcvt.c (merge_if_block): Use any_uncondjump_p, not simplejump_p
|
||
|
to determine if a block has an unconditional jump at its end.
|
||
|
|
||
|
* jump.c (jump_optimize_1): When converting a conditional jump
|
||
|
to an unconditional jump, build the jump using gen_jump instead
|
||
|
of just modify operands in-place.
|
||
|
|
||
|
2001-05-09 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* cppinit.c (cpp_post_options): Shut off macro expansion if
|
||
|
-fpreprocessed.
|
||
|
* cpplib.c (_cpp_handle_directive): If -fpreprocessed, accept
|
||
|
IN_I directives only if the # is in column 1 and the directive
|
||
|
name begins in column 2.
|
||
|
* cppmain.c (scan_buffer): Insert a space between # and an
|
||
|
identifier, when that identifier is a directive name.
|
||
|
|
||
|
* tradcpp.c (struct file_buf): Add a pointer to the next entry
|
||
|
in the header search path.
|
||
|
(enum node_type): Add T_INCLUDE_NEXT.
|
||
|
(directive_table): Add entry for include_next.
|
||
|
(do_include_next): New function.
|
||
|
(process_include): New routine, broken out of do_include.
|
||
|
(finclude): Insert 'nhd' argument, to be copied into
|
||
|
next_header_dir of the new buffer.
|
||
|
(main): Adjust to match.
|
||
|
* gsyslimits.h, limity.h: Un-indent #include_next.
|
||
|
|
||
|
2001-05-09 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* objc.texi: Move from ../libobjc/objc-features.texi. Adjust for
|
||
|
inclusion as a chapter of the GCC manual.
|
||
|
* gcc.texi: Include objc.texi.
|
||
|
* fdl.texi: Use @unnumberedsec for the addendum.
|
||
|
* Makefile.in ($(srcdir)/gcc.info, gcc.dvi): Update dependencies.
|
||
|
|
||
|
Wed May 9 16:01:41 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (DImode move splitters): Use !MMX and !SSE for the condition.
|
||
|
|
||
|
Wed May 9 10:40:25 2001 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* regclass.c (scan_one_insn): Update REG_N_REFS when optimizing
|
||
|
handling of two-address insns.
|
||
|
|
||
|
Wed May 9 10:36:18 2001 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* Makefile.in (NM_FOR_TARGET): Look for ./nm, then
|
||
|
../binutils/nm-new instead of ../binutils/nm.
|
||
|
|
||
|
Wed May 9 12:15:46 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (movdi splitter): Fix the splitting condition
|
||
|
(float_extenddftf splitter): Fix mode.
|
||
|
|
||
|
Wed May 9 12:05:39 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* genrecog.c (write_switch): Avoid outputting of switch for
|
||
|
types wider than int.
|
||
|
|
||
|
2001-05-03 Andrew Haley <aph@cambridge.redhat.com>
|
||
|
|
||
|
* reload1.c (copy_eh_notes): New function.
|
||
|
(emit_input_reload_insns): Call it.
|
||
|
(emit_output_reload_insns): Call it.
|
||
|
|
||
|
2001-05-07 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* config.gcc (i[34567]86-*-sco3.2v4*, i[34567]86-*-sco*):
|
||
|
Delete stanzas.
|
||
|
* config/i386/sco.h, config/i386/sco4.h, config/i386/scodbx.h,
|
||
|
config/i386/sco4dbx.h, config/i386/x-sco4: Delete file.
|
||
|
|
||
|
* optabs.c: Delete #ifdef BROKEN_LDEXP block.
|
||
|
|
||
|
2001-05-07 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||
|
|
||
|
* pa.md (interspace_jump): Revise comment.
|
||
|
(builtin_longjmp): Block initial setup insns from delay slot of
|
||
|
interspace branch.
|
||
|
(builtin_setjmp_receiver): New expander to save and restore PIC
|
||
|
register.
|
||
|
|
||
|
* som.h (NM_FLAGS): Remove `-n' sort option. Revise comment.
|
||
|
|
||
|
Mon May 7 09:30:14 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* toplev.c (compile_file): Set up the output file before we call
|
||
|
the various initializers for the compiler.
|
||
|
|
||
|
* except.c (sjlj_mark_call_sites): Do not search for assignments to
|
||
|
non-argumment registers that are mentioned in CALL_INSN_FUNCTION_USAGE.
|
||
|
|
||
|
* pa.h (MAX_LONG_TYPE_SIZE): Should be 32, not 64.
|
||
|
* pa-64.h (*_TYPE_SIZE): Undefine before redefining.
|
||
|
|
||
|
2001-05-06 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* Makefile.in (tradcpp0): Correct typo in dependency list.
|
||
|
|
||
|
2001-05-06 Geoff Keating <geoffk@redhat.com>
|
||
|
|
||
|
* config/rs6000/rs6000.c (rs6000_emit_prologue): Don't save
|
||
|
the link register if we're not going to use it.
|
||
|
|
||
|
* config/rs6000/rs6000.c (output_profile_hook): Fix a warning.
|
||
|
(output_function_profiler): Likewise.
|
||
|
|
||
|
2001-05-07 Alan Modra <amodra@one.net.au>
|
||
|
|
||
|
* pa.c (compute_frame_size): 64-bit frame marker is 16 bytes.
|
||
|
|
||
|
2001-05-06 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* unroll.c (loop_iterations): Don't sign-extend abs_diff;
|
||
|
zero-extend it. Make abs_inc unsigned.
|
||
|
|
||
|
* optabs.c (expand_binop): Sign-extend xop0 and xop1 from the
|
||
|
widest mode in narrowing and widening operations.
|
||
|
|
||
|
* config/mips/mips.md: Sign extend CONST_INTs.
|
||
|
|
||
|
2001-05-06 Andreas Jaeger <aj@suse.de>
|
||
|
|
||
|
* invoke.texi (Option Summary): Add -momit-leaf-frame-pointer
|
||
|
(i386 Options): Document -momit-leaf-frame-pointer.
|
||
|
|
||
|
2001-05-06 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* c-typeck.c (internal_build_compound_expr): Check for
|
||
|
array to pointer conversion just once.
|
||
|
|
||
|
2001-05-05 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* integrate.c (copy_insn_list): Substitute NOTE_EXPECTED_VALUE.
|
||
|
|
||
|
2001-05-05 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* except.c (remove_fixup_regions): Adjust REG_EH_REGION notes
|
||
|
to the parent of the fixup region.
|
||
|
|
||
|
2001-05-05 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* gcc.c (cpp_options): Define __NO_INLINE__ unless we are honoring
|
||
|
"inline" keyword.
|
||
|
* cpp.texi (__NO_INLINE): Document it.
|
||
|
|
||
|
2001-05-05 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppfiles.c (struct include_file): New member err_no.
|
||
|
(find_or_create_entry): Set it.
|
||
|
(open_file): Don't set fds to -2. Instead, use err_no to
|
||
|
remember previous errors, if any.
|
||
|
|
||
|
2001-05-05 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/m68hc11.c (m68hc11_gen_movhi): Optimize moves
|
||
|
between X and Y by using sequences of xgdx and xgdy.
|
||
|
|
||
|
2001-05-05 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/m68hc11.md ("*logicalsi3_silshr16"): Use '?' instead
|
||
|
of '!' for the 'D' alternative ('!' is too strong).
|
||
|
("*logicalsi3_silshl16"): Likewise.
|
||
|
("movstricthi"): Accept 'A' when 'd' constraint, remove spurious '+'.
|
||
|
("movstrictsi"): Remove spurious '+'.
|
||
|
("movstrictqi"): Don't accept 'A' and remove spurious '+'.
|
||
|
("tstqi_1", "*lshrqi3_const1"): Put 'm' constraint before 'd'.
|
||
|
("subqi3"): Disparage with '!' the 'x' and 'y' registers to avoid
|
||
|
a reload to them.
|
||
|
|
||
|
2001-05-04 David Edelsohn <edelsohn@gnu.org>
|
||
|
|
||
|
* calls.c (store_one_arg): Don't divide align by BITS_PER_UNIT.
|
||
|
|
||
|
2001-05-04 Lars Brinkhoff <lars@nocrew.org>
|
||
|
|
||
|
* simplify-rtx.c (simplify_binary_operation): Simplify ~a + 1
|
||
|
into -a.
|
||
|
|
||
|
2001-05-04 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
|
||
|
|
||
|
* config/rs6000/rs6000.md (ashldi3 splits): Guard with
|
||
|
TARGET_POWERPC64.
|
||
|
|
||
|
2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/m68hc11.md (lshrhi3_const1): Fix shift of
|
||
|
soft register, use ror instead of rol.
|
||
|
|
||
|
2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/m68hc11.c (m68hc11_check_z_replacement): Take
|
||
|
into account pre/post increment decrement for 68HC12.
|
||
|
Fix other problems in replacement and fix call to reg_mentioned_p.
|
||
|
|
||
|
2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/larith.asm (L_regs_frame): New for _.frame.
|
||
|
Put the soft registers in bss for 68HC12.
|
||
|
(L_regs_d3_4): New for _.d3 and _.d4.
|
||
|
(L_regs_d5_6): Likewise.
|
||
|
(L_regs_d1_2): Likewise.
|
||
|
* config/m68hc11/t-m68hc11-gas (T_CPPFLAGS): Compile new parts.
|
||
|
|
||
|
2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/m68hc11.h (CPP_SPEC): Pass -D__HAVE_SHORT_DOUBLE__
|
||
|
to the pre-processor when -fshort-double is specified.
|
||
|
* config/m68hc11/m68hc11.2 (CPP_SPEC): Likewise.
|
||
|
|
||
|
2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/larith.asm (divmodhi4): Empty for 68HC12.
|
||
|
(__mulsi3): Rewrite for 68HC12.
|
||
|
* config/m68hc11/m68hc11.md (divmodhi4): Use idivs for 68HC12.
|
||
|
Mark 'x' constraint with earlyclobber to prevent a
|
||
|
RELOAD_FOR_OTHER_ADDRESS to go in it.
|
||
|
(mulhi3_m68hc12): New pattern.
|
||
|
(mulhi3_m68hc11): Rename of mulhi3.
|
||
|
(mulhi3): New expand for 68HC12 optimisation.
|
||
|
(umulhisi3, mulhisi3): New patterns for 68HC12.
|
||
|
|
||
|
2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/m68hc11.md (*tbne, *tbeq): New patterns for 68HC12.
|
||
|
(extendqisi2, extendqihi2, extendhisi2): Use sex for 68HC12.
|
||
|
(uminqi3, umaxqi3, uminhi3, umaxhi3): New pattern for 68HC12.
|
||
|
|
||
|
2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/m68hc11.h (CONST_COSTS): Make the cost of
|
||
|
constants cheap after reload.
|
||
|
* config/m68hc11/m68hc11.c (m68hc11_shift_cost): Shift by 16 and 32
|
||
|
are cheap.
|
||
|
(m68hc11_rtx_costs): Cost of multiplication by 65536 is expensive
|
||
|
so that gcc prefers a shift by 16.
|
||
|
(m6811_cost, m6812_cost): Make the shift cheap compared to an add.
|
||
|
|
||
|
2001-05-04 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
|
||
|
* config/arm/elf.h (ASM_OUTPUT_ALIGNED_COMMON): Define.
|
||
|
|
||
|
2001-05-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* alpha.h: NULL_PTR -> NULL.
|
||
|
* arm.c: Likewise.
|
||
|
* arm.h: Likewise.
|
||
|
* avr.h: Likewise.
|
||
|
* c4x.c: Likewise.
|
||
|
* c4x.h: Likewise.
|
||
|
* i386.c: Likewise.
|
||
|
* i386.md: Likewise.
|
||
|
* i860.c: Likewise.
|
||
|
* ia64.c: Likewise.
|
||
|
* m68hc11.h: Likewise.
|
||
|
* rs6000.h: Likewise.
|
||
|
* sh.c: Likewise.
|
||
|
* sh.h: Likewise.
|
||
|
* sparc.h: Likewise.
|
||
|
* v850.c: Likewise.
|
||
|
|
||
|
* expr.c: Likewise.
|
||
|
* final.c: Likewise.
|
||
|
* gcc.c: Likewise.
|
||
|
* recog.c: Likewise.
|
||
|
|
||
|
2001-05-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* i386.c (ix86_emit_restore_regs_using_mov, ix86_save_reg): Change
|
||
|
`bool' parameter to `int'.
|
||
|
|
||
|
* hash.c (hash_lookup): Likewise.
|
||
|
|
||
|
* hash.h (hash_lookup): Likewise.
|
||
|
|
||
|
* tlink.c (symbol_hash_lookup, demangled_hash_lookup): Likewise.
|
||
|
|
||
|
Fri May 4 13:10:03 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (x86_initialize_trampoline): Fix mode of constant.
|
||
|
|
||
|
2001-05-03 Geoff Keating <geoffk@redhat.com>
|
||
|
|
||
|
* invoke.texi (i386 Options): Delete references to -malign-jumps,
|
||
|
-malign-loops, -malign-functions.
|
||
|
* i386.c (ix86_align_funcs): Delete.
|
||
|
(ix86_align_loops): Delete.
|
||
|
(ix86_align_jumps): Delete.
|
||
|
(override_options): Mark -malign-* as obsolete. Emulate their
|
||
|
behaviour with the -falign-* options. Default -falign-* from
|
||
|
the processor table.
|
||
|
* i386.h (FUNCTION_BOUNDARY): Define to 16; revert Richard Kenner's
|
||
|
patch of Wed May 2 13:09:36 2001.
|
||
|
(LOOP_ALIGN): Delete.
|
||
|
(LOOP_ALIGN_MAX_SKIP): Delete.
|
||
|
(LABEL_ALIGN_AFTER_BARRIER): Delete.
|
||
|
(LABEL_ALIGN_AFTER_BARRIER_MAX_SKIP): Delete.
|
||
|
|
||
|
2001-05-04 Andreas Jaeger <aj@suse.de>
|
||
|
|
||
|
* except.h: Add prototype declaration for
|
||
|
expand_builtin_init_dwarf_reg_sizes.
|
||
|
|
||
|
2001-05-03 Geoffrey Keating <geoffk@redhat.com>
|
||
|
|
||
|
* Makefile.in (site.exp): Set TESTING_IN_BUILD_TREE.
|
||
|
|
||
|
2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/m68hc11.md ("bitcmpqi"): New pattern for bitb
|
||
|
instruction.
|
||
|
("bitcmpqi2"): New pattern for bit-extract and test.
|
||
|
("bitcmphi"): New pattern for bitb/bita instructions.
|
||
|
|
||
|
2001-05-03 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* gccbug.in: Use a temporary directory when the mktemp command is
|
||
|
not available.
|
||
|
|
||
|
2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/m68hc11.h (STATIC_CHAIN_REGNUM): Use soft z register
|
||
|
instead of _.d1.
|
||
|
(INITIALIZE_TRAMPOLINE): Call it.
|
||
|
(TRAMPOLINE_SIZE): Define according to 68HC11/68HC12.
|
||
|
(TRAMPOLINE_TEMPLATE): Remove.
|
||
|
* config/m68hc11/m68hc11.c (m68hc11_initialize_trampoline): New.
|
||
|
* config/m68hc11/m68hc11-protos.h (m68hc11_initialize_trampoline):
|
||
|
Declare.
|
||
|
|
||
|
2001-05-03 David O'Brien <obrien@FreeBSD.org>
|
||
|
|
||
|
* config/t-freebsd: Don't install "assert.h" in gcc. Compile crtbeginS.o
|
||
|
and crtendS.o with PIC.
|
||
|
|
||
|
2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/larith.asm (__mulqi3): Fix multiplication of two
|
||
|
negative numbers.
|
||
|
(___subdi3, ___adddi3): Use x instead of y as index register.
|
||
|
(__init_bss_section, __map_data_section): Optimize for 68HC12.
|
||
|
(__memset, __memcpy): Likewise.
|
||
|
(regs): Put the soft registers in bss for 68HC12.
|
||
|
(abort): Use trap to abort for 68hc12.
|
||
|
(__mulhi3, __mulhi32): Use emul for 68hc12.
|
||
|
(__mulsi3): Avoid to use the tmp soft register for 68hc12.
|
||
|
|
||
|
2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/m68hc11.h (LIMIT_RELOAD_CLASS): Don't define.
|
||
|
* config/m68hc11/m68hc11-protos.h (limit_reload_class): Remove.
|
||
|
* config/m68hc11/m68hc11.c (limit_reload_class): Remove.
|
||
|
(m68hc11_override_options): Remove setting of flag_no_nonansi_builtin.
|
||
|
Set 68HC12 min offset to -65536.
|
||
|
(print_operand): Put parenthesis arround the operand if it refers
|
||
|
to a symbol having the same name as a register.
|
||
|
(m68hc11_z_replacement): When z register is replaced by its
|
||
|
equivalent soft register, force the insn to be re-recognized.
|
||
|
(m68hc11_check_z_replacement): Fix the test when destination is
|
||
|
the index register and z dies in the insn.
|
||
|
(m68hc11_reorg): Remove the REG_DEAD notes beforce recomputing them.
|
||
|
|
||
|
2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/m68hc11.c (m68hc11_override_options): Initialize
|
||
|
costs according to processor variant.
|
||
|
(m68hc11_shift_cost): New function to compute shift costs.
|
||
|
(m68hc11_rtx_costs): Define costs according to processor variant.
|
||
|
(m6811_cost): Costs for 68HC11.
|
||
|
(m6812_cost): Costs for 68HC12.
|
||
|
(COSTS_N_INSNS): Remove.
|
||
|
|
||
|
* config/m68hc11/m68hc11.h (RTX_COSTS): New.
|
||
|
(DEFAULT_RTX_COSTS): Remove.
|
||
|
(CONST_COSTS): Define costs according to OUTER_CODE.
|
||
|
(processor_costs): New struct to define costs.
|
||
|
(m68hc11_cost): Pointer to current costs.
|
||
|
|
||
|
2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/m68hc11.md (*addhi3_68hc12): Fix generation
|
||
|
and use m68hc11_notice_keep_cc when using leax/leay.
|
||
|
(addhi3 split): Reject split if the insn is handled by
|
||
|
leax/leay above.
|
||
|
* config/m68hc11/m68hc11.c (m68hc11_split_move): For 68HC12 the
|
||
|
push must be handled in a special way if the source operand uses
|
||
|
sp as index register.
|
||
|
(m68hc11_notice_keep_cc): New function.
|
||
|
(m68hc11_gen_movhi): Use it when an insn changes a register but
|
||
|
not the flags.
|
||
|
(m68hc11_gen_movqi): Fix move for 68HC12.
|
||
|
* config/m68hc11/m68hc11-protos.h (m68hc11_notice_keep_cc): Declare.
|
||
|
|
||
|
2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/m68hc11.c (m68hc11_emit_libcall): Use LCT_CONST
|
||
|
and don't pass operands[0] to emit_library_call_value.
|
||
|
|
||
|
2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/m68hc11.md (tsthi_1): Use cpd for 68HC12.
|
||
|
(zero_extendsi split): Simplify and use (zero_extendhi).
|
||
|
(*addhi3): Remove 'w' constraint since stack pointer is handled
|
||
|
by (addhi3_sp).
|
||
|
(*ashlhi3_2): Operand 2 is clobbered use '+' for its constraint.
|
||
|
(*ashlhi3, *ashrhi3, *lshrhi3): Likewise.
|
||
|
(*ashrhi3_const): Fix shift by 7.
|
||
|
(*lshrsi3_const16): Fix template.
|
||
|
(call, call_value): Fix constraint and predicate.
|
||
|
|
||
|
2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/m68hc11.md (X_REGNUM, D_REGNUM): New constant.
|
||
|
(Y_REGNUM, SP_REGNUM, PC_REGNUM, A_REGNUM, B_REGNUM): Likewise.
|
||
|
(CC_REGNUM): Likewise.
|
||
|
(*unnamed splits): Use above constants instead of hard coded numbers.
|
||
|
(*adcq, *subcq, *addsi_carry, *rotlqi3_with_carry): Likewise.
|
||
|
(*rotlhi3_with_carry, *rotrhi3_with_carry): Likewise.
|
||
|
(*return_16bit, *unnamed peepholes): Likewise.
|
||
|
|
||
|
2001-05-03 David O'Brien <obrien@FreeBSD.org>
|
||
|
|
||
|
* config.gcc(rs6000-ibm-aix|powerpc-ibm-aix): Do not include
|
||
|
rs6000/rs6000.h twice.
|
||
|
|
||
|
2001-05-03 Mark Elbrecht <snowball3@bigfoot.com>
|
||
|
|
||
|
* config/i386/djgpp.h (CPP_PREDEFINES): Define __GO32__.
|
||
|
(CPP_SPEC): Conditionally define MSDOS and GO32.
|
||
|
(SUBTARGET_SWITCHES): Ignore -mbnu210 and -mno-bnu210.
|
||
|
(SUBTARGET_OVERRIDE_OPTIONS): Warn that -mbnu210 and -mno-bnu210 are
|
||
|
ignored.
|
||
|
(SUPPORTS_WEAK, SUPPORTS_ONE_ONLY): Remove.
|
||
|
|
||
|
2001-05-03 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/mn10300/mn10300.md: Sign-extend GEN_INT operands.
|
||
|
|
||
|
2001-05-03 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* integrate.h (struct inline_remap): Add leaf_reg_map table.
|
||
|
* integrate.c (expand_inline_function): Use xcalloc to allocate
|
||
|
memory.
|
||
|
(copy_rtx_and_substitute): Use the leaf_reg_map for leaf
|
||
|
registers.
|
||
|
|
||
|
2001-05-03 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* c-dump.c (dequeue_and_dump): Don't look at DECL_ASSEMBLER_NAME
|
||
|
if it is not set.
|
||
|
|
||
|
2001-05-03 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/mn10300/mn10300.h (LINK_SPEC): Pass --relax to the
|
||
|
linker if -mrelax is given.
|
||
|
(TARGET_SWITCHES): Document -mrelax.
|
||
|
|
||
|
Re-installed 2001-01-09's patch:
|
||
|
* hwint.h (HOST_BITS_PER_WIDE_INT, HOST_WIDE_INT): Use long long
|
||
|
if it's wider than long and the target's long is wider than the
|
||
|
host's.
|
||
|
|
||
|
2001-05-02 David O'Brien <obrien@FreeBSD.org>
|
||
|
|
||
|
* config.gcc, config/rs6000/aix51.h, config/rs6000/mach.h: Do not
|
||
|
directly include rs6000/rs6000.h. Instead do it in tm.h.
|
||
|
|
||
|
2001-05-02 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
* objc/objc-act.c (STRING_OBJECT_CLASS_NAME): Default to
|
||
|
NSConstantString for NeXT-style runtimes.
|
||
|
(STRING_OBJECT_GLOBAL_NAME): New macro.
|
||
|
(enum objc_tree_index): Add values OCTI_CNST_STR_GLOB_ID and
|
||
|
OCTI_STRING_CLASS_DECL.
|
||
|
(constant_string_global_id): New macro.
|
||
|
(string_class_decl): Ditto.
|
||
|
(setup_string_decl): New function.
|
||
|
(build_objc_string_object): Use it to build a NeXT runtime
|
||
|
compatible string initializer.
|
||
|
|
||
|
2001-05-02 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* tradcpp.c (do_define): Make sure we don't walk past limit.
|
||
|
|
||
|
2000-05-01 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
|
||
|
|
||
|
* config/rs6000/rs6000.c (rs6000_legitimate_address): Allow any stack
|
||
|
offsets if not REG_OK_STRICT.
|
||
|
|
||
|
* config/rs6000/rs6000.h (REG_OK_STRICT_FLAG): New macro.
|
||
|
(INT_REG_OK_FOR_INDEX_P): Likewise.
|
||
|
(INT_REG_OK_FOR_BASE_P): Likewise.
|
||
|
(REG_OK_FOR_INDEX_P): Use INT_REG_OK_FOR_INDEX_P.
|
||
|
(REG_OK_FOR_BASE_P): Use INT_REG_OK_FOR_BASE_P.
|
||
|
(LEGITIMATE_OFFSET_ADDRESS_P): Use INT_REG_OK_FOR_INDEX_P and
|
||
|
INT_REG_OK_FOR_BASE_P instead of REG_OK_FOR_INDEX_P and
|
||
|
REG_OK_FOR_BASE_P. Take an additional parameter.
|
||
|
(LEGITIMATE_INDEXED_ADDRESS_P): Likeewise.
|
||
|
(LEGITIMATE_INDIRECT_ADDRESS_P): Likewise.
|
||
|
(LEGITIMATE_LO_SUM_ADDRESS_P): Likewise.
|
||
|
(GO_IF_LEGITIMATE_ADDRESS): Move code into new function
|
||
|
rs6000_legitimate_address() and use it.
|
||
|
* config/rs6000/rs6000.c: Update all callers.
|
||
|
(rs6000_legitimate_address): New function.
|
||
|
|
||
|
2001-05-02 David Edelsohn <edelsohn@gnu.org>
|
||
|
|
||
|
* config/rs6000/rs6000.c (rs6000_emit_move): Merge
|
||
|
special_constant conditional blocks together.
|
||
|
|
||
|
2001-05-02 Dale Johannesen <dalej@apple.com>
|
||
|
|
||
|
* config/rs6000/rs6000.h (RS6000_ARG_SIZE): Remove unused NAMED
|
||
|
parameter.
|
||
|
(STRICT_ARGUMENT_NAMING): Define.
|
||
|
* config/rs6000/rs6000.c (function_arg_advance, function_arg,
|
||
|
function_arg_partial_nregs, setup_incoming_varargs): Remove
|
||
|
args logic which depends on "named" now that STRICT_ARGUMENT_NAMING
|
||
|
is defined.
|
||
|
|
||
|
Wed May 2 13:09:36 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* config/i386/i386.h (FUNCTION_BOUNDARY): Result is unsigned.
|
||
|
|
||
|
* function.c (fixup_var_regs_1, case SUBREG): Use promoted mode
|
||
|
for replacement.
|
||
|
|
||
|
* expr.c (store_field): Do nothing except elaborate side-effects if
|
||
|
zero-bit field.
|
||
|
|
||
|
2001-05-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* c-lex.c: NULL_PTR -> NULL.
|
||
|
* cse.c: Likewise.
|
||
|
* emit-rtl.c: Likewise.
|
||
|
* gcse.c: Likewise.
|
||
|
* genpeep.c: Likewise.
|
||
|
* jump.c: Likewise.
|
||
|
* mips-tdump.c: Likewise.
|
||
|
* reload1.c: Likewise.
|
||
|
* rtlanal.c: Likewise.
|
||
|
* stmt.c: Likewise.
|
||
|
* stor-layout.c: Likewise.
|
||
|
* toplev.c: Likewise.
|
||
|
|
||
|
2001-05-01 Per Bothner <per@bothner.com>
|
||
|
|
||
|
* expr.c (expand_expr): When compiling LABELED_BLOCK_EXPR,
|
||
|
call do_pending_stack_adjust before emiting label.
|
||
|
|
||
|
2001-05-01 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* extend.texi: Fix typo.
|
||
|
|
||
|
2001-05-01 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
* objc/objc-act.c (build_module_descriptor): Clear DECL_CONTEXT
|
||
|
of UOBJC_MODULES_decl.
|
||
|
(generate_strings): Clear DECL_CONTEXT of new decl nodes.
|
||
|
(generate_descriptor_table): Ditto.
|
||
|
(generate_protocols): Ditto.
|
||
|
(generate_protocol_list): Ditto.
|
||
|
(generate_classref_translation_entry): Ditto.
|
||
|
|
||
|
2001-05-01 Jeffrey Oldham <oldham@codesourcery.com>
|
||
|
|
||
|
* invoke.texi (Optimize Options): Add documentation for `--param
|
||
|
max-delay-slot-insn-search' and `--param
|
||
|
max-delay-slot-live-search' and reorder --param section.
|
||
|
* params.def: Modify initial comment.
|
||
|
* params.h (param_info): Add `help' member.
|
||
|
* toplev.c (lang_independent_params): Include `help' description.
|
||
|
(display_help): Print --param parameters.
|
||
|
|
||
|
2001-05-01 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* config.gcc: Don't default xmake_file to ${cpu_type}/x-${cpu_type}.
|
||
|
Remove references to deleted files.
|
||
|
(*-*-openbsd): No need to override xmake_file.
|
||
|
(*-*-sysv4): Treat like *-*-sysv.
|
||
|
|
||
|
* configure.in: Probe for ldopen in various places, and set up
|
||
|
collect2 to be linked with them if found.
|
||
|
Don't dink with Windows registry stuff unless $host_os is a
|
||
|
Win32 os name. Check to see if we need -ladvapi32.
|
||
|
* configure: Regenerate.
|
||
|
|
||
|
* Makefile: Get rid of CLIB and HOST_CLIB.
|
||
|
Substitute in COLLECT2_LIBS and link collect2 against its contents.
|
||
|
* build-make: Get rid of HOST_CLIB.
|
||
|
|
||
|
* config/a29k/x-unix, config/alpha/x-osf, config/i386/x-aix,
|
||
|
config/i386/x-osfrose, config/m68k/x-dpx2, config/mips/x-iris3,
|
||
|
config/mips/x-mips, config/mips/x-osfrose, config/mips/x-sony,
|
||
|
config/mips/x-sysv, config/rs6000/x-aix31, config/rs6000/x-aix41,
|
||
|
config/rs6000/x-rs6000: Delete.
|
||
|
|
||
|
* config/i386/x-cygwin, config/m68k/t-aux, config/mips/x-iris:
|
||
|
Don't set CLIB.
|
||
|
|
||
|
24 x-host fragments remain, 0 x-cpu, 3 top level.
|
||
|
|
||
|
2001-05-01 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* aclocal.m4 (gcc_AC_C_CHAR_BIT): Correct test program.
|
||
|
* configure: Regenerate.
|
||
|
|
||
|
2001-05-01 Angela Marie Thomas <angela@cygnus.com>
|
||
|
|
||
|
* Makefile.in (install-headers): Remove redundant dependency.
|
||
|
|
||
|
2001-05-01 Nathan Sidwell <nathan@codesourcery.com>
|
||
|
|
||
|
* c-tree.texi (USING_STMT): Document.
|
||
|
|
||
|
2001-05-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* bitmap.c: Change NULL_PTR to NULL or "(rtx*)0".
|
||
|
* c-common.c: Likewise.
|
||
|
* c-decl.c: Likewise.
|
||
|
* combine.c: Likewise.
|
||
|
* rs6000.c: Likewise.
|
||
|
* except.c: Likewise.
|
||
|
* explow.c: Likewise.
|
||
|
* expr.c: Likewise.
|
||
|
* fold-const.c: Likewise.
|
||
|
* function.c: Likewise.
|
||
|
* gcc.c: Likewise.
|
||
|
* gcse.c: Likewise.
|
||
|
* integrate.c: Likewise.
|
||
|
* loop.c: Likewise.
|
||
|
* objc/objc-act.c: Likewise.
|
||
|
* recog.c: Likewise.
|
||
|
* reg-stack.c: Likewise.
|
||
|
* reload.c: Likewise.
|
||
|
* reload1.c: Likewise.
|
||
|
* simplify-rtx.c: Likewise.
|
||
|
* stmt.c: Likewise.
|
||
|
* varasm.c: Likewise.
|
||
|
|
||
|
2001-05-01 Gabriel Dos Reis <gdr@codesourcery.com>
|
||
|
|
||
|
* diagnostic.def: New file.
|
||
|
* diagnostic.h (diagnostic_t): New enum.
|
||
|
* Makefile.in (diagnostic.o): Depend on diagnostic.def
|
||
|
|
||
|
2001-04-30 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* tsystem.h: Test only POSIX for availability of string.h
|
||
|
and time.h.
|
||
|
* config.gcc (all systems): If USG appeared in xm_defines,
|
||
|
change it to POSIX. If both USG and POSIX appeared, just
|
||
|
delete USG. Remove unnecessary quotes around xm_defines
|
||
|
settings.
|
||
|
(m68k-crds-unos*): Don't #define unos - tested nowhere.
|
||
|
(m68k-apple-aux*): Don't #define AUX - tested nowhere.
|
||
|
(alpha*-*-linux*ecoff*, powerpc-*-linux*libc1,
|
||
|
powerpc-*-linux*): No need to set xm_defines - handled by
|
||
|
global settings for *-*-linux*.
|
||
|
|
||
|
2001-04-30 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* dbxout.c, mips-tfile.c, config/mips/mips.c, xcoffout.c:
|
||
|
Always include gstab.h, not system stab.h. Don't provide
|
||
|
default definitions of N_CATCH or N_OPT. Always use the
|
||
|
gstab.h variant of STAB_CODE_TYPE.
|
||
|
* final.c: Don't include stab.h/gstab.h at all, or provide
|
||
|
defaults for N_SLINE and N_SOL.
|
||
|
|
||
|
* xcoffout.c: Can assume N_MAIN, N_DSLINE, N_BSLINE, N_BINCL,
|
||
|
N_EINCL, N_EXCL, N_M2C, N_SCOPE, N_CATCH, and N_OPT are
|
||
|
available.
|
||
|
* sdbout.c: Always include gsyms.h instead of system syms.h.
|
||
|
|
||
|
* configure.in: No need to check for stab.h.
|
||
|
* configure, config.in: Regenerate.
|
||
|
* Makefile.in (final.o): Don't depend on gstab.h.
|
||
|
|
||
|
2001-04-30 Mark Mitchell <mark@codesourcery.com>
|
||
|
Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* extend.texi: Improve documentation of volatile asms.
|
||
|
|
||
|
2001-04-30 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* c-tree.texi: Fix thinko.
|
||
|
* gcc.texi: Likewise.
|
||
|
|
||
|
2001-04-30 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* c-common.c (c_promoting_integer_type_p): New function, from the
|
||
|
corpse of old macro. Properly promote too-small enumerations and
|
||
|
booleans. Adjust all callers.
|
||
|
* c-common.h (C_PROMOTING_INTEGER_TYPE_P): Remove.
|
||
|
(c_promoting_integer_type_p): Declare.
|
||
|
* c-decl.c: Adjust C_PROMOTING_INTEGER_TYPE_P invocations.
|
||
|
* c-typeck.c: Likewise.
|
||
|
(default_conversion): Remove now redundant boolean check.
|
||
|
|
||
|
2001-04-30 Jan Hubicka <jh@suse.cz>
|
||
|
Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* regmove.c (try_apply_stack_adjustment): Remove now redundant
|
||
|
sanity checks.
|
||
|
(combine_stack_adjustments_for_block): Don't combine stack
|
||
|
allocation followed by deallocations. Handle grow-up stacks.
|
||
|
|
||
|
2001-04-30 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* fdl.texi: New file.
|
||
|
* c-tree.texi: Use the GFDL.
|
||
|
* gcc.texi: Likewise.
|
||
|
|
||
|
2001-04-30 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
* invoke.texi: Add a section documenting Objective-C options.
|
||
|
|
||
|
2001-04-27 Andrew Haley <aph@cambridge.redhat.com>
|
||
|
|
||
|
* emit-rtl.c (try_split): Copy EH notes to sequence.
|
||
|
|
||
|
2001-04-30 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* regmove.c (record_stack_memrefs): Catch all references to the
|
||
|
stack pointer.
|
||
|
|
||
|
2001-04-29 Toomas Rosin <toomas at ns dot tklabor dot ee>
|
||
|
|
||
|
* Makefile.in (stmp-fixinc): quote shell assignment values
|
||
|
|
||
|
2001-04-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* c-aux-info.c: NULL_PTR->NULL in calls to `concat'.
|
||
|
|
||
|
* gcc.c: Likewise.
|
||
|
|
||
|
* prefix.c: Likewise.
|
||
|
|
||
|
2001-04-28 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
* objc/objc-act.c (handle_class_ref): Rewrite to flush target
|
||
|
specific code and use new macro ASM_DECLARE_UNRESOLVED_REFERENCE.
|
||
|
* config/darwin.h (ASM_DECLARE_UNRESOLVED_REFERENCE): Define.
|
||
|
* tm.texi (ASM_DECLARE_UNRESOLVED_REFERENCE): Document.
|
||
|
|
||
|
* config/darwin.h (STANDARD_EXEC_PREFIX): Don't define.
|
||
|
(NEXT_OBJC_RUNTIME): Define.
|
||
|
|
||
|
Sat Apr 28 21:02:58 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* rtl.h (simplify_gen_relational): Add cmp_mode parameter.
|
||
|
* simplify-rtx.c (simplify_gen_relational): Likewise.
|
||
|
|
||
|
* simplify-rtx.c (simplify_replace_rtx): Handle relationals and MEMs.
|
||
|
|
||
|
* i386.h (VALID_SSE_REG_MODE): Accept MMX modes if SSE2
|
||
|
* i386.md (movsi_1, movdi2, movdi_1_rex64): Handle SSE2 moves.
|
||
|
|
||
|
* i386.md (negsf2, negdf2, abssf2, absdf2): Force operands to
|
||
|
registers in SSE case; fix handling of the immediates.
|
||
|
(negsf2_ifs, abssf2_ifs): Tweak constraints; require
|
||
|
operands to be in regsiters before reload.
|
||
|
(negdf2_ifs, absdf2_ifs): Likewise; disable for 64bit
|
||
|
(negdf2_ifs_rex64, absdf2_ifs_rtx64): New.
|
||
|
(abstf,absxf,negtf,negxf splitters): Compute
|
||
|
properly the regnum for x86_64.
|
||
|
(avsdf2_if_rex64): New.
|
||
|
|
||
|
Sat Apr 28 10:36:23 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* flow.c (propagate_block_delete_insn): Handle deletion of ADDR_VEC
|
||
|
and ADDR_DIFF_VEC insns when the proceeding CODE_LABEL was put
|
||
|
into the constant pool.
|
||
|
* jump.c (jump_optimize_1): Remove barrier successors after all
|
||
|
the LABEL_NUSES counds have been computed.
|
||
|
(delete_barrier_successors): When deleting a tablejump insn, also
|
||
|
delete the jump table it uses.
|
||
|
* varasm.c (force_const_mem): Set LABEL_PRESERVE_P when forcing a
|
||
|
label into memory.
|
||
|
|
||
|
2001-04-28 Martin Kalen <martin.kalen@todaysystems.com.au>
|
||
|
|
||
|
* pa.c (FRP): Remove erroneous white space in macro definition.
|
||
|
|
||
|
2001-04-28 Andreas Jaeger <aj@suse.de>
|
||
|
|
||
|
* invoke.texi: Use XX-bit instead of XXbit or XX bit where
|
||
|
appropriate.
|
||
|
* extend.texi: Likewise.
|
||
|
* tm.texi: Likewise.
|
||
|
|
||
|
2001-04-28 Andreas Jaeger <aj@suse.de>
|
||
|
|
||
|
* md.texi: Use XX-bit instead of XXbit or XX bit where
|
||
|
appropriate.
|
||
|
|
||
|
2001-04-28 Jens Schweikhardt <schweikh@schweikhardt.net>
|
||
|
|
||
|
* gcc.c (process_command): Allow -l lib in addition to -llib
|
||
|
for POSIX compliance. This fixes PR c/2347.
|
||
|
|
||
|
* invoke.texi: Update section on Link Options accordingly.
|
||
|
|
||
|
2001-04-27 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* function.c (purge_addressof_1): Remove the duplicate
|
||
|
if (code == SET) block. Fold the two if (code == ADDRESSOF)
|
||
|
blocks together.
|
||
|
|
||
|
2001-04-28 Jason Merrill <jason_merrill@redhat.com>
|
||
|
|
||
|
* except.c (expand_eh_region_start): Don't start a new block.
|
||
|
(expand_eh_region_end): Don't end a block.
|
||
|
* stmt.c (expand_end_bindings): Don't end EH blocks.
|
||
|
(expand_decl_cleanup): Starting an EH region won't change the block.
|
||
|
(mark_block_as_eh_region, mark_block_as_not_eh_region): Lose.
|
||
|
(is_eh_region): Lose.
|
||
|
* tree.h: Adjust.
|
||
|
|
||
|
2001-04-27 Jeffrey Oldham <oldham@codesourcery.com>
|
||
|
|
||
|
* except.c (expand_eh_region_end_cleanup): word_mode, not Pmode.
|
||
|
|
||
|
* collect2.c (main): Add `-L' case to remove duplicate entries.
|
||
|
(is_in_args): New function to check for a duplicate argument.
|
||
|
* defaults.h (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES): New macro.
|
||
|
* tm.texi (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES): New documentation.
|
||
|
* config/mips/iris6.h (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES):
|
||
|
Define to be nonzero.
|
||
|
|
||
|
2001-04-27 Andreas Jaeger <aj@suse.de>
|
||
|
Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* md.texi (Machine Constraints): Document additional i386
|
||
|
constraints and fix description of "A".
|
||
|
|
||
|
Fri Apr 27 10:43:49 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* tm.texi (TARGET_MEM_FUNCTIONS): Update text.
|
||
|
|
||
|
2001-04-27 Jason Merrill <jason_merrill@redhat.com>
|
||
|
|
||
|
* except.c (get_exception_filter): word_mode, not Pmode.
|
||
|
|
||
|
2001-04-26 Geoffrey Keating <geoffk@redhat.com>
|
||
|
|
||
|
* config/sparc/sparc.md (movsf_no_f_insn): Add more alternatives
|
||
|
common to other movsf patterns. Move up so that in future
|
||
|
people who change the other patterns will change it too.
|
||
|
(movsf_lo_sum): Allow even for soft-float; add appropriate
|
||
|
constraints.
|
||
|
(movsf_high): Likewise.
|
||
|
(movsf_high+1): Allow even for soft-float.
|
||
|
|
||
|
* function.c (expand_function_end): Always clobber the
|
||
|
return registers, even if there is no return label.
|
||
|
|
||
|
Thu Apr 26 20:28:21 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* (ix86_expand_fp_movcc): Re-enable SSE conditional move generation.
|
||
|
|
||
|
Thu Apr 26 19:20:28 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (abs/neg splitter): Fix calculation of sign bit for TFmodes
|
||
|
(pushqi2_rex64, pushhi2_rex64): Add.
|
||
|
|
||
|
2001-04-26 Andrew Haley <aph@cambridge.redhat.com>
|
||
|
|
||
|
* except.c (expand_eh_region_end_cleanup): Force pending stack
|
||
|
adjust before emitting label that branches around cleanup code.
|
||
|
|
||
|
2001-04-26 H.J. Lu (hjl@gnu.org)
|
||
|
|
||
|
* config.gcc (mips*-*-linux*): Add elfos.h to tm_file.
|
||
|
|
||
|
* config/mips/ecoff.h (STARTFILE_SPEC): Undefine before
|
||
|
define.
|
||
|
* config/mips/elf64.h (MAX_OFILE_ALIGNMENT): Likewise.
|
||
|
(ASM_OUTPUT_SECTION_NAME): Likewise.
|
||
|
(ASM_WEAKEN_LABEL): Likewise.
|
||
|
(UNIQUE_SECTION): Likewise.
|
||
|
(ASM_OUTPUT_CONSTRUCTOR): Likewise.
|
||
|
(ASM_OUTPUT_DESTRUCTOR): Likewise.
|
||
|
* config/mips/elf.h (MAX_OFILE_ALIGNMENT): Likewise.
|
||
|
(ASM_OUTPUT_SECTION_NAME): Likewise.
|
||
|
(ASM_WEAKEN_LABEL): Likewise.
|
||
|
(UNIQUE_SECTION): Likewise.
|
||
|
(ASM_OUTPUT_CONSTRUCTOR): Likewise.
|
||
|
(ASM_OUTPUT_DESTRUCTOR): Likewise.
|
||
|
* config/mips/linux.h (HANDLE_SYSV_PRAGMA): Likewise.
|
||
|
* config/mips/mips.h (DBX_CONTIN_LENGTH): Likewise.
|
||
|
(ASM_FILE_START): Likewise.
|
||
|
(ASM_OUTPUT_SOURCE_LINE): Likewise.
|
||
|
(ASM_DECLARE_OBJECT_NAME): Likewise.
|
||
|
(ASM_FILE_END): Likewise.
|
||
|
(ASM_DECLARE_FUNCTION_NAME): Likewise.
|
||
|
(ASM_OUTPUT_INTERNAL_LABEL): Likewise.
|
||
|
(ASM_GENERATE_INTERNAL_LABEL): Likewise.
|
||
|
(ASM_OUTPUT_CASE_LABEL): Likewise.
|
||
|
(ASM_OUTPUT_SKIP): Likewise.
|
||
|
(ASM_OUTPUT_ASCII): Likewise.
|
||
|
(ASM_OUTPUT_IDENT): Likewise.
|
||
|
(READONLY_DATA_SECTION): Likewise.
|
||
|
(EXTRA_SECTIONS): Likewise.
|
||
|
(EXTRA_SECTION_FUNCTIONS): Likewise.
|
||
|
(SELECT_RTX_SECTION): Likewise.
|
||
|
(SELECT_SECTION): Likewise.
|
||
|
|
||
|
* config/mips/linux.h (INVOKE__main): Undefine.
|
||
|
(CTOR_LIST_BEGIN): Likewise.
|
||
|
(CTOR_LIST_END): Likewise.
|
||
|
(DTOR_LIST_BEGIN): Likewise.
|
||
|
(DTOR_LIST_END): Likewise.
|
||
|
(SET_ASM_OP): Defined it to ".dummy".
|
||
|
(ASM_OUTPUT_DEF): Defined.
|
||
|
(ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Defined.
|
||
|
|
||
|
2001-04-26 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
|
||
|
* config/arm/arm.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Define, if the
|
||
|
assembler supports .p2align.
|
||
|
|
||
|
2001-04-26 Nathan Sidwell <nathan@codesourcery.com>
|
||
|
|
||
|
* c-lex.c (c_lex): Remove # from %o diagnostic formatting.
|
||
|
|
||
|
2001-04-26 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* integrate.c (expand_inline_function): Check for error_mark_node
|
||
|
in actual argument.
|
||
|
|
||
|
2001-04-26 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* config/i386/i386.h (CC1_CPU_SPEC): Fix deprecation warnings for
|
||
|
-m386 and -m486.
|
||
|
|
||
|
2001-04-26 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* configure.in (configargs.h): Define thread_model.
|
||
|
* configure: Rebuilt.
|
||
|
* gcc.c (main): Print it with -v.
|
||
|
|
||
|
2001-04-25 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* invoke.texi: Document -Wmissing-braces, -dumpspecs,
|
||
|
-dumpmachine, -dumpversion, -fmem-report and -ftime-report.
|
||
|
* gcc.1: Regenerate.
|
||
|
|
||
|
2001-04-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||
|
|
||
|
* dwarfout.c (is_pseudo_reg, type_main_variant, is_tagged_type,
|
||
|
is_redundant_typedef): Use static inline instead of inline static.
|
||
|
|
||
|
Wed Apr 25 18:21:01 2001 Christopher Faylor <cgf@cygnus.com>
|
||
|
|
||
|
* config/i386/cygwin.h: Move W32API search to LINK_SPEC to ensure that
|
||
|
this directory is always searched.
|
||
|
|
||
|
2001-04-25 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/i386/i386.c (ix86_expand_epilogue): Properly compute size
|
||
|
of registers to restore along non eh_return path.
|
||
|
|
||
|
2001-04-25 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* c-format.c (check_format_info_recurse): Handle
|
||
|
PLUS_EXPR for format string.
|
||
|
|
||
|
2001-04-25 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* config/ia64/ia64.h (CC1_SPEC): Define.
|
||
|
* config/ia64/linux.h (CC1_SPEC): Define.
|
||
|
|
||
|
Wed Apr 25 17:09:50 2001 J"orn Rennecke <amylaar@redhat.com>
|
||
|
|
||
|
* emit-rtl.c (constant_subword): Also do sign extension in
|
||
|
BITS_PER_WORD == 16 case.
|
||
|
|
||
|
2001-04-25 Jason Merrill <jason_merrill@redhat.com>
|
||
|
|
||
|
* loop.c (try_swap_copy_prop): Go back to checking insn.
|
||
|
|
||
|
2001-04-25 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* emit-rtl.c (subreg_hard_regno): Only do HARD_REGNO_MODE_OK check
|
||
|
if check_mode is non-zero.
|
||
|
|
||
|
2001-04-25 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* config/i386/i386.c (ix86_expand_int_movcc): If overlap between
|
||
|
out and comparison sequence has been detected, put result into
|
||
|
proper temporary pseudo.
|
||
|
|
||
|
2001-04-24 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* Makefile.in (LIB2FUNCS): Remove _varargs and __dummy.
|
||
|
* libgcc-std.ver: Remove __builtin_saveregs, __dummy, and __empty.
|
||
|
* libgcc2.c: Remove __dummy and __builtin_saveregs.
|
||
|
* libgcc2.h: Don't prototype __builtin_saveregs or __dummy.
|
||
|
* config/i860/varargs.asm: New file - preserve i860 __builtin_saveregs
|
||
|
for future reference.
|
||
|
|
||
|
2001-04-24 Jason Merrill <jason_merrill@redhat.com>
|
||
|
|
||
|
* except.c (reachable_handlers): Step out one level from a RESX.
|
||
|
|
||
|
* except.c (struct eh_region): Rename 'last' to 'resume'.
|
||
|
(mark_eh_region, duplicate_eh_region_1): Adjust.
|
||
|
(expand_eh_region_end_cleanup): Remember the jump, not the barrier.
|
||
|
(build_post_landing_pads): Likewise.
|
||
|
(expand_end_catch, expand_eh_region_end_allowed): Don't set it.
|
||
|
(expand_eh_region_end_must_not_throw): Likewise.
|
||
|
(connect_post_landing_pads): Thread (only) regions with non-deleted
|
||
|
resume insns.
|
||
|
|
||
|
* except.c (expand_eh_region_end_cleanup): Save the EH return data
|
||
|
registers around the cleanup.
|
||
|
(get_exception_filter): New fn.
|
||
|
(finish_eh_generation): Use it.
|
||
|
|
||
|
2001-04-24 Nathan Sidwell <nathan@codesourcery.com>
|
||
|
|
||
|
* c-semantics.c (add_scope_stmt): Don't call
|
||
|
current_scope_stmt_stack multiple times.
|
||
|
|
||
|
2001-04-24 Zack Weinberg <zackw@stanford.edu>
|
||
|
Nathan Sidwell <nathan@codesourcery.com>
|
||
|
|
||
|
Lazy __FUNCTION__ generation.
|
||
|
* c-common.h (RID_FUNCTION_NAME, RID_PRETTY_FUNCTION_NAME,
|
||
|
RID_C99_FUNCTION_NAME): New _RIDs.
|
||
|
(CTI_FUNCTION_ID, CTI_PRETTY_FUNCTION_ID, CTI_FUNC_ID): Remove.
|
||
|
(CTI_FUNCTION_NAME_DECL, CTI_PRETTY_FUNCTION_NAME_DECL,
|
||
|
CTI_C99_FUNCTION_NAME_DECL, CTI_SAVED_FUNCTION_NAME_DECLS): New
|
||
|
global tree slots.
|
||
|
(function_id_node, pretty_function_id_node, func_id_node): Remove.
|
||
|
(c99_function_name_decl_node, function_name_decl_node,
|
||
|
pretty_function_name_decl_node, saved_function_name_decls):
|
||
|
Declare.
|
||
|
(struct language_function): Remove x_function_name_declared_p.
|
||
|
(make_fname_decl): Remove a parameter.
|
||
|
(declare_function_names): Remove prototype.
|
||
|
(start_fname_decls, finish_fname_decls): Prototype.
|
||
|
(fname_as_string): Likewise.
|
||
|
(fname_string, fname_decl): Likewise.
|
||
|
* c-common.c (make_fname_decl): Adjust.
|
||
|
(struct fname_var_t): New struct.
|
||
|
(fname_vars): New static array.
|
||
|
(declare_function_name): Remove.
|
||
|
(start_fname_decls, finish_fname_decls): New functions.
|
||
|
(fname_as_string): New function from remnants of
|
||
|
declare_function_name.
|
||
|
(fname_string, fname_decl): New functions.
|
||
|
|
||
|
* c-decl.c (c_function_name_declared_p): Remove.
|
||
|
(init_decl_processing): Don't generate __FUNCTION__ et al ids,
|
||
|
don't call declare_function_name. Call start_fname_decls.
|
||
|
(c_make_fname_decl): Adjust parameters. Generate the name. Don't
|
||
|
clobber the line number. Call finish_decl.
|
||
|
(start_function): Call start_fname_decls.
|
||
|
(finish_function): Call finish_fname_decls.
|
||
|
Remove c_function_name_declared_p.
|
||
|
(push_c_function_context): Don't push c_function_name_declared_p.
|
||
|
(pop_c_function_context): Don't pop c_function_name_declared_p.
|
||
|
(c_begin_compound_stmt): Don't check c_function_name_declared_p.
|
||
|
* c-parse.in (STRING_FUNC_NAME, VAR_FUNC_NAME): New tokens.
|
||
|
(program): Call finish_fname_decls for C.
|
||
|
(primary): Add VAR_FUNC_NAME.
|
||
|
(reswords): Add slots for __FUNCTION__ et al.
|
||
|
(rid_to_yy): Add mappings for __FUNCTION__ et al.
|
||
|
(yylexname): If it's a STRING_FUNC_NAME generate the function name
|
||
|
now. Don't look for VAR_DECLs containing __FUNCTION__ et al.
|
||
|
* c-semantics.c (prune_unused_decls): Remove.
|
||
|
(finish_stmt_tree): Don't call prune_unused_decls.
|
||
|
(genrtl_decl_stmt): Don't prune unused decls here.
|
||
|
|
||
|
2001-04-24 Nick Clifton <nickc@cambridge.redhat.com>
|
||
|
|
||
|
* dwarf2out.c (mem_loc_descriptor): If a SYMBOL_REF is in the
|
||
|
constant pool, use the pool's SYMBOL_REF instead.
|
||
|
|
||
|
* config/v850/v850.h (STRICT_ALIGNMENT): Always set, even for the
|
||
|
v850e.
|
||
|
|
||
|
2001-04-23 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* c-convert.c (convert): When converting to a BOOLEAN_TYPE, avoid
|
||
|
passing nested NOP_EXPRs to fold.
|
||
|
|
||
|
Mon Apr 23 14:32:12 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* reg-stack.c (emit_swap_insn): Do not get pass CALL_INSNs.
|
||
|
|
||
|
2001-04-22 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* loop.c (loop_delete_insns): Add prototype.
|
||
|
|
||
|
2001-04-23 Phil Edwards <pme@sources.redhat.com>
|
||
|
|
||
|
* configure.in: Remove ENABLE_STD_NAMESPACE.
|
||
|
* config.in: Regenerated.
|
||
|
* configure: Regenerated.
|
||
|
|
||
|
2001-04-22 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
* config.gcc (powerpc-*-darwin*): Move the flag in xm-darwin.h
|
||
|
into xm_defines.
|
||
|
* config/rs6000/xm-darwin.h: Remove file.
|
||
|
|
||
|
2001-04-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* collect2.c (main): Use concat in lieu of xmalloc/sprintf.
|
||
|
(write_c_file_stat): Likewise.
|
||
|
|
||
|
* dbxout.c (dbxout_init): Likewise.
|
||
|
|
||
|
* profile.c (output_func_start_profiler): Likewise.
|
||
|
|
||
|
2001-04-22 Philipp Thomas <pthomas@suse.de>
|
||
|
|
||
|
* ABOUT-GCC-NLS: Now that gettext 0.10.37 is out,
|
||
|
require it instead of the CVS version.
|
||
|
* cpperror.c (v_message): Put a blank before the macro
|
||
|
body to not confuse exgettext.
|
||
|
|
||
|
2001-04-21 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* flow.c (proagate_one_insn): Remove useless assignment.
|
||
|
* jump.c (delete_insn): Tidy.
|
||
|
* loop.c (try_copy_prop): When deleting an instruction with a
|
||
|
REG_RETVAL note, delete the entire libcall sequence.
|
||
|
(loop_delete_insns): New function.
|
||
|
* unroll.c (initial_reg_note_copy): Copy INSN_LIST notes, even if
|
||
|
we're not substituting into them yet.
|
||
|
|
||
|
2001-04-21 Kazu Hirata <kazu@hxi.com>
|
||
|
|
||
|
* config/h8300/h8300.c (general_operand_src): Fix a comment typo.
|
||
|
|
||
|
* config/sparc/sparc.c (sparc_flat_eligible_for_epilogue_delay):
|
||
|
Fix a comment typo.
|
||
|
* config/i960/i960.c (signed_arith_operand): Likewise.
|
||
|
|
||
|
* calls.c (expand_call): Fix a comment typo.
|
||
|
|
||
|
2001-04-20 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* configure.in: Probe for times, clock, struct tms, and clock_t.
|
||
|
* configure, config.in: Regenerate.
|
||
|
* timevar.c: Replace ifdef forest in get_time with (relatively)
|
||
|
straightforward series of checks based on autoconf's probes.
|
||
|
|
||
|
Fri Apr 20 12:24:50 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* config/pa/som.h (NM_FLAGS): Define.
|
||
|
|
||
|
2001-04-20 Bernd Schmidt <bernds@redhat.com>
|
||
|
|
||
|
* ia64.h (MD_SCHED_REORDER, MD_SCHED_REORDER2): Pass CLOCK to called
|
||
|
function.
|
||
|
* ia64-protos.h (ia64_sched_reorder): Additional arg for clock.
|
||
|
* ia64.c (nop_cycles_until): New function.
|
||
|
(prev_cycle, prev_first, last_issued): New static variables.
|
||
|
(ia64_sched_reorder): Additional arg for clock.
|
||
|
On final scheduling pass, emit extra NOPs as needed.
|
||
|
Set prev_first and prev_cycle.
|
||
|
(ia64_sched_reorder2): Pass clock arg down to ia64_sched_reorder.
|
||
|
(ia64_variable_issue): Set last_issued.
|
||
|
|
||
|
2001-04-20 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/i386/i386.c (ix86_expand_int_movcc,
|
||
|
ix86_expand_strlensi_unroll_1): Sign-extend CONST_INTs.
|
||
|
|
||
|
2001-04-20 Geoff Keating <geoffk@redhat.com>
|
||
|
|
||
|
* config/rs6000/rs6000.md (ctrsi_internal1, ctrsi_internal2,
|
||
|
ctrsi_internal3, ctrsi_internal4, ctrsi_internal5,
|
||
|
ctrsi_internal6, ctrdi_internal1, ctrdi_internal2,
|
||
|
ctrdi_internal3, ctrdi_internal4, ctrdi_internal5,
|
||
|
ctrdi_internal6): In the short-branch case, this insn is only 4
|
||
|
bytes long. Reported by Reza Yazdani <reza@apple.com>.
|
||
|
|
||
|
2001-04-20 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* reg-stack.c (check_asm_stack_operands): Issue error if "=t" resp.
|
||
|
"=u" is used together with "st" resp. "st(1)" clobber.
|
||
|
|
||
|
2001-04-20 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* gcse.c (gcse_main): Fix comment typo.
|
||
|
(delete_null_pointer_check): Likewise.
|
||
|
(hash_scan_set): Don't consider sets with REG_EQUIV MEM notes.
|
||
|
* cse.c (cse_insn): Likewise.
|
||
|
* function.c (fixup_var_refs_insns_with_hash): The sequence is
|
||
|
toplevel.
|
||
|
|
||
|
2001-04-19 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* toplev.c: Excise all code for the undocumented -dm option.
|
||
|
(float_signal): Call signal just once, unconditionally.
|
||
|
|
||
|
2001-04-19 Geoff Keating <geoffk@redhat.com>
|
||
|
|
||
|
* fold-const.c (fold): Use first_rtl_op rather than
|
||
|
TREE_CODE_LENGTH when looping over parameters of a tree.
|
||
|
Correct strange grouping in test for evaluated SAVE_EXPR.
|
||
|
|
||
|
Thu Apr 19 19:15:26 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* config/pa/pa-linux.h (CPLUSPLUS_CPP_SPEC): Undefine.
|
||
|
* config/pa/pa.h (CPLUSPLuS_CPP_SPEC): Define.
|
||
|
|
||
|
* config/pa/som.h (ASM_OUTPUT_FUNCTION_PREFIX): Truncate subspace
|
||
|
name at 32 total characters.
|
||
|
(ASM_OUTPUT_SECTION_NAME): Similarly. Also, only support placing
|
||
|
functions in named sections -- data items can still go into unique
|
||
|
sections, but they have normal names (ie $LIT$ and $DATA$).
|
||
|
|
||
|
* config/pa/som.h (SUPPORTS_INIT_PRIORITY): SOM does not support
|
||
|
INIT_PRIORITY.
|
||
|
|
||
|
2001-04-19 DJ Delorie <dj@redhat.com>
|
||
|
|
||
|
* config/alpha/vms.h: Change OBJECT_SUFFIX and EXECUTABLE_SUFFIX
|
||
|
to TARGET_OBJECT_SUFFIX and TARGET_EXECUTABLE_SUFFIX.
|
||
|
* config/i386/cygwin.h: Likewise.
|
||
|
* config/i386/mingw32.h: Likewise.
|
||
|
* config/vax/vms.h: Likewise.
|
||
|
* config/i386/djgpp.h: Remove NO_AUTO_EXE_SUFFIX.
|
||
|
|
||
|
* config/alpha/xm-vms.h: Change OBJECT_SUFFIX and EXECUTABLE_SUFFIX
|
||
|
to HOST_OBJECT_SUFFIX and HOST_EXECUTABLE_SUFFIX.
|
||
|
* config/i386/xm-cygwin.h: Likewise.
|
||
|
* config/i386/xm-djgpp.h: Likewise.
|
||
|
* config/i386/xm-mingw32.h: Likewise.
|
||
|
* config/vax/xm-vms.h: Likewise.
|
||
|
|
||
|
* mkdeps.c (deps_add_default_target): Use TARGET_OBJECT_SUFFIX
|
||
|
instead of OBJECT_SUFFIX.
|
||
|
* collect2.c (find_a_file): Look for files matching the extension
|
||
|
HOST_EXECUTABLE_SUFFIX instead of EXECUTABLE_SUFFIX.
|
||
|
* gcc.c (DEFAULT_SWITCH_CURTAILS_COMPILATION): Depend on
|
||
|
TARGET_EXECUTABLE_SUFFIX.
|
||
|
(find_a_file): Use HOST_EXECUTABLE_SUFFIX.
|
||
|
(make_relative_prefix): Likewise.
|
||
|
(convert_filename): Use TARGET_ suffixes throughout. Remove
|
||
|
NO_AUTO_EXE_SUFFIX.
|
||
|
(process_command): Likewise.
|
||
|
(do_spec_1): Likewise.
|
||
|
* java/lang.c (init_parse): Likewise.
|
||
|
|
||
|
* gcc.texi : Document four new options matching the pattern
|
||
|
(HOST|TARGET)_(OBJECT|EXECUTABLE)_SUFFIX. Remove documentation
|
||
|
for deleted macros OBJECT_SUFFIX and EXECUTABLE_SUFFIX. Remove
|
||
|
documentation for NO_AUTO_EXE_SUFFIX.
|
||
|
|
||
|
2001-04-19 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* toplev.h (struct lang_hooks): Allow decode_option to indicate
|
||
|
that language-independent processing should not be done.
|
||
|
* toplev.c (main): Adjust accordingly.
|
||
|
|
||
|
* rtl.texi (jump_insn): Expand on JUMP_LABEL documentation.
|
||
|
* loop.c (load_mems): Handle a NULL JUMP_LABEL for a JUMP_INSN.
|
||
|
|
||
|
* mips.md (reload_outputdi): Require that operand0 be a
|
||
|
general_operand.
|
||
|
|
||
|
2001-04-19 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* invoke.texi (-Wshadow): Clarify.
|
||
|
|
||
|
2001-04-18 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* loop.c (load_mems): Examine all the instructions in the loop
|
||
|
before concluding that all jumps branch to the first instruction
|
||
|
after the loop.
|
||
|
|
||
|
Wed Apr 18 20:32:03 2001 Christopher Faylor <cgf@cygnus.com>
|
||
|
|
||
|
* config/i386/xm-cygwin.h (CPP_SPEC): Fix typo.
|
||
|
|
||
|
2001-04-18 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* cpp.texi (-Wwhite-space): Remove.
|
||
|
(-Wall): -Wall does not imply -Wwhite-space.
|
||
|
|
||
|
2001-04-17 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* dbxout.c (dbxout_init): If DBX_OUTPUT_GCC_MARKER is defined,
|
||
|
use it instead of blindly generating a .stabs.
|
||
|
* xcoffout.h: Define DBX_OUTPUT_GCC_MARKER so we put the type
|
||
|
in the right place.
|
||
|
* xcoffout.c: Don't bother defining default for N_CATCH.
|
||
|
(UNKNOWN_STAB): Use internal_error.
|
||
|
(stab_to_sclass): Remove now-unnecessary aborts.
|
||
|
Remove #if 0'ed case N_BROWS. Add #ifdef N_OPT block.
|
||
|
|
||
|
Tue Apr 17 21:41:11 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* jump.c (mark_all_labels): Canonicalize the tail recursion
|
||
|
label attached to CALL_PLACEHOLDER insns.
|
||
|
|
||
|
2001-04-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* output.h (dump_flow_info, free_basic_block_vars,
|
||
|
which_alternative): Delete redundant prototypes.
|
||
|
|
||
|
* rtl.h (bss_section): Likewise.
|
||
|
|
||
|
2001-04-17 Loren J. Rittle <ljrittle@acm.org>
|
||
|
|
||
|
* dbxout.c (N_OPT): Define if not available from <stab.h>
|
||
|
|
||
|
2001-04-17 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||
|
|
||
|
* vax.h (PROMOTE_PROTOTYPES): Define for compatibility with system
|
||
|
libraries and native K&R compilers.
|
||
|
|
||
|
2001-04-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* c-typeck.c (convert_arguments): Don't check for width changes
|
||
|
with -Wtraditional.
|
||
|
|
||
|
* invoke.texi (-Wtraditional): Update documentation.
|
||
|
|
||
|
2001-04-16 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* toplev.c (output_lang_identify): Delete.
|
||
|
(compile_file): Don't call ASM_IDENTIFY_GCC or ASM_IDENTIFY_LANGUAGE.
|
||
|
Don't generate gcc2_compiled. label. Don't emit a nop if profiling.
|
||
|
If IDENT_ASM_OP is defined, emit an .ident "GCC (GNU) <version>"
|
||
|
after calling ASM_FILE_END.
|
||
|
|
||
|
* dbxout.c (dbxout_init): Don't call ASM_IDENTIFY_GCC_AFTER_SOURCE.
|
||
|
Instead, unconditionally emit an N_OPT stab with string equal
|
||
|
to STABS_GCC_MARKER, which defaults to "gcc2_compiled."
|
||
|
|
||
|
* defaults.h: Don't provide default for ASM_IDENTIFY_LANGUAGE.
|
||
|
|
||
|
* config/dbxelf.h, config/freebsd.h, config/nextstep.h,
|
||
|
config/psos.h, config/ptx4.h, config/1750a/1750a.h,
|
||
|
config/alpha/alpha.h, config/alpha/elf.h, config/arc/arc.h,
|
||
|
config/arm/aof.h, config/arm/coff.h, config/arm/elf.h,
|
||
|
config/arm/linux-elf.h, config/avr/avr.h, config/d30v/d30v.h,
|
||
|
config/dsp16xx/dsp16xx.h, config/h8300/h8300.h,
|
||
|
config/i370/i370.h, config/i386/beos-elf.h,
|
||
|
config/i386/osf1elf.h, config/i386/osfrose.h,
|
||
|
config/ia64/sysv4.h, config/m68k/3b1.h, config/m68k/auxgas.h,
|
||
|
config/m68k/crds.h, config/m68k/hp320.h, config/m68k/m68kv4.h,
|
||
|
config/m68k/mot3300.h, config/m68k/news.h, config/m68k/sgs.h,
|
||
|
config/m68k/tower-as.h, config/mcore/mcore-elf.h,
|
||
|
config/mips/iris6.h, config/mips/osfrose.h,
|
||
|
config/mips/sni-svr4.h, config/pa/som.h, config/pdp11/pdp11.h,
|
||
|
config/sparc/sp64-elf.h:
|
||
|
Delete definitions of any or all of: ASM_IDENTIFY_GCC,
|
||
|
ASM_IDENTIFY_GCC_AFTER_SOURCE, and ASM_IDENTIFY_LANGUAGE.
|
||
|
|
||
|
* config/elfos.h, config/freebsd.h, config/linux.h,
|
||
|
config/alpha/elf.h, config/arm/linux-elf.h, config/i386/i386elf.h,
|
||
|
config/i386/ptx4-i.h, config/mips/gnu.h, config/mips/linux.h,
|
||
|
config/sparc/linux.h, config/sparc/linux64.h: Delete definitions
|
||
|
of ASM_FILE_START which merely emit a .version directive. Delete
|
||
|
definitions of ASM_FILE_END which merely emit an .ident directive.
|
||
|
|
||
|
* config/avr/avr.h, config/vax/vax.h: Delete definition of
|
||
|
ASM_IDENTIFY_GCC and move part of its logic into
|
||
|
ASM_FILE_START.
|
||
|
|
||
|
* config/i386/att.h, config/i386/gas.h, config/i386/linux.h,
|
||
|
config/sparc/linux-aout.h: Don't emit .version directive in
|
||
|
ASM_FILE_START.
|
||
|
|
||
|
* config/i386/dgux.c, config/m88k/m88k.c, config/sh/sh.c
|
||
|
(output_file_start): Correct comment.
|
||
|
|
||
|
* config/i386/osfrose.h: Don't emit trailing .ident directive.
|
||
|
* config/m68k/mot3300.h: Override STABS_GCC_MARKER to "gcc2_compiled%"
|
||
|
to match gdb.
|
||
|
* config/pa/lib2funcs.asm: Delete gcc_compiled. label.
|
||
|
* config/rs6000/aix.h: Correct comment.
|
||
|
|
||
|
* config/i386/i386afe.h: Delete.
|
||
|
* config.gcc: Remove references to i386afe.h.
|
||
|
|
||
|
* tm.texi: Delete documentation of ASM_IDENTIFY_GCC. The
|
||
|
other macros deleted by this patch were undocumented.
|
||
|
|
||
|
Mon Apr 16 08:03:48 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* pa.md (reload_outdi): Operand 0 must be a non hard register.
|
||
|
|
||
|
* pa.c (secondary_reload_class): SAR<->FP copies require a
|
||
|
secondary register.
|
||
|
|
||
|
* install.texi (mips-mips-bsd): Update list of functions
|
||
|
required to include memmove.
|
||
|
* tm.texi (TARGET_MEM_FUNCTIONS): Update list of implicitly
|
||
|
used functions to include memmove.
|
||
|
|
||
|
2001-04-15 Toon Moene <toon@moene.indiv.nluug.nl>
|
||
|
|
||
|
* i386.md (sqrtdf2): SFmode should be DFmode.
|
||
|
|
||
|
2001-04-15 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* gcse.c (compute_ld_motion_mems): ASM outputs aren't moveable.
|
||
|
(find_moveable_store): Likewise.
|
||
|
|
||
|
2001-04-15 Jim Wilson <wilson@redhat.com>
|
||
|
|
||
|
* function.c (expand_function_end): Handle PARALLEL real_decl_rtl.
|
||
|
|
||
|
Sat Apr 14 16:24:19 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (ashldi3_1_rex64): Add 'J' to the constraints
|
||
|
(ashrdi3_1_rex64): Change 'n' constraint to 'J'.
|
||
|
|
||
|
2001-04-14 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/mn10300/mn10300.md (cmpsi): Tell reload to disregard the
|
||
|
first alternative.
|
||
|
|
||
|
2001-04-14 Alan Modra <amodra@one.net.au>
|
||
|
|
||
|
* pa.c (force_mode): New function.
|
||
|
(emit_move_sequence): Use it instead of generating new rtx_REGs.
|
||
|
|
||
|
2001-04-13 Jim Wilson <wilson@redhat.com>
|
||
|
|
||
|
* config/ia64/ia64.c (ia64_expand_epilogue): Emit alloc if sibcall_p.
|
||
|
(first_instruction): New static variable.
|
||
|
(rtx_needs_barrier): Return 1 for alloc.
|
||
|
(init_insn_group_barriers): Set first_instruction.
|
||
|
(rws_sum): Delete duplicate definition.
|
||
|
(group_barrier_needed_p): Return 0 when first_instruction true.
|
||
|
(safe_group_barrier_needed_p): Save and restore first_instruction
|
||
|
around group_barrier_needed_p call.
|
||
|
|
||
|
Fri Apr 13 21:40:28 2001 Loren J. Rittle <ljrittle@acm.org>
|
||
|
|
||
|
* expr.h (enum libfunc_index): Add LTI_memmove.
|
||
|
(memmove_libfunc): Define macro.
|
||
|
* optabs.c (init_optabs): Initialize memmove_libfunc.
|
||
|
* expr.c (expand_assignment): Use memmove_libfunc instead of
|
||
|
memcpy_libfunc.
|
||
|
|
||
|
2001-04-13 Alan Modra <alan@linuxcare.com.au>
|
||
|
|
||
|
* pa.h (GO_IF_LEGITIMATE_ADDRESS): Disallow PIC LO_SUM
|
||
|
fp mode addresses.
|
||
|
|
||
|
2001-04-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* Makefile.in (reg-stack.o): Depend on reload.h.
|
||
|
(insn-attrtab.o): Depend on flags.h.
|
||
|
|
||
|
* genattrtab (main): Include flags.h in insn-attrtab.c.
|
||
|
|
||
|
* reg-stack.c: Include reload.h.
|
||
|
|
||
|
* sparc.h (flag_pic): Delete redundant declaration.
|
||
|
|
||
|
* output.h (flag_pic): Likewise.
|
||
|
|
||
|
* tree.h (pedantic): Likewise.
|
||
|
|
||
|
2001-04-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* Makefile.in (toplev.o, jump.o, regmove.o): Depend on reload.h
|
||
|
|
||
|
* jump.c, regmove.c, toplev.c: Include reload.h.
|
||
|
|
||
|
* reload.h (reload_cse_regs): Declare.
|
||
|
|
||
|
* rtl.h (find_equiv_reg, operands_match_p, safe_from_earlyclobber,
|
||
|
reload_cse_regs, init_reload, mark_home_live, reload,
|
||
|
init_caller_save): Delete redundant prototypes.
|
||
|
|
||
|
2001-04-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* Makefile.in (ssa.o, regclass.o): Depend on $(EXPR_H).
|
||
|
|
||
|
* regclass.c, ssa.c: Include expr.h.
|
||
|
|
||
|
* rtl.h (memory_address, force_reg, emit_queue, emit_move_insn,
|
||
|
gen_move_insn): Delete redundant declarations.
|
||
|
|
||
|
2001-04-13 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
|
||
|
|
||
|
* Makefile.in (CFLAGS, BOOT_CFLAGS): Partly revert 2000-10-27 patch.
|
||
|
(stage1_build): Instead pass down STAGE1_CFLAGS here. Pass down
|
||
|
MAKEINFO and MAKEINFOFLAGS too.
|
||
|
(stage4_build): Correctly order -B flags.
|
||
|
|
||
|
2001-04-13 Alan Modra <amodra@one.net.au>
|
||
|
|
||
|
* pa.c (hppa_init_pic_save): Set rtx_unchanging for
|
||
|
PIC_OFFSET_TABLE_SAVE_RTX.
|
||
|
(zdepi_cint_p): Describe zdepi insn.
|
||
|
Formatting and white space fixes throughout file.
|
||
|
|
||
|
* pa.c (uint32_operand): Don't use long constant >= 2^32.
|
||
|
(emit_move_sequence): Use HOST_WIDE_INT constants. Don't worry
|
||
|
about 32->64 bit sign extension if 32 bit HOST_WIDE_INTs.
|
||
|
(compute_movstrsi_length): Make `align' unsigned to avoid warning.
|
||
|
(output_64bit_and): Use plain `int's for shift counts.
|
||
|
(output_64bit_ior): Likewise.
|
||
|
(function_arg_partial_nregs): Use unsigned vars to avoid warnings.
|
||
|
* pa.h (CONST_OK_FOR_LETTER_P): Use HOST_WIDE_INT constants for case
|
||
|
`N', and simplify.
|
||
|
|
||
|
* pa-hpux10.h (NEW_HP_ASSEMBLER): Define to 1.
|
||
|
* pa-hpux11.h (NEW_HP_ASSEMBLER): Likewise.
|
||
|
* pa.h (LEGITIMATE_CONSTANT_P) Collapse two defines depending on
|
||
|
NEW_HP_ASSEMBLER into one. Kill warnings.
|
||
|
|
||
|
* pa-gas.h: Delete file.
|
||
|
* config.gcc: Match `parisc' as well as `hppa' for cpu_type=pa.
|
||
|
Add new targets hppa*64*-*-linux* and parisc*64*-*-linux*. Update
|
||
|
hppa*-*-linux*. For all pa targets, remove pa/gas.h from tm_file,
|
||
|
instead setting MASK_GAS | MASK_JUMP_IN_DELAY in target_cpu_default2.
|
||
|
|
||
|
* config/pa/mill32.S: New file.
|
||
|
* config/pa/mill64.S: New file.
|
||
|
* config/pa/t-linux (LIBGCC1, CROSS_LIBGCC1, LIB1ASMFUNCS,
|
||
|
LIB1ASMSRC, CRTSTUFF_T_CFLAGS_S, TARGET_LIBGCC2_CFLAGS): Define.
|
||
|
* config/pa/t-linux64: New file.
|
||
|
* config/pa/t-pa64 (CROSS_LIBGCC1): Change to libgcc1-asm.a
|
||
|
(LIB1ASMFUNCS, LIB1ASMSRC): Define.
|
||
|
(TARGET_LIBGCC2_CFLAGS): Add -Dpa64=1 -DELF=1.
|
||
|
|
||
|
* elfos.h (SELECT_SECTION): Undef before defining.
|
||
|
* pa-linux.h (LINUX_DEFAULT_ELF, PTRDIFF_TYPE, CPP_SPEC): Remove.
|
||
|
(LIB_SPEC): Remove -lmilli.
|
||
|
(DBX_REGISTER_NUMBER): Remove.
|
||
|
(PREFERRED_DEBUGGING_TYPE, DWARF2_ASM_LINE_DEBUG_INFO,
|
||
|
(DWARF2_UNWIND_INFO, ASM_SPEC, LINK_SPEC, FUNCTION_OK_FOR_SIBCALL,
|
||
|
NO_PROFILE_COUNTERS, SELECT_RTX_SECTION, INCOMING_RETURN_ADDR_RTX,
|
||
|
DWARF_FRAME_RETURN_COLUMN, STRING_ASM_OP, TEXT_SECTION_ASM_OP,
|
||
|
DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP, ASM_FILE_START,
|
||
|
ASM_OUTPUT_DEF, ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT,
|
||
|
ASM_OUTPUT_LABEL, ASM_GLOBALIZE_LABEL, ASM_DECLARE_FUNCTION_NAME,
|
||
|
TARGET_GAS): Define.
|
||
|
* pa.c (output_arg_descriptor): Disable for TARGET_ELF32.
|
||
|
(function_arg): If TARGET_ELF32, pass fp args in both general and fp
|
||
|
regs if we don't have a prototype.
|
||
|
* pa.md (canonicalize_funcptr_for_compare): Not for TARGET_ELF32.
|
||
|
* pa.h (TARGET_ELF32): Default to 0 if undefined.
|
||
|
(EH_RETURN_DATA_REGNO, EH_RETURN_STACKADJ_RTX,
|
||
|
EH_RETURN_HANDLER_RTX): Define.
|
||
|
* pa32-regs.h (DBX_REGISTER_NUMBER): Remove unnecessary test.
|
||
|
(DWARF_FRAME_REGNUM): Define.
|
||
|
* pa64-regs.h (DWARF_FRAME_REGNUM): Define.
|
||
|
* pa32-linux.h: New file.
|
||
|
* pa64-linux.h: New file.
|
||
|
|
||
|
* pa-64.h (WCHAR_TYPE, WCHAR_TYPE_SIZE): Define.
|
||
|
(ASM_OUTPUT_DOUBLE_INT): Format, protect macro with do..while.
|
||
|
(LINK_SPEC, LIB_SPEC, MD_EXEC_PREFIX, MD_STARTFILE_PREFIX,
|
||
|
NEW_HP_ASSEMBLER, ASM_FILE_START, OBJECT_FORMAT_ELF,
|
||
|
DWARF2_DEBUGGING_INFO, PREFERRED_DEBUGGING_FORMAT,
|
||
|
DWARF2_ASM_LINE_DEBUG_INFO, USE_CONST_SECTION, CONST_SECTION_ASM_OP,
|
||
|
CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INIT_SECTION_ASM_OP,
|
||
|
FINI_SECTION_ASM_OP, EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS,
|
||
|
READONLY_DATA_SECTION, CONST_SECTION_FUNCTION, CTORS_SECTION_FUNCTION,
|
||
|
DTORS_SECTION_FUNCTION, ASM_OUTPUT_SECTION_NAME, MAKE_DECL_ONE_ONLY,
|
||
|
UNIQUE_SECTION_P, UNIQUE_SECTION, INT_ASM_OP, ASM_OUTPUT_CONSTRUCTOR,
|
||
|
ASM_OUTPUT_DESTRUCTOR, TYPE_ASM_OP, SIZE_ASM_OP, ASM_WEAKEN_LABEL,
|
||
|
TYPE_OPERAND_FMT, ASM_DECLARE_RESULT): Move to..
|
||
|
* pa64-hpux.h: New file.
|
||
|
(ASM_FILE_START): Correct typo.
|
||
|
(PREFERRED_DEBUGGING_FORMAT): Rename to PREFERRED_DEBUGGING_TYPE.
|
||
|
* config.gcc: Modify for above.
|
||
|
|
||
|
Fri Apr 13 00:09:22 EDT 2001 John Wehle (john@feith.com)
|
||
|
|
||
|
* jump.c (jump_optimize_1): Don't delete dead stores here.
|
||
|
* toplev.c (rest_of_compilation): Call delete_trivially_dead_insns
|
||
|
prior to running jump optimize before cse2.
|
||
|
|
||
|
2001-04-12 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* Makefile.in (regmove.o): Depend on except.h.
|
||
|
* regmove.c: Include it.
|
||
|
|
||
|
2001-04-12 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
* objc/objc-act.c: Remove all code ifdefed with the never-used
|
||
|
macro OBJC_INT_SELECTORS.
|
||
|
* config/d30v/d30v.h: Remove commented-out ref to OBJC_INT_SELECTORS.
|
||
|
* tm.texi: Remove doc for OBJC_INT_SELECTORS.
|
||
|
|
||
|
Thu Apr 12 18:13:37 2001 Rodney Brown <RodneyBrown@mynd.com>
|
||
|
|
||
|
* config/pa/quadlib.c: Add prototypes.
|
||
|
|
||
|
2001-04-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* bitmap.h (debug_bitmap): Delete redundant prototype.
|
||
|
|
||
|
* rtl.h (get_frame_size): Likewise.
|
||
|
|
||
|
2001-04-12 Jim Wilson <wilson@redhat.com>
|
||
|
|
||
|
* config/ia64/ia64.md (extendsfdf2, extendsftf2, extenddftf2): Simplify
|
||
|
to just emit an fnorm.
|
||
|
|
||
|
2001-04-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* c-common.h (truthvalue_conversion, type_for_mode,
|
||
|
type_for_size): Delete redundant declarations.
|
||
|
|
||
|
* c-lex.h (is_class_name): Likewise.
|
||
|
|
||
|
* c-tree.h (pedantic, convert, getdecls, gettags,
|
||
|
global_bindings_p, init_decl_processing, insert_block,
|
||
|
maybe_build_cleanup, poplevel, print_lang_decl,
|
||
|
print_lang_identifier, print_lang_type, pushdecl, pushlevel,
|
||
|
set_block, incomplete_type_error, build_function_call,
|
||
|
lvalue_or_else, mark_addressable): Likewise.
|
||
|
|
||
|
* expr.h (expand_tree_builtin): Likewise.
|
||
|
|
||
|
2001-04-12 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* invoke.texi: Document --param max-gcse-memory.
|
||
|
|
||
|
2001-04-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* configure.in (errno): Check for declaration.
|
||
|
* configure, config.in: Regenerated.
|
||
|
|
||
|
* system.h (errno): Only declare if not already done.
|
||
|
|
||
|
2001-04-12 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* recog.c (general_operand, immediate_operand,
|
||
|
nonmemory_operand): Require CONST_INTs to be sign-extended
|
||
|
values for their modes.
|
||
|
|
||
|
2001-04-12 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* expmed.c (store_bit_field): Truncate CONST_INTs.
|
||
|
(expand_mult_highpart, expand_divmod): Likewise.
|
||
|
* expr.c (convert_modes, store_field): Likewise.
|
||
|
* integrate.c (expand_inline_function): Use promote_mode() to
|
||
|
determine whether to convert_modes() an argument as signed
|
||
|
or unsigned.
|
||
|
* optabs.c (expand_binop): Get CONST_INT operands
|
||
|
sign-extended for their appropriate modes.
|
||
|
* stmt.c (emit_case_nodes): Convert node values to the
|
||
|
appropriate mode.
|
||
|
(expand_end_case): Convert minval and range to the appropriate
|
||
|
mode.
|
||
|
* unroll.c (loop_iterations): Truncate abs_diff to the mode of
|
||
|
the iteration variable.
|
||
|
* varasm.c (immed_double_const): Don't require words to be
|
||
|
narrower than host wide ints to properly sign-extend
|
||
|
CONST_INTs.
|
||
|
|
||
|
2001-04-12 kaz Kojima <kkojima@rr.iij4u.or.jp>
|
||
|
|
||
|
* sh.md (builtin_setjmp_receiver): New expander.
|
||
|
|
||
|
2001-04-12 David Edelsohn <dje@watson.ibm.com>
|
||
|
|
||
|
* config/rs6000/rs6000.c (rs6000_emit_move): Do not
|
||
|
special-case HOST_BITS_PER_WIDE_INT != 32. Use same criteria
|
||
|
for generating CONST_INT and CONST_DOUBLE.
|
||
|
|
||
|
2001-04-12 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/rs6000/rs6000.c (logical_operand): CONST_INTs are
|
||
|
already sign-extended.
|
||
|
(rs6000_emit_prologue): Make register iterator signed.
|
||
|
(rs6000_emit_epilogue): Likewise.
|
||
|
* config/rs6000/rs6000.md (addsi3, adddi3): Sign-extend high
|
||
|
and low.
|
||
|
(movsf split, movdf split): Sign-extend CONST_INTs.
|
||
|
(movdi splits): Likewise.
|
||
|
|
||
|
2001-04-12 Kelley Cook <kelley.cook@home.com>
|
||
|
|
||
|
* config-lang.in (lang_dirs): Add in zlib.
|
||
|
|
||
|
2001-04-11 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/i386/i386.md: Apply trunc_int_for_mode() to GEN_INT
|
||
|
operands that make it to RTL.
|
||
|
|
||
|
2001-04-11 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
Add Darwin (Mac OS X kernel) native support.
|
||
|
* config.gcc (powerpc-*-darwin*): Add native bits.
|
||
|
* config/darwin.c: New file, generic Darwin support functions.
|
||
|
* config/darwin.h: New file, generic Darwin definitions.
|
||
|
* config/darwin-protos.h: New file, generic Darwin prototypes.
|
||
|
* rs6000/darwin.h: New file, Darwin for PowerPC.
|
||
|
* rs6000/t-darwin: New file, Darwin makefile fragment.
|
||
|
* rs6000/rs6000.h (OBJECT_MACHO): New macro.
|
||
|
(TARGET_MACHO): Ditto.
|
||
|
(rs6000_abi): Add ABI_DARWIN.
|
||
|
(RS6000_REG_SAVE): Add ABI_DARWIN case.
|
||
|
(RS6000_SAVE_AREA): Ditto.
|
||
|
(FP_ARG_MAX_REG): Ditto.
|
||
|
(RETURN_ADDRESS_OFFSET): Ditto.
|
||
|
* rs6000/rs6000.c (rs6000_legitimize_address): Add TARGET_MACHO
|
||
|
cases.
|
||
|
(rs6000_emit_move): Add ABI_DARWIN cases.
|
||
|
(print_operand): Ditto.
|
||
|
(first_reg_to_save): Ditto.
|
||
|
(rs6000_stack_info): Ditto, also align stack by 16 instead of 8.
|
||
|
(debug_stack_info): Ditto.
|
||
|
(rs6000_emit_prologue): Ditto.
|
||
|
(rs6000_emit_epilogue): Ditto.
|
||
|
(output_profiler_hook): Ditto.
|
||
|
(output_function_profiler): Ditto.
|
||
|
(rs6000_add_gc_roots): Call machopic_add_gc_roots if TARGET_MACHO.
|
||
|
(output_mi_thunk): Add TARGET_MACHO case.
|
||
|
(add_compiler_stub): Ditto.
|
||
|
(output_compiler_stub): Ditto.
|
||
|
(no_previous_def): Ditto.
|
||
|
(output_call): Ditto.
|
||
|
(machopic_output_stub): Ditto.
|
||
|
(rs6000_machopic_legitimize_pic_address): Ditto.
|
||
|
(toc_section): Ditto.
|
||
|
* rs6000/rs6000.md (addsi3_high): New TARGET_MACHO pattern.
|
||
|
(macho_high): Ditto.
|
||
|
(macho_low): Ditto.
|
||
|
(movsi_low): Ditto.
|
||
|
(load_macho_picbase): Ditto.
|
||
|
(call): Add TARGET_MACHO case to modify function.
|
||
|
(call_value): Ditto.
|
||
|
(call_nonlocal_sysv): Add ABI_DARWIN case.
|
||
|
(call_value_nonlocal_sysv): Ditto.
|
||
|
* rs6000/rs6000-protos.h (rs6000_machopic_legitimize_pic_address):
|
||
|
Add prototype.
|
||
|
(machopic_output_stub): Ditto.
|
||
|
* ginclude/stddef.h: Test _BSD_WCHAR_T_DEFINED_.
|
||
|
|
||
|
2001-04-11 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* dwarf2out.c (modified_type_die): Don't create new types here.
|
||
|
* tree.h (get_qualified_type): New function.
|
||
|
(build_qualified_type): Adjust comment.
|
||
|
* tree.c (get_qualified_type): New function.
|
||
|
(build_qualified_type): Use it.
|
||
|
|
||
|
2001-04-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* cpp.texi (-Wtraditional): Update description.
|
||
|
|
||
|
* invoke.texi (-Wtraditional): Likewise.
|
||
|
|
||
|
2001-04-11 Jim Wilson <wilson@redhat.com>
|
||
|
|
||
|
* config/ia64/ia64.h (FUNCTION_ARG_BOUNDARY): Return 128 if argument
|
||
|
requires more than 64 bits of alignment.
|
||
|
|
||
|
2001-04-11 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpplib.c (do_line): Sanity check iff enable checking.
|
||
|
|
||
|
2001-04-11 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* Makefile.in (insn-recog.o): Depend on toplev.h.
|
||
|
(insn-emit.o, doloop.o): Likewise.
|
||
|
* genrecog.c, genemit.c: Include toplev.h in generated file.
|
||
|
* doloop.c: Include toplev.h.
|
||
|
|
||
|
2001-04-11 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* Makefile.in (gcse.o): Depend on params.h.
|
||
|
* gcse.c: Include params.h.
|
||
|
(gcse_main): Don't do GCSE if doing so will take inordinate
|
||
|
amounts of memory.
|
||
|
* params.def (PARAM_MAX_GCSE_MEMORY): New parameter.
|
||
|
* params.h (MAX_GCSE_MEMORY): New macro.
|
||
|
|
||
|
2001-04-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* Makefile.in (insn-output.o): Depend on $(EXPR_H).
|
||
|
|
||
|
* genoutput.c (output_prologue): Include expr.h in insn-output.c.
|
||
|
|
||
|
2001-04-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* output.h (assemble_real): Declare if REAL_VALUE_TYPE is defined.
|
||
|
|
||
|
* real.h (ereal_atof, real_value_truncate, target_isnan,
|
||
|
target_isinf, target_negative, assemble_real, debug_real): Delete
|
||
|
redundant prototypes.
|
||
|
|
||
|
* Makefile.in (ifcvt.o): Depend on toplev.h.
|
||
|
|
||
|
* c-semantics.c: Include expr.h.
|
||
|
|
||
|
* ifcvt.c: Include toplev.h.
|
||
|
|
||
|
* expr.h (rtx_equal_p): Delete prototype.
|
||
|
|
||
|
* rtl.h (exact_log2_wide, floor_log2_wide, permalloc,
|
||
|
protect_from_queue, gen_jump, gen_beq, gen_bge, gen_ble,
|
||
|
eliminate_constant_term, expand_complex_abs, find_single_use,
|
||
|
make_tree, init_expr_once, init_optabs, supports_one_only):
|
||
|
Likewise.
|
||
|
|
||
|
* tree.h (exact_log2_wide, floor_log2_wide, expand_null_return,
|
||
|
rest_of_type_compilation, emit_queue, do_pending_stack_adjust,
|
||
|
expand_assignment, store_expr, emit_line_note_after,
|
||
|
emit_line_note_force, split_specs_attrs, label_rtx): Likewise.
|
||
|
|
||
|
* toplev.h (exact_log2_wide, floor_log2_wide): Add prototype.
|
||
|
|
||
|
* sparc-protos.h: Delete redundant prototypes.
|
||
|
|
||
|
2001-04-11 Vladimir Makarov <vmakarov@toke.toronto.redhat.com>
|
||
|
|
||
|
* reload.c (push_reload): Add condition missed in SUBREG byte
|
||
|
offset patch.
|
||
|
|
||
|
Wed Apr 4 00:28:23 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||
|
|
||
|
* sparc/sol2-sld-64.h (STARTFILE_SPEC): Added missing blank.
|
||
|
|
||
|
Wed Apr 11 14:06:10 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (floatsisf_sse): Fix output template
|
||
|
* i386.c (ix86_expand_fp_movcc)
|
||
|
|
||
|
* reg-stack.c (emit_pop_insn): Handle complex modes.
|
||
|
(move_for_stack_reg): Emit proper move mode.
|
||
|
(subst_stack_regs_pat): Handle complex modes.
|
||
|
|
||
|
2001-04-11 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* cpplex.c (_cpp_lex_token): Only warn if -Wcomment.
|
||
|
|
||
|
2001-04-10 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* libgcc2.h (__terminate_func_ptr): Remove typedef.
|
||
|
(__pure_virtual, __terminate, __terminate_set_func,
|
||
|
__default_terminate, __throw_type_match, __empty,
|
||
|
__get_eh_context, __get_eh_info, __get_dynamic_handler_chain,
|
||
|
__eh_rtime_match, __unwinding_cleanup, __rethrow,
|
||
|
__sjthrow, __sjpopnthrow, __eh_alloc, __eh_free):
|
||
|
Remove prototypes of deleted functions.
|
||
|
|
||
|
2001-04-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* c-typeck.c (convert_arguments): -Wtraditional now activates
|
||
|
-Wconversion warnings, except for changes in signed-ness.
|
||
|
Detect complex<->int & int<->complex conversions as well.
|
||
|
|
||
|
* invoke.texi (-Wtraditional): Document it.
|
||
|
|
||
|
Tue Apr 10 17:45:50 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* gcse.c (update_ld_motion_stores): Don't use variable I for an insn.
|
||
|
* flow.c (set_block_for_new_insns): Remove needless cast and
|
||
|
properly check for unset block number.
|
||
|
|
||
|
2001-04-10 Andrew MacLeod <amacleod@redhat.com>
|
||
|
|
||
|
* function.c (purge_single_hard_subreg_set): Only check REGNO if
|
||
|
the subreg was a hard register. Pseudos are left as subregs.
|
||
|
|
||
|
2001-04-09 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
|
||
|
|
||
|
* Makefile.in (LIB2FUNCS_STATIC_EXTRA): New macro.
|
||
|
(LIB2ADD_ST): New macro, pass it to mklibgcc.
|
||
|
* mklibgcc.in (libgcc2_st_objs): New variable, set it from LIB2ADD_ST.
|
||
|
(libgcc_st_objs): New, set from libgcc2_st_objs. Use it for libgcc.a.
|
||
|
* config/rs6000/t-ppccomm (LIB2FUNCS_STATIC_EXTRA): New macro.
|
||
|
|
||
|
2001-04-09 Bo Thorsen <bo@suse.co.uk>
|
||
|
|
||
|
* config/i386/i386.md: "TARGET_64BIT && TARGET_64BIT": Removed one.
|
||
|
|
||
|
2001-04-09 Andrew MacLeod <amacleod@redhat.com>
|
||
|
|
||
|
* output.h (set_block_num): Missed it earlier, remove deprecated
|
||
|
prototype.
|
||
|
|
||
|
2001-04-09 Andrew MacLeod <amacleod@redhat.com>
|
||
|
|
||
|
* gcse.c (oprs_unchanged_p): Pass basic_block to load_killed_in_block_p.
|
||
|
(load_killed_in_block_p): Change bb parameter from int to basic_block.
|
||
|
(oprs_not_set_p): Pass basic_blocks instead of ints as parameters.
|
||
|
(handle_rd_kill_set): Change bb parameter from int to basic_block.
|
||
|
(compute_kill_rd): Pass basic_blocks instead of ints as parameters.
|
||
|
(expr_killed_p): Change bb parameter from int to basic_block, pass
|
||
|
basic_blocks instead of ints as parameters.
|
||
|
(compute_ae_kill): Pass basic_blocks instead of ints as parameters.
|
||
|
(expr_reaches_here_p_work, expr_reaches_here_p): Change bb parameter
|
||
|
from int to basic_block, pass basic_blocks instead of ints as parms.
|
||
|
(pre_expr_reaches_here_p_work, pre_expr_reaches_here_p): Change bb
|
||
|
parameter from int to basic_block, pass basic_blocks instead of ints.
|
||
|
(process_insert_insn): Pass basic_blocks instead of ints as parameters.
|
||
|
(insert_insn_end_bb): Change bb parameter from int to basic_block,
|
||
|
pass basic_blocks instead of ints.
|
||
|
(pre_edge_insert, pre_insert_copy_insn, pre_insert_copies): Pass
|
||
|
basic_blocks instead of ints as parameters.
|
||
|
(pre_delete): Pass basic_blocks instead of ints as parameters.
|
||
|
(hoist_expr_reaches_here_p): Change bb parameter from int to
|
||
|
basic_block, pass basic_blocks instead of ints.
|
||
|
(hoist_code): Pass basic_blocks instead of ints as parameters.
|
||
|
(reg_set_info, store_ops_ok, store_killed_after, store_killed_before):
|
||
|
Change bb parameter from int to basic_block.
|
||
|
(build_store_vectors): Pass basic_blocks instead of ints as parameters.
|
||
|
(insert_insn_start_bb): Change bb parameter from int to basic_block,
|
||
|
pass basic_blocks instead of ints.
|
||
|
(insert_store): Pass basic_blocks instead of ints as parameters.
|
||
|
(replace_store_insn, delete_store): Change bb parameter from int to
|
||
|
basic_block, pass basic_blocks instead of ints.
|
||
|
(store_motion): Pass basic_blocks instead of ints as parameters.
|
||
|
|
||
|
2001-04-09 Andrew MacLeod <amacleod@redhat.com>
|
||
|
|
||
|
* basic-block.h (set_new_block_for_insns): New Prototype.
|
||
|
(set_block_num): Delete prototype.
|
||
|
* flow.c (set_block_num): Remove obsolete function.
|
||
|
(set_block_for_new_insns): Set BB for single or multiple insns.
|
||
|
* gcse.c (handle_avail_expr): Use set_block_for_new_insns.
|
||
|
(process_insn_end_bb): Use set_block_for_new_insns or
|
||
|
set_block_for_insn instead of set_block_num.
|
||
|
(pre_insert_copy_insn): Use set_block_for_new_insns.
|
||
|
(update_ld_motion_stores): Use set_block_for_new_insns.
|
||
|
(insert_insn_start_bb): Use set_block_for_new_insns.
|
||
|
(replace_store_insn): Use set_block_for_new_insns.
|
||
|
|
||
|
2001-04-09 Andrew MacLeod <amacleod@redhat.com>
|
||
|
Jeff Law <law@redhat.com>
|
||
|
|
||
|
* alias.c (get_addr): Externalize.
|
||
|
(canon_true_dependence): New function. Behaves like true_dependance
|
||
|
except it already assumes a MEM has been canonicalized.
|
||
|
* flags.h (flag_gcse_lm, flag_gcse_sm): New optimization flags.
|
||
|
* gcse.c (struct ls_expr): Add load/store expressions structure.
|
||
|
(modify_mem_list, canon_modify_mem_list): New variable.
|
||
|
(gcse_main): Initialize & finalize alias analysis. Use enhanced
|
||
|
load motion and store motion if requested.
|
||
|
(alloc_gcse_mem): Allocate space for modify_mem_list array.
|
||
|
(free_gcse_mem): Free the modify_mem_list array.
|
||
|
(oprs_unchanged_p): Use load_killed_in_block_p.
|
||
|
(gcse_mems_conflict_p, gcse_mem_operand): New variables.
|
||
|
(mems_conflict_for_gcse_p): New function. Don't kill loads
|
||
|
with stores to themselves if its in the load/store expression list.
|
||
|
(load_killed_in_block_p): New function.
|
||
|
(canon_list_insert): New Function.
|
||
|
(record_last_mem_set_info): Keep a list of all instructions which
|
||
|
can modify memory for each basic block.
|
||
|
(compute_hash_table, reset_opr_set_tables): Clear modify_mem_list.
|
||
|
(oprs_not_set_p): Use load_killed_in_block_p.
|
||
|
(mark_call, mark_set, mark_clobber): Use record_last_mem_set_info.
|
||
|
(expr_killed_p): Use load_killed_in_block_p.
|
||
|
(compute_transp): Do not pessimize memory references.
|
||
|
(pre_edge_insert): Update stores for a load motion expression.
|
||
|
(one_pre_gcse_pass): Check loads/stores for extra load motion.
|
||
|
(ldst_entry): Find or create a ldst_expr structure.
|
||
|
(free_ldst_entry): Free memory for an individual item.
|
||
|
(free_ldst_mems): Free entire load/store expression list.
|
||
|
(print_ldst_list): Print debug info.
|
||
|
(find_rtx_in_ldst): Try to find an rtx expression in the ldst list.
|
||
|
(enumerate_ldsts): Assign integer values to each entry in list.
|
||
|
(first_ls_expr): First expression in the list.
|
||
|
(next_ls_expr): Next expression in the list.
|
||
|
(simple_mem): Check if expression qualifies for ld/st expression list.
|
||
|
(invalidate_any_buried_refs): Remove from expression list if its
|
||
|
used in some other way we don't understand.
|
||
|
(compute_ld_motion_mems): Find all potential enhanced load motion
|
||
|
expression.
|
||
|
(trim_ld_motion_mems): Remove any expressions which are invalid.
|
||
|
(update_ld_motion_stores): Copy store values to registers for loads
|
||
|
which have been moved.
|
||
|
(regvec, st_antloc, num_store): New global statics.
|
||
|
(reg_set_info): Marks registers as set.
|
||
|
(store_ops_ok): Verfies registers expressions are valid in a block.
|
||
|
(find_moveable_store): Look for moveable stores in a pattern.
|
||
|
(compute_store_table): Find stores in a function worth moving, maybe.
|
||
|
(load_kills_store): Check dependence of a load and store.
|
||
|
(find_loads): Find any loads in a pattern.
|
||
|
(store_killed_in_insn): Check if a store is killed in an insn.
|
||
|
(store_killed_after): Check is store killed after an insn in a block.
|
||
|
(store_killed_before): Check is store killed before an insn in a block.
|
||
|
(build_store_vectors): Generate the antic and avail vectors.
|
||
|
(insert_insn_start_bb): Insert at the start of a BB, update BLOCK_HEAD.
|
||
|
(insert_store): Add a store to an edge.
|
||
|
(replace_store_insn): Replace a store with a SET insn.
|
||
|
(delete_store): Delete a store insn.
|
||
|
(free_store_memory): Free memory.
|
||
|
(store_motion): Perform store motion.
|
||
|
* invoke.texi: Add documentation for -fcse-lm and -fgcse-sm.
|
||
|
* rtl.h (get_addr, canon_true_dependence): Add prototypes.
|
||
|
* toplev.c (flag_gcse_lm, flag_gcse_sm): New Variables.
|
||
|
(f_options): Add gcse-lm and gcse-sm.
|
||
|
|
||
|
Mon Apr 9 16:18:03 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (expand_fp_movcc): Fix condition reversal code.
|
||
|
|
||
|
* i386.c (ix86_register_move_cost): Fix handling of reformating penalty
|
||
|
* i386.h (INTEGER_CLASS_P, MAYBE_INTEGER_CLASS_P): New.
|
||
|
(CLASS_MAX_NREGS): Use it.
|
||
|
|
||
|
* i386.h (HARD_REGNO_NREGS): Handle properly TF and TCmodes on 64bit;
|
||
|
handle properly complex values.
|
||
|
(CLASS_MAX_NREGS): Likewise; update comment.
|
||
|
|
||
|
2001-04-05 Bernd Schmidt <bernds@redhat.com>
|
||
|
|
||
|
* ia64.c (ia64_flag_schedule_insns2): New variable.
|
||
|
(ia64_override_options): Initialize it. Clear
|
||
|
flag_schedule_insns_after_reload.
|
||
|
(ia64_reorg): Only do scheduling if ia64_flag_schedule_insns2.
|
||
|
|
||
|
Mon Apr 9 15:09:13 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (truncdfsf2_*): Add i387->int/sse reg alternatives;
|
||
|
Do not require source to match destination anymore;
|
||
|
Add abort to the nontrivial cases that should be handled by split.
|
||
|
(fix_trunc?fdi): Add SSE case for x86_64.
|
||
|
(floatdi?f): Likewise.
|
||
|
(floatdi?f_sse): New.
|
||
|
(fix_trunc?fdi_sse): New.
|
||
|
|
||
|
2001-04-09 Richard Sandiford <rsandifo@redhat.com>
|
||
|
|
||
|
* dwarfout.c (DEBUG_ARANGES_BEGIN_LABEL): New label.
|
||
|
(DEBUG_ARANGES_END_LABEL): Ditto.
|
||
|
(dwarfout_init): Generate length and version fields at the start
|
||
|
of the .debug_aranges info. Insert DEBUG_ARANGES_BEGIN_LABEL
|
||
|
after the length field.
|
||
|
(dwarfout_finish): Insert DEBUG_ARANGED_END_LABEL at the end of
|
||
|
the .debug_aranges info.
|
||
|
|
||
|
Sun Apr 8 00:43:27 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (call, call_value): Make sure that resulting call_insn
|
||
|
does have proper second operand.
|
||
|
|
||
|
Sun Apr 8 22:50:49 2001 Christopher Faylor <cgf@cygnus.com>
|
||
|
|
||
|
* config/i386/xm-cygwin.h (GET_ENV_PATH_LIST): Eliminate obsolete
|
||
|
function. Remove include of sys/cygwin.h.
|
||
|
|
||
|
Sun Apr 8 22:20:27 2001 Christopher Faylor <cgf@cygnus.com>
|
||
|
|
||
|
* config/i386/cygwin.h (STARTFILE_SPEC): search */lib/w32api by default.
|
||
|
(CPP_SPEC): Always search */include/w32api for header files.
|
||
|
(ASM_OUTPUT_SECTION_NAME): Avoid testing NULL DECL.
|
||
|
(LINK_SPEC): Add "cyg" to the library search prefixes.
|
||
|
|
||
|
2001-04-08 Philip Blundell <philb@gnu.org>
|
||
|
|
||
|
* config/arm/arm.h (ASM_OUTPUT_LABELREF): Use asm_fprintf.
|
||
|
|
||
|
2001-04-08 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpperror.c (print_location): Don't special case <stdin>.
|
||
|
(_cpp_begin_message): Handle WARNING_SYSHDR the same as
|
||
|
WARNING, but we don't check if we're in system headers.
|
||
|
* cpplib.h (enum error_type): WARNING_SYSHDR: New.
|
||
|
* cpplib.c (do_warning): Warn in system headers.
|
||
|
|
||
|
2001-04-07 Mumit Khan <khan@NanoTech.Wisc.EDU>
|
||
|
|
||
|
* mbchar.c: Include config.h first.
|
||
|
|
||
|
2001-04-07 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* config.gcc: Set default for xmake_file at top, not bottom.
|
||
|
Change places that set xmake_file to "none" to set to the
|
||
|
empty string instead, or remove them entirely if there is no
|
||
|
default xmake_file for this cpu_type. Remove references to
|
||
|
deleted files.
|
||
|
|
||
|
* config/x-lynx, config/convex/x-convex, config/elxsi/x-elxsi,
|
||
|
config/i386/x-isc, config/i386/x-isc3, config/i386/x-ncr3000,
|
||
|
config/i386/x-next, config/i386/x-sco, config/i386/x-sysv3,
|
||
|
config/i386/x-vsta, config/i860/x-sysv4, config/m68k/x-amix,
|
||
|
config/m68k/x-apollo68, config/m68k/x-ccur, config/m68k/x-crds,
|
||
|
config/m68k/x-hp2bsd, config/m68k/x-mot3300, config/m68k/x-mot3300-gas,
|
||
|
config/m68k/x-tower, config/m88k/x-sysv4, config/mips/x-dec-osf1,
|
||
|
config/mips/x-sni-svr4, config/mips/x-ultrix, config/romp/x-mach,
|
||
|
config/romp/x-romp, config/rs6000/x-beos, config/rs6000/x-lynx,
|
||
|
config/rs6000/x-mach, config/rs6000/x-sysv4, config/sparc/x-sysv4:
|
||
|
Delete.
|
||
|
|
||
|
* config/a29k/x-unix, config/i386/x-aix, config/i386/x-osf1elf,
|
||
|
config/i386/x-osfrose, config/m68k/x-dpx2, config/mips/x-iris3,
|
||
|
config/mips/x-mips, config/mips/x-osfrose, config/mips/x-sony,
|
||
|
config/mips/x-sysv, config/rs6000/x-aix31:
|
||
|
Just set CLIB to -lld or -lmld, as appropriate.
|
||
|
|
||
|
* config/arm/x-riscix, config/i370/x-oe, config/i386/x-dgux,
|
||
|
config/i386/x-sco4, config/i386/x-sco5, config/m68k/x-hp320,
|
||
|
config/m68k/x-hp320g, config/m68k/x-next, config/m88k/x-dgux,
|
||
|
config/mips/x-iris, config/pa/x-pa:
|
||
|
Just set (some of) FIXPROTO_DEFINES, STMP_FIXPROTO,
|
||
|
OTHER_FIXINCLUDES_DIRS.
|
||
|
|
||
|
* config/i386/x-djgpp: Don't set LN or LN_S.
|
||
|
* config/m88k/x-dolph: Don't define __m88k__.
|
||
|
* config/m88k/x-tekXD88: Don't set AR_FLAGS.
|
||
|
* config/pa/x-pa-mpeix: Just set up quadlib.asm.
|
||
|
* config/i860/fx2800.h: No need to #undef SVR4.
|
||
|
|
||
|
38 x-host fragments remain, 2 x-cpu.
|
||
|
|
||
|
2001-04-07 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
|
||
|
|
||
|
* c4x.h (HARD_REGNO_NREGS): HCmode mode uses 2 regs not 4.
|
||
|
|
||
|
2001-04-06 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpplib.c (cpp_push_buffer): Give stdin buffers the name <stdin>.
|
||
|
|
||
|
2001-04-06 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* configure.in: Add check for lstat.
|
||
|
* configure, config.in: Regenerate.
|
||
|
* cppinit.c (append_include_chain): Make empty path ".".
|
||
|
* cpplib.c (do_line): Don't simplify #line paths.
|
||
|
* cppfiles.c (remove_component_p): New function.
|
||
|
(find_or_create_entry): Acknowledge stat () errors during
|
||
|
path simplification.
|
||
|
(handle_missing_header): Don't simplify paths.
|
||
|
(_cpp_simplify_pathname): Don't simplify VMS paths. Return
|
||
|
the empty path untouched. Don't leave a trailing '/'.
|
||
|
|
||
|
2001-04-06 Benjamin Kosnik <bkoz@redhat.com>
|
||
|
|
||
|
* cppdefault.c (GPLUSPLUS_BACKWARD_INCLUDE_DIR): Add.
|
||
|
* Makefile.in (-DGPLUSPLUS_BACKWARD_INCLUDE_DIR): Add.
|
||
|
|
||
|
2001-04-06 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppfiles.c (open_file): Fail directories silently, but
|
||
|
with an errno of NOENT set.
|
||
|
(read_include_file): Move the common exit code to the sole
|
||
|
caller. Return an int indicating success or failure. Let
|
||
|
open_file handle directories.
|
||
|
(stack_include_file): If read_include_file fails,
|
||
|
push a "null" buffer.
|
||
|
|
||
|
2001-04-05 DJ Delorie <dj@redhat.com>
|
||
|
|
||
|
* function.h (virtuals_instantiated): Declare.
|
||
|
* function.c: (virtuals_instantiated): Make global.
|
||
|
* calls.c (emit_library_call_value_1): Use
|
||
|
virtual_outgoing_args_rtx only if it hasn't been instantiated.
|
||
|
Otherwise, use the stack pointer directly.
|
||
|
|
||
|
Thu Apr 5 19:13:33 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (x86_initialize_trampoline): New global function.
|
||
|
* i386.h (TRAMPOLINE_SIZE): Size is 23 for x86_64.
|
||
|
(INITIALIZE_TRAMPOLINE): Move offline.
|
||
|
* i386-protos.h (x86_initialize_trampoline): Declare.
|
||
|
|
||
|
Thu Apr 5 19:02:15 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (movdi_1_rex64): Allow SSE->SSE reg move.
|
||
|
(lea_0): Rename to lea_1.
|
||
|
(lea_1_zext, lea_1_rex64, lea_2_rex64): New patterns.
|
||
|
(lea_general_?): Allow SImodes on TARGET_64BIT
|
||
|
(lea_general_?_zext): New patterns.
|
||
|
(call_1, call_1_rex64): Fix.
|
||
|
|
||
|
Thu Apr 5 19:00:15 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (ix86_split_long_move): Use PUT_MODE instead of change_address.
|
||
|
|
||
|
Thu Apr 5 18:25:56 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (function_arg): Return constm1_rtx for last argument.
|
||
|
(ix86_expand_prologue): Update gen_call calls.
|
||
|
* i386.h (FUNCTION_BLOCK_PROFILER_EXIT): Likewise.
|
||
|
* i386.md (call_pop): Likewise.
|
||
|
(call): Second operand is VOIDmode.
|
||
|
(call_0): Likewise; Support 64bits.
|
||
|
(call_exp): New expander.
|
||
|
(call_1): Get to the sync.
|
||
|
(call_1_exp): New pattern.
|
||
|
(call_value): Support 64bit.
|
||
|
(call_value_exp): New pattern.
|
||
|
(untyped_call): Update gen_call call.
|
||
|
(call_value_pop): Disable for 64bit.
|
||
|
(call_value_0_rex64): New pattern.
|
||
|
(call_value_1_rex64): Likewise.
|
||
|
|
||
|
2001-04-05 Bo Thorsen <bo@suse.de>
|
||
|
|
||
|
* i386.md: Don't allow "builtin_setjmp_receiver" for TARGET_64BIT.
|
||
|
|
||
|
Thu Apr 5 13:44:17 2001 J"orn Rennecke <amylaar@redhat.com>
|
||
|
|
||
|
* i386.md (*andsi_1+3): If used after reload, make sure the operand
|
||
|
satisfies ANY_QI_REG_P.
|
||
|
|
||
|
2001-04-05 Bernd Schmidt <bernds@redhat.com>
|
||
|
|
||
|
* config/ia64/ia64.c (rtx_needs_barrier): A PARALLEL can contain
|
||
|
ASM_OPERAND.
|
||
|
|
||
|
* sched-deps.c (sched_analyze_insn): Revert more of the March 27
|
||
|
change.
|
||
|
|
||
|
2001-04-04 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* config.gcc: Remove default for xm_file. Clean up local
|
||
|
machine type handling. Remove settings of xm_file to
|
||
|
something that doesn't exist. In the big switch, set xm_file,
|
||
|
don't append to it (the value before the big switch is always
|
||
|
null). Don't force build_xm_file or host_xm_file to have a value.
|
||
|
* configure.in: Remove default for xm_file. Do not special
|
||
|
case $cpu/xm-$cpu.h not existing.
|
||
|
* configure: Regenerate.
|
||
|
|
||
|
2001-04-04 Diego Novillo <dnovillo@redhat.com>
|
||
|
|
||
|
* simplify-rtx.c (simplify_binary_operation): Check for overflow
|
||
|
when folding integer division and modulo operations.
|
||
|
|
||
|
2001-04-04 Andrew MacLeod <amacleod@redhat.com>
|
||
|
|
||
|
* dwarf2out.c (output_cfi): Add 'for_eh' parameter, use PTR_SIZE
|
||
|
instead of DWARF2_ADDR_SIZE for EH addresses.
|
||
|
(output_call_frame_info): Use PTR_SIZE instead of DWARF2_ADDR_SIZE for
|
||
|
EH addresses.
|
||
|
|
||
|
2001-04-04 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/ia64/ia64.h (IA64_UNWIND_INFO): Disable.
|
||
|
* config/ia64/t-glibc (LIB2ADDEH): Disable.
|
||
|
* config/ia64/t-ia64 (LIB2ADDEH): Disable.
|
||
|
|
||
|
2001-04-04 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* configure.in (gcc_cv_as_leb128): Escape "." in regexp.
|
||
|
* configure: Rebuilt.
|
||
|
|
||
|
2001-04-04 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* gcse.c (delete_null_pointer_checks_1): Add delete_list argument,
|
||
|
push insns to delete to it instead of deleting them.
|
||
|
(delete_null_pointer_checks): Delete insns from delete_list after
|
||
|
all delete_null_pointer_checks_1 passes are done.
|
||
|
|
||
|
2001-04-04 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* configure.in (gcc_cv_as_leb128): Tweek minor number extraction.
|
||
|
* configure: Rebuilt.
|
||
|
|
||
|
2001-04-04 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* expr.h: Remove #ifdef FUNCTION_CONVERSION_BUG logic.
|
||
|
* config/romp/xm-romp.h: Delete.
|
||
|
|
||
|
2001-04-04 Bernd Schmidt <bernds@redhat.com>
|
||
|
|
||
|
* sched-deps.c (sched_analyze_insn): Partially revert March 27
|
||
|
change.
|
||
|
|
||
|
2001-04-04 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
|
||
|
|
||
|
* emit-rtl.c (mark_label_nuses) Increment the label uses for
|
||
|
all labels present in rtx.
|
||
|
(try_split) Call new function for all split insns.
|
||
|
|
||
|
2001-04-04 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* recog.c (validate_replace_rtx_1): Instead of aborting just make
|
||
|
sure the change won't be validated.
|
||
|
|
||
|
Wed Apr 4 00:45:38 EDT 2001 John Wehle (john@feith.com)
|
||
|
|
||
|
* rtl.h (set_noop_p): Declare.
|
||
|
* flow.c (set_noop_p): Move from here ...
|
||
|
* rtlanal.c (set_noop_p): ... to here and enhance.
|
||
|
* cse.c (delete_trivially_dead_insns): Use it.
|
||
|
* gcse.c (hash_scan_set): Likewise.
|
||
|
* jump.c (delete_noop_moves): Likewise.
|
||
|
* recog.c (split_all_insns): Likewise.
|
||
|
|
||
|
2001-04-04 Alan Modra <alan@linuxcare.com.au>
|
||
|
|
||
|
* dwarf2out.c (dwarf2out_frame_debug_expr): Support adjusting
|
||
|
stack pointer via a LO_SUM. Ditto for setting a temp register
|
||
|
used to save to the stack. Set cfa_temp when setting fp, and
|
||
|
allow matches to cfa_temp in addition to cfa_store when saving
|
||
|
regs. Handle POST_INC and LO_SUM register stores. Document the
|
||
|
changes and errors in rule 12 doco.
|
||
|
|
||
|
* pa.c (set_reg_plus_d, store_reg, load_reg): Return last insn.
|
||
|
(actual_fsize, local_fsize, save_fregs): Move for store_reg to see.
|
||
|
(load_reg): Move closer to epilogue code.
|
||
|
(DO_FRAME_NOTES): Define to control the following..
|
||
|
(FRP): Define to set RTX_FRAME_RELATED_P on insns.
|
||
|
(hppa_expand_prologue): Use FRP and REG_FRAME_RELATED_EXPR
|
||
|
notes as necessary.
|
||
|
(hppa_expand_epilogue): Likewise.
|
||
|
|
||
|
2001-04-03 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* configure.in (gcc_cv_as_leb128): Reject gas before 2.11.
|
||
|
* configure: Rebuild.
|
||
|
|
||
|
2001-04-03 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* rtl.h (LCT_THROW): New.
|
||
|
* calls.c (emit_library_call_value_1): Handle it.
|
||
|
* except.c (connect_post_landing_pads): Use it.
|
||
|
|
||
|
2001-04-03 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* gansidecl.h: Delete file.
|
||
|
* configure.in: Change all refs to gansidecl.h to use
|
||
|
ansidecl.h. Adjust *_file_list so they know where ansidecl.h
|
||
|
lives.
|
||
|
* configure: Regenerate.
|
||
|
|
||
|
* Makefile.in (intl.o): Don't depend on gansidecl.h.
|
||
|
* defaults.h: s/gansidecl.h/ansidecl.h/ in comment.
|
||
|
* ggc.h, config/fr30/fr30.h, config/mcore/mcore.c:
|
||
|
Don't include gansidecl.h.
|
||
|
* intl.c, main.c, version.c, fixinc/fixlib.h,
|
||
|
fixinc/procopen.c, fixinc/server.c: Include ansidecl.h not
|
||
|
gansidecl.h.
|
||
|
|
||
|
Tue Apr 3 19:41:21 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (ix86_force_to_memory, ix86_free_from_memory):
|
||
|
Update for 64bit.
|
||
|
|
||
|
2001-04-03 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* config/i386/xm-beos.h, config/i386/xm-isc.h,
|
||
|
config/i386/xm-next.h, config/i386/xm-sco.h,
|
||
|
config/i386/xm-sco5.h, config/m68k/xm-plexus.h,
|
||
|
config/m88k/xm-m88k.h: Delete.
|
||
|
|
||
|
* config/i386/xm-djgpp.h: Don't define __MSDOS__.
|
||
|
* config/romp/xm-romp.h: Don't define bcopy.
|
||
|
* config/rs6000/xm-beos.h: Don't define bcopy, HAVE_VPRINTF,
|
||
|
HAVE_PUTENV, HAVE_RENAME, or USE_C_ALLOCA.
|
||
|
|
||
|
* config.gcc: Remove references to deleted files.
|
||
|
|
||
|
14 xm-host.h remain, 1 xm-cpu.h.
|
||
|
|
||
|
2001-04-03 Jakub Jelinek <jakub@redhat.com>
|
||
|
David S. Miller <davem@pierdol.cobaltmicro.com>
|
||
|
Andrew MacLeod <amacleod@redhat.com>
|
||
|
|
||
|
Use byte offsets in SUBREGs instead of words.
|
||
|
|
||
|
* alias.c (nonlocal_mentioned_p): Use subreg_regno function.
|
||
|
* caller-save.c (mark_set_regs): Change callers of subreg_hard_regno
|
||
|
to pass new argument.
|
||
|
(add_stored_regs): Use subreg_regno_offset function.
|
||
|
* calls.c (expand_call): For non-paradoxical SUBREG take endianess
|
||
|
into account.
|
||
|
(precompute_arguments): Use gen_lowpart_SUBREG.
|
||
|
* combine.c (try_combine): Replace explicit XEXP with SUBREG_REG.
|
||
|
(combine_simplify_rtx): Rework to use SUBREG_BYTE.
|
||
|
(simplify_set): Rework to use SUBREG_BYTE.
|
||
|
(expand_field_assignment): Use SUBREG_BYTE.
|
||
|
(make_extraction): Use SUBREG_BYTE.
|
||
|
(if_then_else_cond): Use SUBREG_BYTE.
|
||
|
(apply_distributive_law): Use SUBREG_BYTE and fixup subreg comments.
|
||
|
(gen_lowpart_for_combine): Compute full byte offset.
|
||
|
* cse.c (mention_regs): Use SUBREG_BYTE.
|
||
|
(remove_invalid_subreg_refs): Rework to use SUBREG_BYTE.
|
||
|
(canon_hash): Use SUBREG_BYTE.
|
||
|
(fold_rtx): Pass SUBREG_BYTE div UNITS_PER_WORD to operand_subword.
|
||
|
(gen_lowpart_if_possible): Formatting.
|
||
|
* dbxout.c (dbxout_symbol_location): Compute SUBREG hard regnos
|
||
|
correctly.
|
||
|
* dwarf2out.c (is_pseudo_reg): Fixup explicit XEXP into SUBREG_REG
|
||
|
(mem_loc_descriptor): Fixup explicit XEXP into SUBREG_REG
|
||
|
(loc_descriptor): Fixup explicit XEXP into SUBREG_REG
|
||
|
* dwarfout.c (is_pseudo_reg): Fixup explicit XEXP into SUBREG_REG
|
||
|
(output_mem_loc_descriptor): Fixup explicit XEXP into SUBREG_REG
|
||
|
(output_loc_descriptor): Fixup explicit XEXP into SUBREG_REG
|
||
|
* emit-rtl.c (gen_rtx_SUBREG): New function, used to verify
|
||
|
certain invariants about SUBREGs the compiler creates.
|
||
|
(gen_lowpart_SUBREG): New function.
|
||
|
(subreg_hard_regno): New function to get the final register number.
|
||
|
(gen_lowpart_common): Use SUBREG_BYTE.
|
||
|
(gen_imagpart): Spacing nits.
|
||
|
(subreg_realpart_p): Use SUBREG_BYTE.
|
||
|
(gen_highpart): Use SUBREG_BYTE.
|
||
|
(subreg_lowpart_p): Always compute endian corrected goal offset,
|
||
|
even at the byte level, then compare against that.
|
||
|
(constant_subword): New function, pulled out all constant cases
|
||
|
from operand_subword and changed second argument name to offset.
|
||
|
(operand_subword): Detect non REG/SUBREG/CONCAT/MEM cases early
|
||
|
and call constant_subword to do the work. Return const0_rtx if
|
||
|
looking for a word outside of OP.
|
||
|
(operand_subword_force): Change second arg name to offset.
|
||
|
* expmed.c (store_bit_field): Use SUBREG_BYTE.
|
||
|
(store_split_bit_field): Use SUBREG_BYTE.
|
||
|
(extract_bit_field): Use SUBREG_BYTE.
|
||
|
(extract_split_bit_field): Use SUBREG_BYTE.
|
||
|
(expand_shift): Use SUBREG_BYTE.
|
||
|
* expr.c (store_expr, expand_expr): Use gen_lowpart_SUBREG.
|
||
|
* final.c (alter_subreg) Use subreg_hard_regno and SUBREG_BYTE.
|
||
|
* flow.c (set_noop_p): Use SUBREG_BYTE.
|
||
|
(mark_set_1): Remove ALTER_HARD_SUBREG. Use subreg_regno_offset instead.
|
||
|
* function.c (fixup_var_refs_1): Fixup explicit XEXP into a SUBREG_REG.
|
||
|
(fixup_memory_subreg): Use SUBREG_BYTE and remove byte endian
|
||
|
correction code.
|
||
|
(optimize_bit_field): Use SUBREG_BYTE.
|
||
|
(purge_addressof_1): Use SUBREG_BYTE.
|
||
|
(purge_single_hard_subreg_set): Use subreg_regno_offset function.
|
||
|
(assign_params): Mark arguments SUBREG_PROMOTED_VAR_P if they are
|
||
|
actually promoted by the caller and PROMOTE_FOR_CALLS_ONLY is true.
|
||
|
* gengenrtl.c (special_rtx): Add SUBREG.
|
||
|
* global.c (mark_reg_store): Use SUBREG_BYTE.
|
||
|
(set_preference): Rework to use subreg_regno_offset and SUBREG_BYTE.
|
||
|
* ifcvt (noce_emit_move_insn): Use SUBREG_BYTE.
|
||
|
* integrate.c (copy_rtx_and_substitute): Use SUBREG_BYTE and make sure
|
||
|
final byte offset is congruent to subreg's mode size.
|
||
|
(subst_constants): Use SUBREG_BYTE.
|
||
|
(mark_stores): Use subreg_regno_offset function.
|
||
|
* jump.c (rtx_renumbered_equal_p, true_regnum): Use subreg_regno_offset
|
||
|
function and SUBREG_BYTE.
|
||
|
* local-alloc.c (combine_regs): Use subreg_regno_offset function.
|
||
|
(reg_is_born): Use subreg_hard_regno.
|
||
|
* recog.c (valid_replace_rtx_1): Use SUBREG_BYTE and remove byte
|
||
|
endian correction code. Don't combine subregs unless resulting
|
||
|
offset aligns with type. Fix subreg constant extraction for DImode.
|
||
|
Simplify SUBREG of VOIDmode CONST_DOUBLE.
|
||
|
(general_operand): Remove dead mode_altering_drug code.
|
||
|
(indirect_operand): Use SUBREG_BYTE.
|
||
|
(constrain_operands): Use subreg_regno_offset function.
|
||
|
* reg-stack.c (get_true_reg): Use subreg_regno_offset function.
|
||
|
* regmove.c (regmove_optimize): Use SUBREG_BYTE.
|
||
|
(optimize_reg_copy_3): Use gen_lowpart_SUBREG.
|
||
|
* regs.h (REG_SIZE): Allow target to override.
|
||
|
(REGMODE_NATURAL_SIZE): New macro which target can override.
|
||
|
* reload.c (reload_inner_reg_of_subreg): subreg_regno should be used
|
||
|
on the entire subreg rtx.
|
||
|
(push_reload): Use SUBREG_BYTE in comments and code.
|
||
|
(find_dummy_reload): Use subreg_regno_offset. Only adjust offsets
|
||
|
for hard registers inside subregs.
|
||
|
(operands_match_p): Use subreg_regno_offset.
|
||
|
(find_reloads): Use SUBREG_BYTE and only advance offset for subregs
|
||
|
containing hard regs.
|
||
|
(find_reload_toplev): Use SUBREG_BYTE. Remove byte endian
|
||
|
corrections when fixing up MEM subregs.
|
||
|
(find_reloads_address_1): Use SUBREG_BYTE, subreg_regno, and
|
||
|
subreg_regno_offset where appropriate.
|
||
|
(find_reloads_subreg_address): Use SUBREG_BYTE. Remove
|
||
|
byte endian corrections when fixing up MEM subregs.
|
||
|
(subst_reloads): When combining two subregs, make sure final
|
||
|
offset is congruent to subreg's mode size.
|
||
|
(find_replacement): Use SUBREG_BYTE and subreg_regno_offset.
|
||
|
(refers_to_regno_for_reload_p): Use subreg_regno.
|
||
|
(reg_overlap_mentioned_for_reload_p): Use subreg_regno_offset.
|
||
|
* reload1.c (eliminate_regs) Use SUBREG_BYTE. Remove byte endian
|
||
|
correction code for memory subreg fixups.
|
||
|
(forget_old_reload_1): Use subreg_regno_offset.
|
||
|
(choose_reload_regs): Use subreg_regno.
|
||
|
(emit_input_reload_insns): Use SUBREG_BYTE.
|
||
|
(reload_combine_note_store): Use subreg_regno_offset.
|
||
|
(move2add_note_store): Use subreg_regno_offset.
|
||
|
* resource.c (update_live_status, mark_referenced_resources): Use
|
||
|
subreg_regno function.
|
||
|
(mark_set_resources): Use subreg_regno function.
|
||
|
* rtl.h (SUBREG_WORD): Rename to SUBREG_BYTE.
|
||
|
(subreg_regno_offset, subreg_regno): Define prototypes.
|
||
|
(subreg_hard_regno, constant_subword, gen_rtx_SUBREG): Newi functions.
|
||
|
(gen_lowpart_SUBREG): Add prototype.
|
||
|
* rtl.texi (subreg): Update to reflect new byte offset representation.
|
||
|
Add mentioning of the effect that BYTES_BIG_ENDIAN has on subregs now.
|
||
|
* rtlanal.c (refers_to_regno_p): Use subreg_regno.
|
||
|
(reg_overlap_mentioned_p): Use subreg_regno.
|
||
|
(replace_regs); Make sure final offset of combined subreg is
|
||
|
congruent to size of subreg's mode.
|
||
|
(subreg_regno_offset): New function.
|
||
|
(subreg_regno): New function.
|
||
|
* sched-vis.c (print_value): Change SUBREG_WORD to SUBREG_BYTE.
|
||
|
* sdbout.c (sdbout_symbol): Compute offset using alter_subreg.
|
||
|
* stmt.c (expand_anon_union_decl): Use gen_lowpart_SUBREG.
|
||
|
* tm.texi (ALTER_HARD_SUBREG): Remove, it is now dead.
|
||
|
(SUBREG_REGNO_OFFSET): Describe SUBREG_REGNO_OFFSET overrides.
|
||
|
* config/a29k/a29k.c (gpc_reg_operand): Use subreg_regno.
|
||
|
(a29k_get_reloaded_address): Use SUBREG_BYTE.
|
||
|
(print_operand): Use SUBREG_BYTE.
|
||
|
* config/alpha/alpha.c (print_operand_address): Use SUBREG_BYTE.
|
||
|
* config/arm/arm.c (arm_reload_in_hi): Use SUBREG_BYTE.
|
||
|
(arm_reload_out_hi): Use SUBREG_BYTE.
|
||
|
* config/d30v/d30v.c (d30v_split_double): Use subreg_regno_offset
|
||
|
instead of SUBREG_WORD.
|
||
|
(d30v_print_operand_memory_reference): Use subreg_regno_offset.
|
||
|
* config/dsp16xx/dsp16xx.md (extendqihi2, zero_extendqihi2): Fix
|
||
|
SUBREG creation to use byte offset.
|
||
|
* config/h8300/h8300.md (Unnamed HImode zero extraction and 16bit
|
||
|
inverted load insns): Fix explicit rtl subregs to use byte
|
||
|
offsets.
|
||
|
* config/i370/i370.md (cmpstrsi, movstrsi, mulsi3, divsi3,
|
||
|
udivsi3, umodsi3): Generate SUBREGs with byte offsets.
|
||
|
* config/i860/i860.c (single_insn_src_p): Use SUBREG_BYTE.
|
||
|
* config/i860/i860.md (mulsi3_big): Fixup explicit SUBREGs in rtl
|
||
|
to use byte offsets.
|
||
|
(unnamed fmlow.dd insn): Fixup SUBREGS to use byte offsets.
|
||
|
* config/i960/i960.md (extendhisi2): Generate SUBREGs with byte
|
||
|
offsets, also make sure it is congruent to SUBREG's mode size.
|
||
|
(extendqisi2, extendqihi2, zero_extendhisi2, zero_extendqisi2,
|
||
|
unnamed ldob insn): Generate SUBREGs with byte offset.
|
||
|
(zero_extendqihi2): SUBREG's are byte offsets.
|
||
|
* config/m68hc11/m68hc11.c (m68hc11_gen_lowpart): Use SUBREG_BYTE.
|
||
|
(m68hc11_gen_highpart): Use SUBREG_BYTE.
|
||
|
* config/m68k/m68k.md (zero_extendhisi2, zero_extendqihi2,
|
||
|
zero-extendqisi2): Generate SUBREGs with byte offset.
|
||
|
(umulsidi3, mulsidi3, subreghi1ashrdi_const32,
|
||
|
subregsi1ashrdi_const32, subreg1lshrdi_const32): Fixup explicit
|
||
|
subregs in rtl to use byte offsets.
|
||
|
* config/m88k/m88k.md (extendsidi2): fixup subregs to use byte offset.
|
||
|
* config/mips/mips.c (mips_move_1word): Use subreg_regno_offset.
|
||
|
(mips_move_2words): Use subreg_regno_offset.
|
||
|
(mips_secondary_reload_class): Use subreg_regno_offset.
|
||
|
* config/mips/mips.md (DImode plus, minus, move, and logical op
|
||
|
splits): Fixup explicit subregs in rtl to use byte offsets.
|
||
|
* config/mn10200/mn10200.c (print_operand): Use subreg_regno function.
|
||
|
* config/mn10300/mn10300.c (print_operand): Use subreg_regno function.
|
||
|
* config/ns32k/ns32k.md (udivmoddisi4): Fix explicit subregs in
|
||
|
rtl to use byte offsets.
|
||
|
* config/pa/pa.c (emit_move_sequence): Use SUBREG_BYTE.
|
||
|
* config/pa/pa.md (floatunssisf2, floatunssidf2, mulsi3): fix explicit
|
||
|
subregs to use byte offsets.
|
||
|
* config/pdp11/pdp11.md (zero_extendhisi2, modhi3, modhi3+1):
|
||
|
Fixup explicit subregs in rtl to use byte offsets.
|
||
|
* config/romp/romp.c (memory_offset_in_range_p): Use SUBREG_BYTE
|
||
|
and remove byte endian correction code.
|
||
|
* config/sh/sh.c (output_movedouble): Use subreg_regno.
|
||
|
(gen_ashift_hi): Use SUBREG_BYTE.
|
||
|
(regs_used): Use subreg_regno_offset.
|
||
|
(machine_dependent_reorg): Use subreg_regno_offset.
|
||
|
* config/sh/sh.h (INDEX_REGISTER_RTX_P): Use SUBREG_BYTE.
|
||
|
* config/sh/sh.md (DImode and DFmode move splits): Use subreg_regno.
|
||
|
(movdf_i4): Subregs are byte offsets now.
|
||
|
* config/sparc/sparc.c (ultra_find_type): Use SUBREG_BYTE.
|
||
|
* config/sparc/sparc.h (ALTER_HARD_SUBREG): Removed.
|
||
|
(REGMODE_NATURAL_SIZE): Override.
|
||
|
(REG_SIZE): For SUBREG check float mode on SUBREG_REG's mode.
|
||
|
* config/sparc/sparc.md (TFmode move splits): Generate SUBREGs
|
||
|
with byte offsets.
|
||
|
(zero_extendhisi2, zero_extendqidi2_insn, extendhisi2,
|
||
|
extendqihi2, sign_extendqihi2_insn, sign_extendqisi2_insn,
|
||
|
extendqidi2): Generate SUBREGs with byte offsets, also make sure
|
||
|
it is congruent to SUBREG's mode size.
|
||
|
(smulsi3_highpart_v8plus): Fix explicit subregs in rtl to use byte
|
||
|
offsets.
|
||
|
(cmp_siqi_trunc, cmp_siqi_trunc_set, cmp_diqi_trunc,
|
||
|
cmp_diqi_trunc_set, lshrdi3_v8plus+1, lshrdi3_v8plus+2,
|
||
|
lshrdi3_v8plus+3, lshrdi3_v8plus+4): Use proper
|
||
|
SUBREG_BYTE offset for non-paradoxical subregs in patterns.
|
||
|
* config/v850/v850.c (print_operand, output_move_double): Use
|
||
|
subreg_regno function.
|
||
|
|
||
|
2001-04-03 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* configure.in (target_subdir): Use target_alias, not target.
|
||
|
* configure: Rebuilt.
|
||
|
|
||
|
* config/sh/crtn.asm (init, fini): Restore r15 from r14, not the
|
||
|
other way round.
|
||
|
* config/sh/crti.asm: Fix typos in comments.
|
||
|
|
||
|
2001-04-03 Alan Modra <alan@linuxcare.com.au>
|
||
|
|
||
|
* pa.h: Revise comments for TARGET_NO_SPACE_REGS and
|
||
|
TARGET_FAST_INDIRECT_CALLS.
|
||
|
* pa.c (override_options): TARGET_NO_SPACE_REGS is now OK with
|
||
|
-fPIC. Don't warn.
|
||
|
(return_addr_rtx): Short circuit export stub matching when
|
||
|
TARGET_NO_SPACE_REGS.
|
||
|
(output_millicode_call): For out of range calls, make -fPIC
|
||
|
take precedence, then TARGET_PORTABLE_RUNTIME, then ble. Don't
|
||
|
return before delay slot checks when TARGET_PORTABLE_RUNTIME.
|
||
|
* pa.md: Modify length attr calculation of all millicode insns to
|
||
|
match above.
|
||
|
|
||
|
2001-04-02 Geoffrey Keating <geoffk@redhat.com>
|
||
|
|
||
|
* configure.in (gcc_cv_as_leb128): Correct name of cache variable.
|
||
|
Require at least 2.11 in the version test. Specifically check
|
||
|
for and reject GAS version 2.10.90.
|
||
|
* configure: regenerate.
|
||
|
|
||
|
2001-04-03 Alan Modra <alan@linuxcare.com.au>
|
||
|
|
||
|
* pa.c (override_options): Remove PIC profiling warning.
|
||
|
(hp_profile_labelno): Delete.
|
||
|
(hp_profile_label_rtx): Delete.
|
||
|
(hp_profile_label_name): Delete.
|
||
|
(pa_add_gc_roots): Remove reference to hp_profile_label_rtx.
|
||
|
(output_function_prologue): Remove profiling code and all tests on
|
||
|
profile_flag. Move store of PIC_OFFSET_TABLE_REGNUM now that
|
||
|
merge_sp_adjust_with_store can work for PIC and profiling.
|
||
|
(hppa_expand_epilogue): Remove profile_flag test.
|
||
|
(hppa_can_use_return_insn_p): Likewise.
|
||
|
(hppa_init_pic_save): Emit before tail_recursion_reentry, and
|
||
|
cater for PROFILE_HOOK.
|
||
|
(hppa_profile_hook): New function.
|
||
|
* pa.h (FUNCTION_PROFILER): Now does nothing.
|
||
|
(PROFILE_HOOK): Define.
|
||
|
(hppa_profile_hook): Declare.
|
||
|
(PROFILE_BEFORE_PROLOGUE): Delete.
|
||
|
(ASM_OUTPUT_REG_PUSH): Delete.
|
||
|
(ASM_OUTPUT_REG_POP): Delete.
|
||
|
* pa.md (call_profiler): Turn it into a call insn, and don't `use'
|
||
|
r24. Accept function name operand, and use this and a locally
|
||
|
generated label to calculate pc-rel offset to func start.
|
||
|
|
||
|
2001-04-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* $(HOST_PREFIX_1)errors.o, $(HOST_PREFIX_1)ggc-none.o,
|
||
|
ggc-common.o, ggc-simple.o, ggc-page.o, ggc-none.o: Depend on
|
||
|
$(SYSTEM_H).
|
||
|
|
||
|
2001-04-03 Alan Modra <alan@linuxcare.com.au>
|
||
|
|
||
|
* dwarf2out.c (dwarf2out_frame_debug_expr): Move errant HIGH and
|
||
|
LO_SUM cases to where they belong.
|
||
|
|
||
|
2001-04-02 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* except.h (lang_eh_type_covers): Mark extern.
|
||
|
(lang_eh_runtime_type): Likewise.
|
||
|
|
||
|
2001-04-02 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* genattr.c, gencheck.c, gencodes.c, genconfig.c, genflags.c,
|
||
|
gengenrtl.c: Wrap generated header in multiple-include guard.
|
||
|
Improve error checking.
|
||
|
|
||
|
2001-04-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* configure.in: Don't check for putenv.
|
||
|
* configure: Regenerate.
|
||
|
* gcc.c (putenv): Don't define.
|
||
|
* vax/xm-vms.h: Handle putenv.
|
||
|
|
||
|
2001-04-02 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* ifcvt.c (noce_emit_move_insn): New.
|
||
|
(noce_try_store_flag, noce_try_store_flag_constants,
|
||
|
noce_try_store_flag_inc, noce_try_store_flag_mask,
|
||
|
noce_try_cmove, noce_try_cmove_arith, noce_try_minmax,
|
||
|
noce_try_abs): Use it.
|
||
|
(noce_process_if_block): Likewise.
|
||
|
For STRICT_LOW_PART, take mode from its SUBREG.
|
||
|
|
||
|
2001-04-02 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* fold-const.c (fold): Before optimizing unsigned comparison with
|
||
|
0x7fffffffU, make sure arg0 is integral type.
|
||
|
|
||
|
2001-04-02 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* c-tree.texi: Document representation of wide strings.
|
||
|
|
||
|
2001-04-01 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* except.h (expand_builtin_dwarf_fp_regnum): Declare.
|
||
|
|
||
|
Sun Apr 1 11:49:05 CEST 2001 Jan Hubicka <jH@suse.cz>
|
||
|
|
||
|
* i386.md: remove obsoleted comments.
|
||
|
(adddi_?): Rename to adddi_?_rex64; disable for 32bit.
|
||
|
(x86_movsicc_0_m1_rex64): Rename to x86_movdicc_0_m1_rex64;
|
||
|
fix output template.
|
||
|
|
||
|
2001-03-31 Marek Michalkiewicz <marekm@linux.org.pl>
|
||
|
|
||
|
* config/avr/libgcc.S (__mulhi3): Optimize previous change.
|
||
|
|
||
|
2001-03-30 Bernd Schmidt <bernds@redhat.com>
|
||
|
|
||
|
* loop.c (load_mems): When generating a load from a pseudo, update
|
||
|
REGNO_LAST_UID.
|
||
|
|
||
|
Fri Mar 30 17:36:43 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (ix86_split_long_move): Use change address to compensate
|
||
|
stack pointer change in push instruction.
|
||
|
|
||
|
Fri Mar 30 00:31:00 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (sse_movdfcc_eq): Fix constraint (sse_mov?fcc splitter): Use operands_match_p
|
||
|
instead of rtx_equal_p; fix the output template.
|
||
|
|
||
|
Fri Mar 30 00:21:41 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (ix86_expand_setcc): Support 64bit.
|
||
|
(ix86_expand_int_movcc): Likewise.
|
||
|
* i386.md (movdicc_rex64, x86_movsicc_0_m1_rex64, movdicc_c_rex64):
|
||
|
New patterns.
|
||
|
|
||
|
* i386.md (allocate_stack_worker): Turn to expander.
|
||
|
(allocate_stack_worker_1, allocate_stack_worker_rex64): New insns.
|
||
|
|
||
|
* i386.c (print_reg): Do not print x86_64 style regs on IA-32
|
||
|
|
||
|
2001-03-29 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* libgcc2.c [L__main]: Include unwind-dw2-fde.h instead of frame.h.
|
||
|
|
||
|
2001-03-28 Matthew Hiller <hiller@redhat.com>
|
||
|
|
||
|
* config/mn10300/mn10300.md (cmpsi): Fix first alternative's
|
||
|
output template.
|
||
|
|
||
|
* MAINTAINERS: Added self.
|
||
|
|
||
|
2001-03-28 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* Makefile.in (cs-tconfig.h): Depend on CONFIG_H, not GCONFIG_H.
|
||
|
Use ALL_CFLAGS not HOST_CFLAGS for sjlj detection.
|
||
|
|
||
|
2001-03-28 Jim Wilson <wilson@redhat.com>
|
||
|
|
||
|
* config/ia64/ia64.md (movtf): Change DImode to TFmode in calls to
|
||
|
operand_subword.
|
||
|
|
||
|
2001-03-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* toplev.h (fatal_error): Add ATTRIBUTE_NORETURN.
|
||
|
|
||
|
* tradcif.y (yyerror): Likewise. Add format specifier in call to
|
||
|
`error'.
|
||
|
|
||
|
* tradcpp.c (macroexpand): Likewise for call to `error_with_line'.
|
||
|
|
||
|
2001-03-28 DJ Delorie <dj@redhat.com>
|
||
|
|
||
|
* Makefile.in (stage1_build): Revert CFLAGS patch.
|
||
|
|
||
|
2001-03-28 Marek Michalkiewicz <marekm@linux.org.pl>
|
||
|
|
||
|
* config/avr/libgcc.S (__mulhi3): Correct tests to exit the loop
|
||
|
when multiplier or multiplicand is zero.
|
||
|
|
||
|
2001-03-28 Bernd Schmidt <bernds@redhat.com>
|
||
|
|
||
|
* cselib.c (hash_rtx): Don't do tail recursion elimination by hand.
|
||
|
|
||
|
* config/ia64/ia64.c (update_set_flags): New function, broken out of
|
||
|
rtx_needs_barrier.
|
||
|
(set_src_needs_barrier): Likewise.
|
||
|
(rtx_needs_barrier): For SET case, use these two functions. Rework
|
||
|
PARALLEL case to handle all inputs before all outputs.
|
||
|
(emit_insn_group_barriers): Call init_insn_group_barriers only if we
|
||
|
saw a label and no stop bit since then.
|
||
|
(maybe_rotate, process_epilogue): Add prototypes.
|
||
|
|
||
|
2001-03-28 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/rs6000/rs6000.h (EPILOGUE_USES): Use TARGET_AIX,
|
||
|
not TARGET_TOC for special toc restore handling.
|
||
|
* config/rs6000/rs6000.md (eh_return): Likewise.
|
||
|
|
||
|
2001-03-28 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/sparc/sparc.c (eligible_for_epilogue_delay): False if
|
||
|
current_function_calls_eh_return.
|
||
|
(output_function_epilogue): Handle eh_return.
|
||
|
* config/sparc/sparc.h (DOESNT_NEED_UNWINDER): Remove.
|
||
|
(EH_RETURN_DATA_REGNO): New.
|
||
|
(EH_RETURN_STACKADJ_RTX): New.
|
||
|
(EH_RETURN_HANDLER_RTX): New.
|
||
|
* config/sparc/sparc.md (call/short branch peepholes): Check
|
||
|
can_throw_internal instead of in_same_eh_region.
|
||
|
|
||
|
* config/rs6000/rs6000.c (rs6000_stack_info): Allocate space
|
||
|
for eh_return data registers.
|
||
|
(rs6000_emit_prologue): Save eh_return data registers.
|
||
|
(rs6000_emit_epilogue): Force inline restores if eh_return.
|
||
|
Restore eh_return data registers. Mind EH_RETURN_STACKADJ_RTX.
|
||
|
* config/rs6000/rs6000.h (rs6000_stack_t): Add ehrd_offset.
|
||
|
(EH_RETURN_DATA_REGNO, EH_RETURN_STACKADJ_RTX): New.
|
||
|
(EPILOGUE_USES): True for TOC_REGISTER if calls_eh_return and
|
||
|
the target uses one.
|
||
|
* config/rs6000/rs6000.md (eh_epilogue, eh_reg_restore): Remove.
|
||
|
(return_eh_si, return_eh_di): Remove.
|
||
|
(eh_return): New, from corpse of eh_epilogue.
|
||
|
(eh_set_lr_si, eh_set_lr_di): New.
|
||
|
|
||
|
* config/i386/i386.c (general_no_elim_operand): Disallow virtual regs.
|
||
|
(ix86_save_reg): If maybe_eh_return, true for EH_RETURN_DATA_REGNOs.
|
||
|
True for pic register if current_function_calls_eh_return.
|
||
|
(ix86_expand_epilogue): Change "emit_return" argument into "style".
|
||
|
Handle eh_return requirements.
|
||
|
* config/i386/i386.h (EH_RETURN_DATA_REGNO): New.
|
||
|
(EH_RETURN_STACKADJ_RTX): New.
|
||
|
* config/i386/i386.md (exception_receiver): Remove.
|
||
|
(eh_return, eh_return_1): New.
|
||
|
* config/i386/linux.h (MD_FALLBACK_FRAME_STATE_FOR): New.
|
||
|
|
||
|
* config/alpha/alpha.c (alpha_sa_mask): Add EH_RETURN_DATA_REGNOs.
|
||
|
(alpha_mark_machine_status): No eh_epilogue_sp_ofs ...
|
||
|
(alpha_expand_epilogue): ... use EH_RETURN_STACKADJ_RTX instead.
|
||
|
* config/alpha/alpha.h (machine_function): Remove eh_epilogue_sp_ofs.
|
||
|
(EH_RETURN_DATA_REGNO): New.
|
||
|
(EH_RETURN_STACKADJ_RTX, EH_RETURN_HANDLER_RTX): New.
|
||
|
* config/alpha/alpha.md (eh_epilogue): Remove.
|
||
|
(exception_receiver): Use $26 for ldgp input.
|
||
|
* config/alpha/linux.h (MD_FALLBACK_FRAME_STATE_FOR): New.
|
||
|
|
||
|
2001-03-28 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* except.c: Rewrite entirely for IA-64 ABI exception handling.
|
||
|
* except.h: Likewise.
|
||
|
|
||
|
* Makefile.in (LIB2ADDEH): Mention unwind-dw2*.c
|
||
|
(LIB2ADDEHDEP): New.
|
||
|
(LIB2FUNCS_EH): Remove.
|
||
|
(LIB2ADD): Remove LIB2ADDEH.
|
||
|
(libgcc.mk): Pass LIB2ADDEHDEP, don't pass LIB2FUNCS_EH.
|
||
|
(LIBGCC_DEPS): Use LIB2ADDEHDEP.
|
||
|
(crt{begin,end}[S].o): Likewise.
|
||
|
(except.o): Update includes.
|
||
|
* mklibgcc.in: Remove LIB2FUNCS_EH, add LIB2ADDEH, LIB2ADDEHDEP.
|
||
|
(libgcc2_c_dep): Use LIB2ADDEHDEP.
|
||
|
|
||
|
* basic-block.h (struct basic_block_def): Remove eh_beg, eh_end.
|
||
|
* bb-reorder.c (reorder_basic_blocks): Don't disable for EH.
|
||
|
* builtins.def (BUILT_IN_EH_RETURN_DATA_REGNO): New.
|
||
|
* builtins.c (expand_builtin): Implement it.
|
||
|
[BUILT_IN_EH_RETURN]: Update for nr arguments change.
|
||
|
* c-common.c (c_common_nodes_and_builtins): Declare it.
|
||
|
* c-decl.c (init_decl_processing): Update __builtin_eh_return.
|
||
|
* calls.c (libfunc_nothrow): Remove.
|
||
|
(emit_library_call_value_1): Don't call it.
|
||
|
* crtstuff.c: Include unwind-dw2-fde.h instead of frame.h.
|
||
|
* dwarf2.h (dwarf_call_frame_info): Add dwarf2.1 elements.
|
||
|
(DW_EH_PE_*): New defines for pointer encoding in .eh_frame.
|
||
|
* dwarf2out.c (struct dw_fde_struct): Add uses_eh_lsda, funcdef_number.
|
||
|
(current_funcdef_number): Globalize.
|
||
|
(output_call_frame_info): Emit frame data if an lsda is needed.
|
||
|
Generate augmentation for personality routine. Don't play with
|
||
|
difference symbols.
|
||
|
(dwarf2out_begin_prologue): Record funcdef_number.
|
||
|
* dwarf2out.h (current_funcdef_number): Declare.
|
||
|
* expr.c (expand_expr): Update for except.h name changes.
|
||
|
Remove POPDCC_EXPR, POPDHC_EXPR. Add EXC_PTR_EXPR.
|
||
|
* expr.h (LTI_throw, LTI_rethrow): Remove.
|
||
|
(LTI_sjthrow, LTI_sjpopnthrow, LTI_terminate): Remove.
|
||
|
(LTI_eh_rtime_match): Remove.
|
||
|
(LTI_unwind_resume, LTI_eh_personality): Add.
|
||
|
(LTI_unwind_sjlj_register, LTI_unwind_sjlj_unregister): Add.
|
||
|
* final.c (final): Don't call check_exception_handler_labels,
|
||
|
init_insn_eh_region, or free_insn_eh_region.
|
||
|
(final_scan_insn): Always emit debug labels for
|
||
|
NOTE_INSN_EH_REGION notes.
|
||
|
* flags.h (flag_new_exceptions): Remove.
|
||
|
* flow.c (entry_exit_blocks): Remove eh_beg, eh_end.
|
||
|
(record_active_eh_regions): Remove.
|
||
|
(count_basic_blocks): Check all instructions for REG_EH_REGION.
|
||
|
Use can_throw_internal.
|
||
|
(find_basic_blocks_1): Likewise.
|
||
|
(move_stray_eh_region_notes): Remove.
|
||
|
(find_label_refs): No eh_return_stub_label.
|
||
|
(make_edges): Likewise. No init/free_eh_nesting_info. Handle RESX.
|
||
|
(make_eh_edge): No eh_nest_info. Update for reachable_handlers
|
||
|
changes.
|
||
|
(delete_unreachable_blocks): Don't track deleted handlers.
|
||
|
(flow_delete_block): Use maybe_remove_eh_handler.
|
||
|
(delete_eh_regions): Remove.
|
||
|
(merge_blocks): Don't check for eh region match.
|
||
|
(mark_regs_live_at_end): Handle EH_RETURN_DATA_REGNO,
|
||
|
EH_RETURN_STACKADJ_RTX, EH_RETURN_HANDLER_RTX.
|
||
|
(init_propagate_block_info): Disable dead frame store optimization
|
||
|
when current_function_calls_eh_return.
|
||
|
(dump_bb): Don't print eh_beg, eh_end.
|
||
|
* function.c (fixup_var_refs): No catch_clauses.
|
||
|
(expand_function_end): Likewise. Call expand_eh_return before
|
||
|
the return register use. Call sjlj_emit_function_exit_after.
|
||
|
(expand_function_start): Force pseudo DECL_RESULT if sjlj exceptions.
|
||
|
* function.h (struct function): Add calls_eh_return, uses_eh_lsda.
|
||
|
* ifcvt.c (dead_or_predicable): Remove eh region check.
|
||
|
* integrate.c (function_cannot_inline_p): Disallow __builtin_eh_return.
|
||
|
Don't check for EH vs parameters.
|
||
|
(expand_inline_function_eh_labelmap, eif_eh_map): Remove.
|
||
|
(expand_inline_function): Call duplicate_eh_regions.
|
||
|
(copy_insn_list): Don't handle NOTE_INSN_EH_REGION_BEG/END.
|
||
|
(copy_insn_notes): Remap REG_EH_REGION notes.
|
||
|
(copy_rtx_and_substitute): Remove SYMBOL_REF_NEED_ADJUST check.
|
||
|
* integrate.h (struct inline_remap): Add local_return_label.
|
||
|
* jump.c (jump_optimize_1): Don't init/free_insn_eh_region, nor
|
||
|
check_exception_handler_labels, nor exception_optimize.
|
||
|
(find_cross_jump): No EH region check.
|
||
|
* optabs.c (init_optabs): Update for changed eh libfuncs.
|
||
|
* rtl.def (RESX): New.
|
||
|
* rtl.h (SYMBOL_REF_NEED_ADJUST): Remove.
|
||
|
* stmt.c (expand_decl_cleanup): Simplify using_eh_for_cleanups_p
|
||
|
checks. Update for except.h name changes.
|
||
|
(expand_cleanups): Likewise.
|
||
|
(expand_dcc_cleanup, expand_dhc_cleanup): Remove.
|
||
|
* toplev.c (dump_file_index, dump_file): Add .02.eh dump.
|
||
|
(compile_file): Call init_eh before init_optabs. Don't
|
||
|
output_exception_table here.
|
||
|
(rest_of_compilation): Call convert_from_eh_region_ranges,
|
||
|
convert_to_eh_region_ranges, output_function_exception_table.
|
||
|
Don't emit_eh_context.
|
||
|
* tree.def (POPDHC_EXPR, POPDCC_EXPR): Remove.
|
||
|
(EXC_PTR_EXPR): New.
|
||
|
|
||
|
* md.texi (eh_epilogue): Remove.
|
||
|
(eh_return): Document.
|
||
|
* tm.texi (EH_RETURN_DATA_REGNO): Document.
|
||
|
(EH_RETURN_STACKADJ_RTX, EH_RETURN_HANDLER_RTX): Document.
|
||
|
|
||
|
* eh-common.h: Remove file.
|
||
|
* frame-dwarf2.c, frame.c, frame.h: Remove files.
|
||
|
* libgcc2.c (L_eh): Remove.
|
||
|
|
||
|
* unwind-dw2-fde.c: New file, largely copied from frame.c.
|
||
|
* unwind-dw2-fde.h: New file.
|
||
|
* unwind-dw2.c: New file, largely cribbed from frame-dwarf2.c.
|
||
|
* unwind-sjlj.c, unwind.h, unwind.inc: New files.
|
||
|
* libgcc-std.ver: Update for eh symbols.
|
||
|
|
||
|
2001-03-27 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* regmove.c (perhaps_ends_bb_p): Use can_throw_internal to
|
||
|
reduce false positives.
|
||
|
(regmove_optimize): Disable if flag_non_call_exceptions.
|
||
|
|
||
|
* stmt.c (expand_return): Remove always true predicate.
|
||
|
(expand_decl_cleanup_no_eh): Remove dead code.
|
||
|
|
||
|
* sched-deps.c (sched_analyze_insn): Consolidate scheduling
|
||
|
barrier code. Add a scheduling barrier if a non-call insn
|
||
|
can throw internally.
|
||
|
|
||
|
* rtlanal.c (rtx_addr_can_trap_p): Virtual registers cannot trap.
|
||
|
Auto-inc addresses trap only if their base register does.
|
||
|
|
||
|
* except.c (can_throw_internal): Rename from can_throw.
|
||
|
* except.h, resource.c: Update references.
|
||
|
|
||
|
* integrate.c (copy_insn_list): Use returnjump_p.
|
||
|
(copy_insn_notes): Recurse for CALL_PLACEHOLDER.
|
||
|
|
||
|
* function.h (struct function): Move all boolean valued fields
|
||
|
to single bit fields at the end of the struct.
|
||
|
|
||
|
* bb-reorder.c, dwarf2out.c, except.c, except.h, flow.c,
|
||
|
jump.c, toplev.c:
|
||
|
Rename asynchronous_exceptions to flag_non_call_exceptions.
|
||
|
|
||
|
* gthr-single.h (UNUSED): New. Distinguish between how C
|
||
|
and C++ mark unused function arguments. Use throughout.
|
||
|
|
||
|
* Makefile.in (cs-tconfig.h): Copy USING_SJLJ_EXCEPTIONS
|
||
|
value to target configuration header.
|
||
|
* configure.in (CONFIG_SJLJ_EXCEPTIONS): New.
|
||
|
* config.in, configure: Rebuild.
|
||
|
* except.h (USING_SJLJ_EXCEPTIONS): New. Define based on
|
||
|
configuration and target defines.
|
||
|
(exceptions_via_longjmp): Remove.
|
||
|
* dwarf2out.c, except.c, final.c, toplev.c, config/ia64/ia64.c:
|
||
|
Use USING_SJLJ_EXCEPTIONS instead of exceptions_via_longjmp.
|
||
|
|
||
|
* except.h (flag_non_call_exceptions): Move ...
|
||
|
* flags.h: ... here.
|
||
|
|
||
|
* combine.c (distribute_notes) [REG_EH_REGION]: If non-call
|
||
|
exceptions, put the note on the trapping instruction.
|
||
|
|
||
|
* flags.h (flag_new_exceptions): Remove.
|
||
|
* toplev.c: Don't set it.
|
||
|
* final.c: Don't check it.
|
||
|
* except.c: Provide stub definition.
|
||
|
|
||
|
* flow.c (tidy_fallthru_edges): Don't combine complex edges.
|
||
|
(calculate_global_regs_live): Kill call-clobbered registers
|
||
|
across exception edges.
|
||
|
* reg-stack.c (convert_regs_1): Kill the entire target stack
|
||
|
across non-call exception edges.
|
||
|
|
||
|
* flow.c (cleanup_cfg): Take no argument.
|
||
|
* output.h, sibcall.c, toplev.c: Update all calls.
|
||
|
|
||
|
2001-03-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* configure.in: Don't check for bcopy.
|
||
|
* configure, config.in: Regenerate.
|
||
|
|
||
|
* system.h: Don't define or prototype bcopy, instead poison it.
|
||
|
|
||
|
2001-03-27 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* function.c (expand_function_start): Set DECL_REGISTER on
|
||
|
a pseudo used for DECL_RESULT.
|
||
|
|
||
|
* rtl.h (LCT_NORETURN): New.
|
||
|
* calls.c (emit_library_call_value_1): Handle it.
|
||
|
|
||
|
2001-03-27 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
* objc/objc-act.c (objc_init): Use dump_base_name.
|
||
|
(gen_declaration): Clear the buffer arg.
|
||
|
(gen_declaration_1): New function, body of gen_declaration.
|
||
|
(adorn_decl): Call gen_declaration_1 instead of gen_declaration.
|
||
|
(gen_method_decl): Ditto, plus always clear buffer arg.
|
||
|
(error_with_ivar): Simplify.
|
||
|
(warn_with_method): Ditto.
|
||
|
(build_message_expr): Don't clear buffers.
|
||
|
(dump_interface): Ditto.
|
||
|
(objc_debug): Ditto.
|
||
|
(build_keyword_selector): Clear the buffer by only zeroing
|
||
|
the first element.
|
||
|
(objc_implementation_context): Declare.
|
||
|
(start_class): Warn about missing @end.
|
||
|
(finish_objc): Ditto.
|
||
|
|
||
|
2001-03-28 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||
|
|
||
|
* reload1.c (eliminate_regs): Don't abort on MEM USEs.
|
||
|
|
||
|
2001-03-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* Makefile.in (SYSTEM_H): Define.
|
||
|
Depend on $(SYSTEM_H), not system.h.
|
||
|
|
||
|
* objc/Make-lang.in: Depend on $(SYSTEM_H), not system.h.
|
||
|
|
||
|
2001-03-27 Jim Wilson <wilson@redhat.com>
|
||
|
|
||
|
* final.c (final_scan_insn, case NOTE_INSN_BASIC_BLOCK): Call
|
||
|
IA64_UNWIND_EMIT.
|
||
|
* config/ia64/ia64.c (block_num, need_copy_state): New static vars.
|
||
|
(process_epilogue): New static function.
|
||
|
(process_set): Call process_epilogue instead of emitting .restore
|
||
|
directly.
|
||
|
(process_for_unwind_directive): Handle NOTE_INSN_BASIC_BLOCK.
|
||
|
|
||
|
* flow.c (struct reg_cond_life_info): New fields orig_condition
|
||
|
and stores.
|
||
|
(init_propagate_block_info): Set new fields.
|
||
|
(mark_regno_cond_dead): Set and use new fields.
|
||
|
(flush_reg_cond_reg_1): Likewise.
|
||
|
(and_reg_cond, case AND): Check for redundant AND conditions.
|
||
|
(mark_used_reg): Delete unnecessary clears before freeing splay trees.
|
||
|
Set new fields.
|
||
|
|
||
|
2001-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppmacro.c (stringify_arg): Null terminate strings.
|
||
|
|
||
|
2001-03-27 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* config.gcc (m68hc11-*-*, m68hc12-*-*): Convert to new tm.h
|
||
|
inclusion style. xm-m68hc11.h no longer exists.
|
||
|
* config/m68hc11/xm-m68hc11.h: Delete file.
|
||
|
* config/m68hc11/m68hc12.h: Convert to new tm.h inclusion style.
|
||
|
|
||
|
* config/m68hc11/m68hc11.h: Convert to new tm.h inclusion style.
|
||
|
Don't define GCC_VERSION, N_, or PARAMS; don't include
|
||
|
gansidecl.h or stdio.h. Define inhibit_libc here.
|
||
|
Make code conditioned on #if GCC_VERSION > 2095 unconditional.
|
||
|
Delete code conditioned on #if GCC_VERSION == 2095.
|
||
|
|
||
|
* config/m68hc11/m68hc11-protos.h, config/m68hc11/m68hc11.c:
|
||
|
Make code conditioned on #if GCC_VERSION > 2095 unconditional.
|
||
|
Delete code conditioned on #if GCC_VERSION == 2095.
|
||
|
|
||
|
2001-03-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* system.h: Include symcat.h.
|
||
|
(STRINGIFY): Don't define.
|
||
|
|
||
|
* configure.in: Adjust comment.
|
||
|
|
||
|
* builtins.c: Use STRINGX, not STRINGIFY.
|
||
|
* gencheck.c: Likewise.
|
||
|
* gengenrtl.c: Likewise.
|
||
|
* protoize.c: Likewise.
|
||
|
|
||
|
* cpplex.c: Don't include symcat.h.
|
||
|
* cpplib.c: Likewise.
|
||
|
|
||
|
* gansidecl.h (HAVE_STRINGIZE): Don't define.
|
||
|
|
||
|
2001-03-27 Alan Modra <alan@linuxcare.com.au>
|
||
|
|
||
|
* c-typeck.c (digest_init): Fold init expression.
|
||
|
|
||
|
2001-03-26 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* sbitmap.c (sbitmap_copy): Call memcpy, not bcopy.
|
||
|
|
||
|
2001-03-27 Alan Modra <alan@linuxcare.com.au>
|
||
|
|
||
|
* except.c (eh_regs): Save results of build_pointer_type to a temp
|
||
|
as FUNCTION_VALUE macro may evaluate its args multiple times.
|
||
|
|
||
|
2001-03-26 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* c-common.h (DECL_NUM_STMTS): New macro.
|
||
|
* c-decl.c (duplicate_decls): Copy DECL_NUM_STMTS, not
|
||
|
DECL_FRAME_SIZE.
|
||
|
(pushdecl): Likewise.
|
||
|
* c-semantics.c (add_stmt): Update DECL_NUM_STMTS.
|
||
|
* integrate.c (expand_inline_function): Don't check
|
||
|
DECL_FRAME_SIZE.
|
||
|
* print-tree.c (print_node): Don't print it.
|
||
|
* toplev.c (rest_of_compilation): Don't try to inline when
|
||
|
flag_no_inline is on.
|
||
|
* tree.h (DECL_FRAME_SIZE): Remove.
|
||
|
(tree_decl): Adjust accordingly.
|
||
|
|
||
|
2001-03-26 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* combine.c (try_combine): Use memcpy, not bcopy.
|
||
|
|
||
|
* genattrtab.c (expand_units): Likewise.
|
||
|
|
||
|
Mon Mar 26 15:55:08 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (push mem DI peep2): New.
|
||
|
(mov 0, mov -1 peep2): Handle 64bit.
|
||
|
(lea to arithmetics peep2): Handle 64bit leas.
|
||
|
(rsp arithmetics to push/pop peep2s): New.
|
||
|
|
||
|
* i386.md (truncdfsf2_3, trunctfsf2_2): Change predicate to memory_operand.
|
||
|
|
||
|
Mon Mar 26 14:35:18 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (struct machine_function): Add save_varrargs_registers.
|
||
|
(ix86_save_varrargs_registers): New macro.
|
||
|
(ix86_frame_layout): Support 64bit; support red zones and varrargs area.
|
||
|
(ix86_expand_prologue): Likewise.
|
||
|
(ix86_emit_epilogue_esp_adjustement): Likewise.
|
||
|
(ix86_expand_epilogue): Likewise.
|
||
|
* i386.md (pro_epilogue_adjust_stack): Turn to expander; support 64bit.
|
||
|
(pro_epilogue_adjust_stack_1): New insn.
|
||
|
(pro_epilogue_adjust_stack_rex64): Likewise.
|
||
|
* i386.h (MASK_NO_RED_ZONE): New constant.
|
||
|
(TARGET_RED_ZONE): New macro.
|
||
|
(TARGET_OPTIONS): Add "red-zone" and "no-red-zone"
|
||
|
(RED_ZONE_SIZE): New constant.
|
||
|
(RED_ZONE_RESERVE): New constant.
|
||
|
|
||
|
2001-03-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* toplev.c (set_float_handler): Use memcpy, not bcopy.
|
||
|
|
||
|
2001-03-25 Kazu Hirata <kazu@hxi.com>
|
||
|
|
||
|
* config/h8300/h8300.md (umodqi3): Output a tab instead of a
|
||
|
space.
|
||
|
(modqi3): Likewise.
|
||
|
(umodhi3): Likewise.
|
||
|
(modhi3): Likewise.
|
||
|
|
||
|
2001-03-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* mkconfig.sh (DEFINES): Handle entries with '='.
|
||
|
|
||
|
* config.gcc: Don't use i370/xm-mvs.h or ns32k/xm-pc532-min.h.
|
||
|
Set xm_defines to MACRO=value instead.
|
||
|
|
||
|
* i370/xm-mvs.h: Delete.
|
||
|
|
||
|
* ns32k/xm-pc532-min.h: Likewise.
|
||
|
|
||
|
Sun Mar 25 15:01:40 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (ashldi3, ashrdi3, lshrdi3): Change predicates to
|
||
|
shiftdi_operand;
|
||
|
use ix86_expand_binary_operator
|
||
|
(?sh??i_?): Disable for 64bit.
|
||
|
* i386.h (PREDICATE_CODES): Add shiftdi_operand.
|
||
|
* i386.c (shiftdi_operand): New predicate.
|
||
|
|
||
|
* (ashldi3_1_rex64, ashldi3_cmp_rex64, ashlsi3_1_zext, ashlsi3_cmp_zext,
|
||
|
ashrdi3_63_rex64, ashrdi3_1_one_bit_rex64, ashrdi3_1_rex64,
|
||
|
ashrdi3_one_bit_cmp_rex64, ashrdi3_cmp_rex64, ashrsi3_31_zext,
|
||
|
ashrsi3_1_one_bit_zext, ashrsi3_1_zext, ashrsi3_one_bit_cmp_zext,
|
||
|
ashrsi3_cmp_zext, lshrdi3_1_one_bit_rex64, lshrdi3_1_rex64,
|
||
|
lshrdi3_cmp_one_bit_rex64, lshrdi3_cmp_rex64, lshrsi3_1_one_bit_zext,
|
||
|
lshrsi3_1_zext, lshrsi3_cmp_one_bit_zext, lshrsi3_cmp_zext,
|
||
|
rotlsi3_1_one_bit_rex64, rotldi3_1_rex64,
|
||
|
rotlsi3_1_one_bit_zext, rotlsi3_1_zext, rotrdi3_1_one_bit_rex64,
|
||
|
rotrdi3_1_rex64, rotrsi3_1_one_bit_zext, rotrsi3_1_zext): New patterns.
|
||
|
(rotldi3, rotrdi3): New expanders.
|
||
|
|
||
|
Sun Mar 25 14:25:33 CEST 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (movstrsi): Move offline.
|
||
|
(movstrdi): New.
|
||
|
(strmovdi_rex64): New.
|
||
|
(strmov?i): Accept 64bit.
|
||
|
(strmov?i_rex64): New.
|
||
|
(strmov?i_rex_1): New.
|
||
|
(strmov?i_1): Disable for 64bit.
|
||
|
(rep_mov?i_rex64): New.
|
||
|
(rep_mov?i): Disable for 64bit.
|
||
|
(clrstrsi): Move offline.
|
||
|
(strset?i_rex64): New.
|
||
|
(strset?i: Accept 64bit.
|
||
|
(rep_stos?i): Disable for 64bit.
|
||
|
(rep_stos?i_rex64): New.
|
||
|
(strset?i_rex_1): New.
|
||
|
(strset?i_1): Disable for 64bit.
|
||
|
(cmpstrsi): Accept 64bit.
|
||
|
(cmpstrsi_nz_1): Rename to cmpstrqi_nz_1; Disable for 64bit.
|
||
|
(cmpstrqi_nz_rex_1): New.
|
||
|
(cmpstrsi_1): Rename to cmpstrqi_1; Disable for 64bit.
|
||
|
(strlensi): Move offline.
|
||
|
(strlendi): New.
|
||
|
(strlenqi_1): Disable for 64bit; fix constraints.
|
||
|
(strlenqi_rex_1): New.
|
||
|
* i386.c (ix86_adjust_counter): New static function.
|
||
|
(ix86_zero_extend_to_Pmode): Likewise.
|
||
|
(ix86_expand_aligntest): Likweise.
|
||
|
(ix86_expand_strlensi_unroll_1): Make static; update for 64bit.
|
||
|
(ix86_expand_movstr): New global function.
|
||
|
(ix86_expand_clrstr): New global function.
|
||
|
(ix86_expand_strlen): New global function.
|
||
|
* i386-protos.h (ix86_expand_movstr, ix86_expand_clrstr,
|
||
|
ix86_expand_strlen): Declare.
|
||
|
(ix86_expand_strlensi_unroll_1): Delete.
|
||
|
|
||
|
Sat Mar 24 23:15:19 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (cmpdi): Fix operand predicates.
|
||
|
(cmpdi_ccno_1_rex64, cmpdi_minus_1_rex64, cmpdi_1_rex64,
|
||
|
cmpdi_1_insn_rex64): New patterns.
|
||
|
(adddi3): Turn to expander.
|
||
|
(adddi3_1, adddi3_carry_rex64, adddi3_cc_rex64): New patterns.
|
||
|
(addsi3_carry_zext): New pattern.
|
||
|
(adddi_?_rex64): New patterns and splitters.
|
||
|
(addsi_?_zext): New patterns.
|
||
|
(subsi3_carry_zext): New pattern.
|
||
|
(subdi_?_rex64): New patterns and splitters.
|
||
|
(iorsi_?_zext): New patterns.
|
||
|
(iordi_?_rex64): New patterns and splitters.
|
||
|
(iorsi_?_zext): New patterns.
|
||
|
(iorsi_?_zext_imm): New patterns.
|
||
|
(xorsi_?_zext): New patterns.
|
||
|
(xordi_?_rex64): New patterns and splitters.
|
||
|
(xorsi_?_zext): New patterns.
|
||
|
(negdi*): New patterns.
|
||
|
(one_cmpldi*): Likewise.
|
||
|
(one_cmplsi*_zext, negsi*_zext): Likewise.
|
||
|
(testqi_ext_3_rex64): New pattern.
|
||
|
|
||
|
Sat Mar 24 21:13:28 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386-protos.h (ix86_split_long_move): Return void.
|
||
|
* i386.c (ix86_split_to_parts): Handle 64bit target.
|
||
|
(ix86_split_long_move): Likewise.
|
||
|
* i386.md (all calls to ix86_split_long_move): Update.
|
||
|
|
||
|
2001-03-23 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/mips/iris4.h (ASM_OUTPUT_ASCII): Rename local variables
|
||
|
to avoid shadowing arguments.
|
||
|
|
||
|
2001-03-23 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* varasm.c (make_decl_rtl): Don't append var_labelno discriminator
|
||
|
to variable names where DECL_NAME is different from
|
||
|
DECL_ASSEMBLER_NAME.
|
||
|
|
||
|
2001-03-23 Jim Wilson <wilson@redhat.com>
|
||
|
|
||
|
* varasm.c (make_decl_rtl): Add TREE_PUBLIC check to abort test.
|
||
|
(assemble_alias): Call make_decl_rtl.
|
||
|
|
||
|
Fri Mar 23 16:59:08 2001 J"orn Rennecke <amylaar@redhat.com>
|
||
|
|
||
|
* stor-layout.c (layout_type): Give OFFSET_TYPE a MODE_INT type.
|
||
|
|
||
|
2001-03-23 Bryce McKinlay <bryce@albatross.co.nz>
|
||
|
|
||
|
* extend.texi: Document the "java_interface" attribute.
|
||
|
|
||
|
2001-03-22 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* mkconfig.sh: Use a subshell with redirected stdout,
|
||
|
instead of closing stdout and confusing commands that run
|
||
|
afterward. Throw away output of cmp.
|
||
|
|
||
|
2001-03-22 Gordon Sadler <gbsadler1@lcisp.com>
|
||
|
|
||
|
* Makefile.in (stage1_build): Pass CFLAGS to stage1_build.
|
||
|
|
||
|
Thu Mar 22 22:15:59 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (zero_extendsidi2_32): Break out from ...
|
||
|
(zero_extendsidi2): ... here ; turn to expander.
|
||
|
(zero_extendsidi2_rex64): New.
|
||
|
(extendsidi2_32): Break out from ...
|
||
|
(extendsidi2): ... here ; turn to expander.
|
||
|
(extendsidi2_rex64): New.
|
||
|
(zero_extendhidi2, zero_extendqidi2, extendhidi2, extendqidi2): New.
|
||
|
(trunc?f?f splitters): Add 64bit versions.
|
||
|
|
||
|
Thu Mar 22 21:41:16 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (pushsi, pushsi2_prologue): Disable.
|
||
|
(pushsi2_rex64): New.
|
||
|
(movabs?i_1_rex64, movabs?i_2_rex64): New.
|
||
|
(movqi_ext_1): Disable for 64bit.
|
||
|
(movqi_ext_1_rex64): New.
|
||
|
(pushdi2_rex64): New pattern, peep2s and splitter.
|
||
|
(pushdi2_prologue_rex64): New pattern.
|
||
|
(popdi1_epilogue_rex64, popdi1, movdi_xor_rex64, movdi_or_rex64):
|
||
|
Likewise.
|
||
|
(movdi splitters): Disable for 64bit.
|
||
|
(movdi_1_rex64): New pattern, peep2s and splitters.
|
||
|
(swapdi): New pattern.
|
||
|
(pushsf): Disable for 64bit.
|
||
|
(pushsf_rex64): New pattern and splitter.
|
||
|
(pushdf_nointeger): Disable for 64bit.
|
||
|
(pushdf_integer): Handle the 64bit case.
|
||
|
(pushtf): Likewise; update splitters.
|
||
|
|
||
|
2001-03-22 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* mkconfig.sh: Include insn-flags.h.
|
||
|
* Makefile.in (CONFIG_H): Include insn-flags.h.
|
||
|
(lots of objects): Remove insn-codes.h and insn-flags.h.
|
||
|
|
||
|
* alias.c, bb-reorder.c, calls.c, do-loop.c, flow.c, haifa-sched.c,
|
||
|
integrate.c, jump.c, loop.c, predict.c, profile.c, reg-stack.c,
|
||
|
regmove.c, reorg.c, a29k/a29k.c, alpha/alpha.c, arc/arc.c, arm/arm.c,
|
||
|
avr/avr.c, clipper/clipper.c, convex/convex.c, d30v/d30v.c,
|
||
|
dsp16xx/dsp16xx.c, fr30/fr30.c, h8300/h8300.c, i370/i370.c,
|
||
|
i386/i386.c, i860/i860.c, ia64/ia64.c, m32r/m32r.c, m68hc11/m68hc11.c,
|
||
|
m68k/m68k.c, m88k/m88k.c, mcore/mcore.c, mn10200/mn10200.c,
|
||
|
mn10300/mn10300.c, ns32k/ns32k.c, pa/pa.c, pdp11/pdp11.c,
|
||
|
pj/pj.c, romp/romp.c, rs6000/rs6000.c, sh/sh.c, sparc/sparc.c,
|
||
|
v850/v850.c, vax/vax.c:
|
||
|
Don't include insn-flags.h.
|
||
|
|
||
|
* diagnostic.c, expr.h, reload.c, toplev.c:
|
||
|
Don't include insn-codes.h.
|
||
|
|
||
|
* builtins.c, combine.c, except.c, explow.c, expmed.c, expr.c,
|
||
|
final.c, function.c, optabs.c, recog.c, reload1.c, stmt.c,
|
||
|
c4x/c4x.c, i960/i960.c, mips/mips.c:
|
||
|
Don't include insn-codes.h or insn-flags.h.
|
||
|
|
||
|
* genemit.c, genopinit.c, genoutput.c: Don't include insn-codes.h
|
||
|
or insn-flags.h in the generated code.
|
||
|
* genflags.c (gen_proto): Use "struct rtx_def *" instead of "rtx".
|
||
|
(main): Forward declare struct rtx_def.
|
||
|
|
||
|
2001-03-22 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* invoke.texi (-ffast-math): Remove duplicate line about
|
||
|
__FAST_MATH__.
|
||
|
|
||
|
* gcc.texi: Remove more obsolete documentation of bugs and
|
||
|
installation problems.
|
||
|
|
||
|
2001-03-21 Kazu Hirata <kazu@hxi.com>
|
||
|
|
||
|
* config/h8300/h8300.md (movsi_h8300hs): Split the 2nd alternative
|
||
|
into two parts.
|
||
|
|
||
|
2001-03-20 Jason Merrill <jason@redhat.com>
|
||
|
|
||
|
* collect2.c (is_ctor_dtor): Always use '_' in the file fn names,
|
||
|
not '.' or '$'.
|
||
|
* tree.c (FILE_FUNCTION_FORMAT): Likewise.
|
||
|
* varasm.c (CHKR_PREFIX): Likewise.
|
||
|
|
||
|
Wed Mar 21 14:27:11 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* gcse.c (hash_scan_set): An expression is not anticipatible if it
|
||
|
is part of a multi-SET insn.
|
||
|
|
||
|
* cse.c (find_comparison_args): Remove previous change.
|
||
|
* ifcvt.c (noce_process_if_block): When moving an insn, remove any
|
||
|
REG_EQUAL notes.
|
||
|
|
||
|
* config/i386/i386.md (conditional_trap): Remove warning.
|
||
|
|
||
|
* recog.c (push_operand): Fix error in last change that caused
|
||
|
undefined symbol on many targets.
|
||
|
|
||
|
* sdbout.c: #include ggc.h.
|
||
|
(sdbout_init): Move to end of file.
|
||
|
Call ggc_add_tree_root for anonymous_types.
|
||
|
(sdbout_symbol): Use DECL_NAME for local, not DECL_ASSEMBLER_NAME.
|
||
|
(sdbout_one_type): Use DECL_NAME for field name.
|
||
|
* Makefile.in (sdbout.o): Show includes ggc.h.
|
||
|
|
||
|
Wed Mar 21 20:33:26 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (override_options): Default ix86_regparm to REGPARM_MAX.
|
||
|
(override_options): Use properlimits for preferred_stack_boundary.
|
||
|
(ix86_valid_type_attribute_p): Disable stdcall and cdecl attributes
|
||
|
on x86_64.
|
||
|
(ext_register_operand): Accept DImode.
|
||
|
(load_pic_register): Abort on 64bit.
|
||
|
(gen_push): Use Pmode instead of SImode.
|
||
|
(ix86_save_reg): Pic reg is never used on 64bit.
|
||
|
(ix86_expand_prologue): Likewise.
|
||
|
(ix86_emit_save_regs): Use Pmode instead of SImode.
|
||
|
(legitimate_address_p): Check displacement for 64bit.
|
||
|
(print_operand): Avoid outputting of (%rip) on 64bit.
|
||
|
(print_operand_address): Output (%rip) where possible.
|
||
|
(split_di): Abort on 64bit registers.
|
||
|
(ix86_expand_branch): DImode comparison is simple for x86_64.
|
||
|
(memory_address_length): Recognize memory addresses formed using
|
||
|
PRE/POST modify.
|
||
|
(ix86_data_alignment, ix86_local_alignment): Align arrays to 16 bytes
|
||
|
for x86_64.
|
||
|
* i386.h (TARGET_USE_SAHF): Disable for 64bit.
|
||
|
|
||
|
Wed Mar 21 18:51:19 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* recog.c (push_operand): Recognize new format of push instructions.
|
||
|
|
||
|
Wed Mar 21 10:53:57 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (pushqi1): New.
|
||
|
* i386-protos.h (x86_64_general_operand, x86_64_szext_general_operand,
|
||
|
x86_64_nonmemory_operand, x86_64_szext_nonmemory_operand,
|
||
|
x86_64_immediate_operand, x86_64_immediate_operand,
|
||
|
x86_64_zext_immediate_operand): Declare.
|
||
|
* i386.c (x86_64_general_operand, x86_64_szext_general_operand,
|
||
|
x86_64_nonmemory_operand, x86_64_szext_nonmemory_operand,
|
||
|
x86_64_immediate_operand, x86_64_immediate_operand,
|
||
|
x86_64_zext_immediate_operand): define.
|
||
|
* i386.h (PREDICATE_CODES): Add new predicates.
|
||
|
|
||
|
Wed Mar 21 10:25:13 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (pophi1, popqi1, pushqi1): Remove.
|
||
|
|
||
|
* expr.c (emit_single_push_insn): New function.
|
||
|
(move_by_pieces): Accept NULL as destination for push instructions.
|
||
|
(gen_push_operand): Kill.
|
||
|
(emit_push_insn): Pass NULL when pushing; avoid updating of
|
||
|
stack_pointer_delta.
|
||
|
* expr.h (gen_push_operand): Kill.
|
||
|
|
||
|
Tue Mar 20 20:15:06 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* rtl.texi (COMPARE): Clarify documentation and reference section
|
||
|
on comparisons.
|
||
|
|
||
|
2001-03-20 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
* objc/objc-act.c (get_static_reference): Use NULL_TREE.
|
||
|
(get_object_reference): Ditto.
|
||
|
(error_with_ivar): Use error_with_file_and_line.
|
||
|
(warn_with_method): Use warning_with_file_and_line.
|
||
|
|
||
|
2001-03-20 Tom Tromey <tromey@redhat.com>
|
||
|
|
||
|
* libgcc-std.ver: Added __fixunssfsi and __fixunsdfsi.
|
||
|
|
||
|
2001-03-20 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* tree.c (set_decl_assembler_name): Set DECL_ASSEMBLER_NAME for
|
||
|
variables that are TREE_PUBLIC, even if not TREE_STATIC.
|
||
|
|
||
|
2001-03-20 DJ Delorie <dj@redhat.com>
|
||
|
|
||
|
* Makefile.in (install-libgcc): Pass complete list of variables.
|
||
|
(install-multilib): Ditto.
|
||
|
|
||
|
2001-03-20 David Billinghurst <David.Billinghurst@riotinto.com>
|
||
|
|
||
|
* config/i386/cygwin.h: Declare ctor_section, dtor_section
|
||
|
drectve_section, switch_to_section.
|
||
|
|
||
|
* winnt.c: Declare functions associated_type, gen_stdcall_suffix,
|
||
|
i386_pe_dllexport_p, i386_pe_dllimport_p, i386_pe_mark_dllexport,
|
||
|
i386_pe_mark_dllimport.
|
||
|
|
||
|
2001-03-20 David Billinghurst <David.Billinghurst@riotinto.com>
|
||
|
|
||
|
* config/i386/cygwin.h: Include <stdio.h> Declare and constify
|
||
|
functions i386_pe_*.
|
||
|
|
||
|
* config/i386/winnt.c: Include "tm_p.h" and "toplev.h" Constify
|
||
|
i386_pe_* functions with char * arguments.
|
||
|
|
||
|
2001-03-20 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/sh/sh.md (movsf_ie): Fix output patterns for fpul load
|
||
|
and store.
|
||
|
(movsi_ie): Introduce fpul store.
|
||
|
|
||
|
2001-03-20 Alan Modra <alan@linuxcare.com.au>
|
||
|
|
||
|
* Makefile.in (OBJS): Remove hashtab.o.
|
||
|
|
||
|
2001-03-19 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
* objc/objc-act.c (maybe_objc_method_name): Remove, never called.
|
||
|
* c-lang.c (maybe_objc_method_name): Ditto.
|
||
|
* c-tree.h (maybe_objc_method_name): Remove decl.
|
||
|
|
||
|
2001-03-19 Tom Tromey <tromey@redhat.com>
|
||
|
|
||
|
* gcc.c (init_gcc_specs): Fix comment.
|
||
|
|
||
|
2001-03-19 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
Compute DECL_ASSEMBLER_NAME lazily.
|
||
|
* tree.h (DECL_ASSEMBLER_NAME): Compute it lazily.
|
||
|
(DECL_ASSEMBLER_NAME_SET_P): New macro.
|
||
|
(SET_DECL_ASSEMBLER_NAME): Likewise.
|
||
|
(COPY_DECL_ASSEMBLER_NAME): Likewise.
|
||
|
(set_decl_assembler_name): Declare.
|
||
|
(lang_set_decl_assembler_name): Likewise.
|
||
|
* tree.c (lang_set_decl_assembler_name): New variab.e
|
||
|
(set_decl_assembler_name): New function.
|
||
|
(init_obstacks): Set lang_set_decl_assembler_name.
|
||
|
(build_decl): Don't set DECL_ASSEMBLER_NAME.
|
||
|
* c-decl.c (duplicate_decls): Use SET_DECL_ASSEMBLER_NAME,
|
||
|
COPY_DECL_ASSEMBLER_NAME, etc. Don't set DECL_ASSEMBLER_NAME
|
||
|
where it's not necessary.
|
||
|
(builtin_function): Likewise.
|
||
|
(finish_decl): Likewise.
|
||
|
* dbxout.c (dbxout_type_methods): Likewise.
|
||
|
* ggc-common.c (ggc_mark_trees): Likewise.
|
||
|
* profile.c (output_func_start_profiler): Likewise.
|
||
|
* varasm.c (make_decl_rtl): Likewise.
|
||
|
|
||
|
* cse.c (find_comparison_args): Update documentation. Fix
|
||
|
mishandling of COMPARE operations.
|
||
|
|
||
|
* tree.def (ABS_EXPR): Add documentation.
|
||
|
* fold-const.c (fold): Improve folding of ABS_EXPRs.
|
||
|
|
||
|
2001-03-19 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* Makefile.in (hash.o): Depend on $(GCONFIG_H), not $(CONFIG_H).
|
||
|
|
||
|
2001-03-19 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* crtstuff.c (init_dummy): Use CRT_END_INIT_DUMMY if defined.
|
||
|
Remove ia32 linux PIC kludge and move it...
|
||
|
* config/i386/linux.h (CRT_END_INIT_DUMMY): ...here.
|
||
|
|
||
|
Mon Mar 19 18:53:54 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (absdf2 expander): Fix 64bit case.
|
||
|
|
||
|
2001-03-19 Brad Lucier <lucier@math.purdue.edu>
|
||
|
|
||
|
* Makefile.in: Have splay-tree.o depend on $(GCONFIG_H).
|
||
|
|
||
|
2001-03-16 Andrew Haley <aph@cambridge.redhat.com>
|
||
|
|
||
|
* config/ia64/libgcc-ia64.ver: Add __ia64_backtrace.
|
||
|
|
||
|
2001-03-19 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
|
||
|
|
||
|
* README.X11: Remove obsolete file.
|
||
|
|
||
|
2001-03-18 Anthony Green <green@redhat.com>
|
||
|
|
||
|
* config/pj/pj.h: Remove some trailing commas.
|
||
|
(ASM_SPEC): Use -EB and -EL, not -mb and -ml.
|
||
|
|
||
|
2001-03-18 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* defaults.h (ACCUMULATE_OUTGOING_ARGS, PUSH_ARGS): Move from ...
|
||
|
* calls.c: ... here.
|
||
|
* combine.c, expr.c, final.c, function.c toplev.c: Don't provide
|
||
|
defaults for them here.
|
||
|
|
||
|
2001-03-17 Anthony Green <green@redhat.com>
|
||
|
|
||
|
* config/pj/lib1funcs.S: Fix broken comment.
|
||
|
* config/pj/pj.h (LOCAL_LABEL_PREFIX): Prefix internal
|
||
|
labels with '.'.
|
||
|
|
||
|
2001-03-18 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* gcc.texi: Remove obsolete information relating to build and
|
||
|
installation problems with enquire or the Pyramid C compiler.
|
||
|
|
||
|
2001-03-17 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* dwarf2out.c (queue_reg_save): New.
|
||
|
(flush_queued_reg_saves, clobbers_queued_reg_save): New.
|
||
|
(dwarf2out_frame_debug_expr): Call queue_reg_save instead of
|
||
|
dwarf2out_reg_save.
|
||
|
(dwarf2out_frame_debug): Call flush_queued_reg_saves when needed.
|
||
|
(cfa, cfa_store, cfa_temp): Make static.
|
||
|
* final.c (final_scan_insn): Always call dwarf2out_frame_debug.
|
||
|
|
||
|
2001-03-17 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* integrate.h (struct inline_remap): Add local_return_label.
|
||
|
* integrate.c (expand_inline_function): Initialize it and emit
|
||
|
it after copy_insn_notes.
|
||
|
(copy_insn_list): Don't store local_return_label here.
|
||
|
(copy_insn_notes): New function split out from copy_insn_list.
|
||
|
|
||
|
2001-03-17 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* dwarf2out.c (lookup_filename): Emit .file if the assembler
|
||
|
is generating .debug_line.
|
||
|
(dwarf2out_init): Add main_input_filename to the file table first.
|
||
|
* configure.in (as_dwarf2_debug_line): Test with file number 1
|
||
|
instead of file number 0.
|
||
|
|
||
|
Sat Mar 17 11:52:34 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* combine.c (undobuf): Remove field previous_undos; all refs deleted.
|
||
|
(gen_rtx_combine): Deleted; all references changed as appropriate.
|
||
|
(gen_unary): Deleted; all refs changed to call simplify_gen_unary.
|
||
|
|
||
|
* print-tree.c (print_node): Print DECL_NONADDRESSABLE_P.
|
||
|
|
||
|
2001-03-17 David Billinghurst <David.Billinghurst@riotinto.com>
|
||
|
|
||
|
* config/i386/xm-cygwin.h: Include <sys/cygwin.h. Remove unused
|
||
|
variable.
|
||
|
|
||
|
2001-03-16 Jim Wilson <wilson@redhat.com>
|
||
|
|
||
|
* config/ia64/ia64.c (ia64_compute_frame_size): If reg_fp is zero,
|
||
|
then set it to LOC_REG (79) instead of aborting.
|
||
|
|
||
|
2001-03-16 Phil Edwards <pme@sources.redhat.com>
|
||
|
|
||
|
* gccbug.in: Remove high priority.
|
||
|
|
||
|
2001-03-16 Richard Henerson <rth@redhat.com>
|
||
|
|
||
|
* aclocal.m4 (gcc_AC_EXAMINE_OBJECT): Substitute leading od
|
||
|
output with a space instead of deleting it.
|
||
|
* configure: Regenerate.
|
||
|
|
||
|
2001-03-16 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* aclocal.m4 (gcc_AC_EXAMINE_OBJECT): New utility macro which
|
||
|
handles the gory details of converting an object file into
|
||
|
something that's safe to grep.
|
||
|
(gcc_AC_C_COMPILE_BIGENDIAN): Rename to
|
||
|
gcc_AC_C_COMPILE_ENDIAN. Use gcc_AC_EXAMINE_OBJECT. Put
|
||
|
newlines at either end of the string we're looking for.
|
||
|
Make 'checking ...' message less stilted.
|
||
|
(gcc_AC_C_FLOAT_FORMAT): Use gcc_AC_EXAMINE_OBJECT. Handle
|
||
|
ARM in-memory layout and its hypothetical converse. Don't
|
||
|
define HOST_FLOAT_WORDS_BIG_ENDIAN unless it's different from
|
||
|
HOST_WORDS_BIG_ENDIAN.
|
||
|
|
||
|
* configure.in: Adjust for renamed macro. Move
|
||
|
gcc_AC_C_FLOAT_FORMAT below gcc_AC_C_COMPILE_ENDIAN.
|
||
|
* configure, config.in: Regenerate.
|
||
|
|
||
|
2001-03-16 Laurynas Biveinis <lauras@softhome.net>
|
||
|
|
||
|
* fixinc/Makefile.in: Set SHELL.
|
||
|
|
||
|
2001-03-16 Laurynas Biveinis <lauras@softhome.net>
|
||
|
|
||
|
* fixinc/fixincl.c (fix_with_system): Quote file names before
|
||
|
passing them to shell.
|
||
|
|
||
|
2001-03-16 Laurynas Biveinis <lauras@softhome.net>
|
||
|
|
||
|
* Makefile.in: Use fix-header$(build_exeext) instead
|
||
|
of fix-header.
|
||
|
|
||
|
2001-03-16 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* dwarf2out.c: Revert most of 2000-11-25 and 2001-01-24 changes.
|
||
|
(LN_PROLOG_AS_LABEL, LN_PROLOG_END_LABEL): New.
|
||
|
(size_of_line_prolog): Remove.
|
||
|
(output_line_info): Compute prologue size via label difference.
|
||
|
(lookup_filename): Return "unspecified" for <internal> and <built-in>.
|
||
|
|
||
|
* configure.in (HAVE_AS_DWARF2_DEBUG_LINE): Require that the
|
||
|
assembler error when redefining file numbers.
|
||
|
* config.in, configure: Rebuild.
|
||
|
|
||
|
* dwarf2asm.c (dw2_asm_output_data): Mask data to the output size.
|
||
|
(dw2_asm_output_data_uleb128): Use space not tab after .uleb128.
|
||
|
(dw2_asm_output_delta_uleb128): Likewise.
|
||
|
(dw2_asm_output_delta_sleb128): Similarly.
|
||
|
(dw2_asm_output_data_sleb128): Similarly. Print number in decimal.
|
||
|
|
||
|
2001-03-16 Michael Meissner <meissner@redhat.com>
|
||
|
|
||
|
* mips.h (BITMASK_HIGH): Replacement for 0x80000000 that avoids
|
||
|
warnings.
|
||
|
(BITMASK_UPPER16): Replacement for 0xffff0000 that avoids
|
||
|
warnings.
|
||
|
(BITMASK_LOWER16): Replacement for 0x0000ffff.
|
||
|
|
||
|
* mips.c (save_restore_insns): Use BITMASK_UPPER16/BITMASK_LOWER16
|
||
|
instead of 0xffff0000/0x0000ffff to avoid warnings about constants
|
||
|
being unsigned in ISO C and signed in traditional.
|
||
|
(expand_prologue): Ditto.
|
||
|
(RA_MASK): Use BITMASK_HIGH to avoid warnings.
|
||
|
|
||
|
* mips.md (divmodsi4,divmodsi4): Use BITMASK_HIGH to avoid
|
||
|
warnings.
|
||
|
(divsi3,divdi3): Ditto.
|
||
|
(modsi3,moddi3): Ditto.
|
||
|
(fix_truncdfsi2,fix_truncdfdi2): Ditto.
|
||
|
(fix_truncsfsi2,fix_truncsfdi2): Ditto.
|
||
|
(movsi split): Use BITMASK_UPPER16/BITMASK_LOWER16 to avoid
|
||
|
warnings.
|
||
|
|
||
|
Fri Mar 16 14:47:57 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (ix86_expand_fp_movcc): Do not attempt to construct
|
||
|
SSE based conditional moves on LTGT/UNEQ conditions;
|
||
|
Canonicalize EQ to NE.
|
||
|
* i386.md (sse_mov?fcc): Disallow EQ and NE in IEEE mode.
|
||
|
(sse_mov?fcc_ne): New.
|
||
|
|
||
|
* i386-protos.h (sign_extended_value, zero_extended_value): Declare.
|
||
|
|
||
|
2001-03-16 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/sh/sh.c (sh_expand_prologue): Insns that set up the PIC
|
||
|
register may be dead.
|
||
|
|
||
|
2001-03-16 Brad Lucier <lucier@math.purdue.edu>
|
||
|
|
||
|
* Makefile.in (hash.o): Depend on CONFIG_H.
|
||
|
|
||
|
2001-03-15 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* dwarf2out.c (rtl_for_decl_location): Use DECL_RTL_IF_SET.
|
||
|
|
||
|
2001-03-15 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/ia64/ia64.h (ASM_OUTPUT_DWARF_OFFSET): New.
|
||
|
(ASM_OUTPUT_DWARF_PCREL): New.
|
||
|
* config/ia64/hpux.h (ASM_OUTPUT_DWARF_OFFSET): Remove.
|
||
|
|
||
|
2001-03-16 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* cppfiles.c (stack_include_file): Use MAX of sysp.
|
||
|
|
||
|
2001-03-15 Steve Ellcey <sje@cup.hp.com>
|
||
|
|
||
|
* config.gcc (ia64*-*-hpux*): New case.
|
||
|
* config/ia64/hpux.h: New file for HP-UX support.
|
||
|
* config/ia64/t-hpux: New file for HP-UX support.
|
||
|
|
||
|
2001-03-16 Bruce Korb <bkorb@gnu.org>, Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* fixinc/inclhack.def (irix_stdio_va_list): New.
|
||
|
* fixinc/fixincl.x: Rebuilt.
|
||
|
|
||
|
2001-03-15 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* dwarf2asm.c (dw2_asm_output_offset): Use ASM_OUTPUT_DWARF_OFFSET
|
||
|
if provided by the target.
|
||
|
(dw2_asm_output_pcrel): Likewise with ASM_OUTPUT_DWARF_PCREL.
|
||
|
(dw2_asm_output_addr): New.
|
||
|
* dwarf2asm.h (dw2_asm_output_addr): Declare.
|
||
|
* dwarf2out.c (output_cfi): Use it for program addresses.
|
||
|
(output_call_frame_info, output_die): Likewise.
|
||
|
(output_aranges, output_line_info): Likewise.
|
||
|
|
||
|
2001-03-15 Bruce Korb <bkorb@gnu.org>
|
||
|
|
||
|
* gcc.c(main): make more rigorous
|
||
|
* collect2.c(main): guard against ignoring SIGCHLD
|
||
|
* protoize.c(main): ditto
|
||
|
* gcc/fixinc/fixincl.c(initialize): ditto
|
||
|
|
||
|
2001-03-15 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* sdbout.c (sdbout_symbol): Use DECL_RTL_SET_P, SET_DECL_RTL.
|
||
|
(sdbout_parms): Likewise.
|
||
|
|
||
|
Thu Mar 15 12:57:14 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* reload1.c (reload_cse_simplify_set): For LOAD_EXTEND_OP, do not
|
||
|
"widen" a destination that is already wider than a word. Also do
|
||
|
not widen if LOAD_EXTEND_OP is NIL for the given mode.
|
||
|
|
||
|
2001-03-15 Bernd Schmidt <bernds@redhat.com>
|
||
|
|
||
|
* config/ia64/ia64.c (ia64_sched_reorder): Remove debugging aids.
|
||
|
|
||
|
Thu Mar 15 11:30:31 EST 2001 John Wehle (john@feith.com)
|
||
|
|
||
|
* i960.h (ROUND_TYPE_SIZE_UNIT): Fix typo.
|
||
|
|
||
|
Thu Mar 15 11:24:29 EST 2001 John Wehle (john@feith.com)
|
||
|
|
||
|
* i960.h (i960_maxbitalignment,
|
||
|
i960_last_maxbitalignment): Declare.
|
||
|
* i960.c (i960_maxbitalignment,
|
||
|
i960_last_maxbitalignment): Make global.
|
||
|
(process_pragma): Delete.
|
||
|
(i960_pr_align, i960_pr_noalign): Move from here ...
|
||
|
* i960-c.c: ... to this new file.
|
||
|
* t-960bare (i960-c.o): New rule.
|
||
|
* t-vxworks960 (i960-c.o): Likewise.
|
||
|
* config.gcc (i960-*-*): Define c_target_objs and
|
||
|
cxx_target_objs.
|
||
|
|
||
|
2001-03-15 Bernd Schmidt <bernds@redhat.com>
|
||
|
|
||
|
* cselib.c (hash_rtx): For REG and MEM, just use value of expression
|
||
|
without adding in rtx code and mode.
|
||
|
|
||
|
* alias.c (init_alias_analysis): Don't use any rtx whose value
|
||
|
varies as a known value.
|
||
|
Delete a superfluous test.
|
||
|
|
||
|
* config/ia64/ia64.c (maybe_rotate): New function, broken out of
|
||
|
ia64_sched_reorder.
|
||
|
(ia64_sched_reorder): Call maybe_rotate; also rotate after
|
||
|
scheduling a stop bit.
|
||
|
(ia64_emit_nops): Correctly handle ASMs.
|
||
|
|
||
|
2001-03-15 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* varasm.c (assemble_variable): Use DECL_RTL_SET_P.
|
||
|
|
||
|
2001-03-15 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpp.texi: Update documentation for -include and -imacros.
|
||
|
* cppfiles.c (struct include_file): Remove "defined" memeber.
|
||
|
(find_or_create_entry): Make a copy of the file name, and
|
||
|
simplify it.
|
||
|
(open_file): Update to ensure we use the simplified filename.
|
||
|
(stack_include_file): Don't set search_from.
|
||
|
(cpp_included): Don't simplify the path name here.
|
||
|
(find_include_file): New prototype. Call search_from to
|
||
|
get the start of the "" include chain. Don't simplify the
|
||
|
filenames here.
|
||
|
(_cpp_execute_include): New prototype. Move diagnostics to
|
||
|
do_include_common. Update.
|
||
|
(_cpp_pop_file_buffer): Don't set defined.
|
||
|
(search_from): New prototype. Use the preprocessor's cwd
|
||
|
for files included from the command line.
|
||
|
(read_name_map): Don't simplify the pathname here.
|
||
|
* cpphash.h (enum include_type): New.
|
||
|
(struct buffer): Delete search from. New search_cached.
|
||
|
(_cpp_execute_include): Update prototype.
|
||
|
* cppinit.c (do_includes): Use _cpp_execute_include.
|
||
|
* cpplib.c (do_include_common): New function.
|
||
|
(do_include, do_include_next, do_import): Use it.
|
||
|
|
||
|
2001-03-14 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* varasm.c (assemble_alias): Use DECL_ASSEMBLER_NAME, not the
|
||
|
contents of the RTL, to determine the name of the object.
|
||
|
|
||
|
2001-03-14 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* tree.h (DECL_RTL): Allocate RTL lazily.
|
||
|
(SET_DECL_RTL): New macro.
|
||
|
(DECL_RTL_SET_P): Likewise.
|
||
|
(COPY_DECL_RTL): Likewise.
|
||
|
(DECL_RTL_IF_SET): Likewise.
|
||
|
* varasm.c (make_decl_rtl): Add assertions about the kind of
|
||
|
declaration we are processing.
|
||
|
* c-decl.c (duplicate_decls): Use COPY_DECL_RTL, DECL_RTL_SET_P, etc.
|
||
|
(start_decl): Likewise.
|
||
|
(finish_decl): Likewise.
|
||
|
* c-semantics.c (emit_local_var): Likewise.
|
||
|
* calls.c (expand_call): Likewise.
|
||
|
* dbxout.c (dbxout_symbol): Likewise.
|
||
|
* emit-rtl.c (unshare_all_rtl): Likewise.
|
||
|
(unshare_all_decls): Likewise.
|
||
|
(reset_used_decls): Likewise.
|
||
|
* expr.c (store_constructor): Likewise.
|
||
|
(safe_from_p): Likewise.
|
||
|
(expand_expr): Likewise.
|
||
|
* function.c (put_var_into_stack): Likewise.
|
||
|
(instantiate_decls_1): Likewise.
|
||
|
(assign_parms): Likewise.
|
||
|
(expand_function_start): Likewise.
|
||
|
(expand_function_end): Likewise.
|
||
|
* ggc-common.c (gcc_mark_trees): Likewise.
|
||
|
* integrate.c (function_cannot_inline_p): Likewise.
|
||
|
(copy_decl_for_inlining): Likewise.
|
||
|
(expand_inline_function): Likewise.
|
||
|
(integrate_parm_decls): Likewise.
|
||
|
(integrate_decl_tree): Likewise.
|
||
|
* print-tree.c (print_node): Likewise.
|
||
|
* reg-stack.c (stack_result): Likewise.
|
||
|
* stmt.c (label_rtx): Likewise.
|
||
|
(expand_return): Likewise.
|
||
|
(expand_decl): Likewise.
|
||
|
(expand_decl_cleanup): Likewise.
|
||
|
(expand_anon_union_decl): Likewise.
|
||
|
* toplev.c (check_global_declarations): Likewise.
|
||
|
(rest_of_decl_compilation): Likewise.
|
||
|
* tree.c (simple_cst_equal): Likewise.
|
||
|
* objc/objc-act.c (generate_static_references): Likewise.
|
||
|
|
||
|
2001-03-14 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* aclocal.m4 (gcc_AC_C_CHARSET, gcc_AC_C_COMPILE_BIGENDIAN,
|
||
|
gcc_AC_C_FLOAT_FORMAT): New macros.
|
||
|
* configure.in: Add AC_PROG_CPP after CC tests;
|
||
|
gcc_AC_C_CHARSET and gcc_AC_C_FLOAT_FORMAT after the sizeof
|
||
|
tests; and gcc_AC_C_COMPILE_BIGENDIAN after gcc_AC_C_CHAR_BIT.
|
||
|
* configure, config.in: Regenerate.
|
||
|
|
||
|
* config/a29k/xm-a29k.h, config/arc/xm-arc.h,
|
||
|
config/arm/xm-arm.h, config/c4x/xm-c4x.h,
|
||
|
config/convex/xm-convex.h, config/d30v/xm-d30v.h,
|
||
|
config/i370/xm-linux.h, config/i370/xm-oe.h,
|
||
|
config/ia64/xm-ia64.h, config/m32r/xm-m32r.h,
|
||
|
config/m68k/xm-m68k.h, config/mips/xm-mips.h,
|
||
|
config/pa/xm-linux.h, config/pa/xm-pa.h,
|
||
|
config/rs6000/xm-lynx.h, config/rs6000/xm-mach.h,
|
||
|
config/rs6000/xm-rs6000.h, config/rs6000/xm-sysv4.h,
|
||
|
config/sparc/xm-sparc.h, config/vax/xm-vax.h,
|
||
|
config/we32k/xm-we32k.h: Delete.
|
||
|
|
||
|
* config/i370/xm-mvs.h, config/m88k/m88k.h,
|
||
|
config/romp/xm-romp.h, config/rs6000/xm-beos.h,
|
||
|
config/vax/xm-vms.h: Don't define any of:
|
||
|
HOST_FLOAT_FORMAT, HOST_EBCDIC, HOST_WORDS_BIG_ENDIAN
|
||
|
|
||
|
* config/rs6000/aix.h: Define COLLECT_EXPORT_LIST here.
|
||
|
|
||
|
* config.gcc: Remove references to deleted files.
|
||
|
(i370-*-opened*): Use i370/xm-mvs.h (which now defines only
|
||
|
FATAL_EXIT_CODE, which is the same between oe and mvs).
|
||
|
|
||
|
2001-03-14 DJ Delorie <dj@redhat.com>
|
||
|
Vladimir Makarov <vmakarov@redhat.com>
|
||
|
|
||
|
* config/i960/i960.c (i960_function_prologue): Compute size of
|
||
|
frame according to number of registers actually saved there.
|
||
|
|
||
|
2001-03-14 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* expr.c (emit_move_insn_1): Fix else if around #endif.
|
||
|
|
||
|
Wed Mar 14 22:39:12 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
Vojtech Pavlik
|
||
|
|
||
|
* md.texi (machine constraints): Document 'Q', 'R', 'e' and 'Z'
|
||
|
constraints.
|
||
|
|
||
|
Wed Mar 14 22:26:10 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (ix86_cmodel_string, ix86_cmodel): Define.
|
||
|
(override_options): Parse cmodel string.
|
||
|
(x86_64_sign_extended_value, x86_64_zero_extended_value): New.
|
||
|
* i386.h (TARGET_OPTIONS): Add "cmodel".
|
||
|
(EXTRA_CONSTRAINT): Recognize 'e' and 'Z'.
|
||
|
(enum cmodel): New.
|
||
|
(ix86_cmodel_string, ix86_cmodel): Declare.
|
||
|
|
||
|
Wed Mar 14 22:26:54 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
Spot by Matt Kraai:
|
||
|
* i386.h (GENERAL_REG_P): Add missing REG_P.
|
||
|
|
||
|
2001-03-14 Laurynas Biveinis <lauras@softhome.net>
|
||
|
|
||
|
* configure.in: Use $gcc_cv_as instead of $as.
|
||
|
* configure: Regenerated.
|
||
|
|
||
|
2001-03-14 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppfiles.c (stack_include_file): Only increase the include
|
||
|
count if we actually process the file properly, as opposed
|
||
|
to treating it as length zero. Only call read_include_file
|
||
|
if not DO_NOT_REREAD. Handle the -H include file output
|
||
|
here.
|
||
|
(read_include_file): Remove now redundant DO_NOT_REREAD check.
|
||
|
(cpp_included, find_include_file): Simplify pathnames after
|
||
|
remapping them. If remapping, don't use the remapped file
|
||
|
name's buffer as our scratch buffer.
|
||
|
(cpp_pop_file_buffer): Replace the multiple include macro
|
||
|
only if it isn't yet set.
|
||
|
(read_name_map): Simplify remapped names when reading in.
|
||
|
(remap_filename): Move code to code path that uses it.
|
||
|
(_cpp_simplify_pathname): Return the input pointer.
|
||
|
* cpphash.h (_cpp_simplify_pathname): Update prototype.
|
||
|
|
||
|
2001-03-14 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* expr.c (expand_expr): Revove bogus conditional.
|
||
|
|
||
|
Wed Mar 14 19:29:50 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* expr.c (emit_move_insn_1): Guard PUSH_ROUNDING use by ifdef.
|
||
|
|
||
|
2001-03-14 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* reg-stack.c (stack_result): Unconditionally use
|
||
|
FUNCTION_OUTGOING_VALUE resp. FUNCTION_VALUE.
|
||
|
|
||
|
Wed Mar 14 16:36:25 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* expr.c (emit_move_insn_1): Split push of complex value when
|
||
|
no suitable push instruction exist.
|
||
|
|
||
|
* i386.md (QImode move/add/shift patterns): Use ANY_QI_REG_P
|
||
|
instead of QI_REG_P.
|
||
|
|
||
|
Tue Mar 13 22:22:04 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* alias.c (handled_component_p, can_address_p): New functions.
|
||
|
(get_alias_set): Use them.
|
||
|
|
||
|
2001-03-13 Jim Wilson <wilson@redhat.com>
|
||
|
|
||
|
* config/ia64/ia64.c (find_gr_spill): Subtract frame_pointer_needed
|
||
|
from 80 in try_locals code.
|
||
|
(ia64_expand_prologue): Add comment pointing to find_gr_spill change.
|
||
|
|
||
|
2001-03-13 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* aclocal.m4 (gcc_AC_COMPILE_CHECK_SIZEOF, gcc_AC_C_CHAR_BIT,
|
||
|
gcc_AC_C_LONG_LONG): New.
|
||
|
* configure.in: Use them. Probe the size of short, int, long,
|
||
|
and long long/__int64 if we have them. Move all the AC_C_*
|
||
|
checks together, except gcc_AC_C_CHAR_BIT which has to go
|
||
|
after AC_CHECK_HEADERS(limits.h).
|
||
|
Take hwint.h out of host_xm_file and build_xm_file.
|
||
|
|
||
|
* hwint.h: Unconditionally define HOST_BITS_PER_CHAR,
|
||
|
HOST_BITS_PER_SHORT, HOST_BITS_PER_INT, HOST_BITS_PER_LONG,
|
||
|
and HOST_BITS_PER_LONGLONG in terms of SIZEOF_* and CHAR_BIT.
|
||
|
Move the HOST_WIDEST_INT setup logic here from system.h.
|
||
|
Provide HOST_WIDEST_INT even if HOST_BITS_PER_LONGLONG is not
|
||
|
defined.
|
||
|
* system.h: Include hwint.h after limits.h. HOST_WIDEST_INT
|
||
|
is now handled by hwint.h.
|
||
|
|
||
|
* config/alpha/xm-alpha-interix.h, config/alpha/xm-vms.h,
|
||
|
config/c4x/xm-c4x.h, config/i370/xm-oe.h,
|
||
|
config/ia64/xm-ia64.h: Don't define any of:
|
||
|
HOST_BITS_PER_LONG, HOST_BITS_PER_CHAR, HOST_BITS_PER_SHORT,
|
||
|
HOST_BITS_PER_LONGLONG.
|
||
|
|
||
|
* config/alpha/xm-alpha.h, config/dsp16xx/xm-dsp16xx.h,
|
||
|
config/h8300/xm-h8300.h, config/mips/iris6.h,
|
||
|
config/mn10200/xm-mn10200.h, config/pa/xm-pa64hpux.h,
|
||
|
config/sparc/xm-sp64.h: Delete.
|
||
|
* config.gcc: Remove references to deleted files.
|
||
|
|
||
|
* config/arm/xm-arm.h, config/mips/xm-mips.h: Don't define
|
||
|
HOST_FLOAT_FORMAT to IEEE_FLOAT_FORMAT.
|
||
|
* config/i370/xm-linux.h: Clarify floating-point situation in
|
||
|
a comment.
|
||
|
|
||
|
2001-03-13 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppfiles.c (NO_INCLUDE_PATH): New macro.
|
||
|
(find_include_file): Decide here which part of the include
|
||
|
chain to start the search. Complain about an empty include
|
||
|
chain in all cases apart from an abolsute file name.
|
||
|
(_cpp_execute_include): Don't choose the search chain here.
|
||
|
Don't call handle_missing_include in the case of an empty
|
||
|
include chain.
|
||
|
(_cpp_compare_file_date): Don't choose the search chain here.
|
||
|
* cpplib.c (do_include_next): Move the in-main-file diagnostic
|
||
|
here from _cpp_execute_include. Behave like #include if
|
||
|
we're in the main file.
|
||
|
|
||
|
2001-03-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* system.h (malloc, realloc, calloc, strdup): Only poison these
|
||
|
tokens when IN_GCC is defined.
|
||
|
|
||
|
Tue Mar 13 14:38:44 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (abs?f expander): Support SSE case.
|
||
|
(abd?f_if): Add new "USE"; add splitters.
|
||
|
|
||
|
2001-03-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* cpp.texi (poison): Explain the macro expansion exception.
|
||
|
|
||
|
2001-03-13 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* expr.c (store_expr): Add dont_store_target. If temp is already in
|
||
|
target before copying to reg, don't store it into target again.
|
||
|
|
||
|
2001-03-12 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppinternals.texi: Update for file handling.
|
||
|
|
||
|
2001-03-12 Jeffrey Oldham <oldham@codesourcery.com>
|
||
|
|
||
|
* emit-rtl.c (remove_unnecessary_notes): Reverse Richard Kenner's
|
||
|
2001-02-24 which broke building the Java library.
|
||
|
* function.c (identify_blocks): Likewise.
|
||
|
(all_blocks): Likewise.
|
||
|
* integrate.c (integrate_decl_tree): Likewise.
|
||
|
* print-tree.c (print_node): Likewise.
|
||
|
* tree.h (BLOCK_NUMBER): Likewise.
|
||
|
(struct tree_block): Likewise.
|
||
|
|
||
|
2001-03-12 David Edelsohn <edelsohn@gnu.org>
|
||
|
|
||
|
* rs6000/aix51.h (CPP_SPEC, CPLUSPLUS_CPP_SPEC): Fix typo in
|
||
|
__WCHAR_TYPE__ definition.
|
||
|
(WCHAR_TYPE_SIZE): #undef before #define.
|
||
|
|
||
|
2001-03-12 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppfiles.c: Update comments.
|
||
|
(destroy_include_file_node): Rename destroy_node.
|
||
|
(find_or_create_entry): New function.
|
||
|
(open_file, _cpp_fake_include): Use it.
|
||
|
(handle_missing_header): New function, broken out of
|
||
|
_cpp_execute include. Don't segfault if there is no
|
||
|
system or quoted path.
|
||
|
(_cpp_execute_include): Use handle_missing_header.
|
||
|
|
||
|
2001-03-12 Jeffrey Oldham <oldham@codesourcery.com>
|
||
|
|
||
|
* jump.c (reversed_comparison_code_parts): Reverse Jan Hubricka's
|
||
|
2001-02-28 patch because it breaks arm-linux and mips-sgi-irix6.5.
|
||
|
|
||
|
Mon Mar 12 14:05:32 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* flow.c (insn_dead_p): Don't consider two memrefs equivalent
|
||
|
unless anti_dependence says they are.
|
||
|
* alias.c (objects_must_conflict): If neither has a type specified,
|
||
|
they must conflict.
|
||
|
|
||
|
2001-03-12 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
David Billinghurst <David.Billinghurst@riotinto.com>
|
||
|
|
||
|
* config/mips/iris5.h: Change WCHAR_TYPE to int.
|
||
|
|
||
|
Mon Mar 12 16:32:21 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (trunctfdf2_2): Rename missnamed pattern.
|
||
|
(*_one_bit): Remove type on the match_operand in attributes.
|
||
|
|
||
|
Mon Mar 12 16:27:56 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c: Commit forgotten hunk in previous patch.
|
||
|
(regclass_map): Add extended registers.
|
||
|
(dbx_register_map): Add missing frame register.
|
||
|
|
||
|
Mon Mar 12 15:41:08 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (all XFmode patterns except swapxf): Disable for 64bit.
|
||
|
|
||
|
* i386.md (x86_sahf_1): Disable for 64bit.
|
||
|
(popsi*, pophi*): Likewise.
|
||
|
(pushqi, pushhi): Likewise.
|
||
|
(movdi, pushdi): Likewise.
|
||
|
(zero extend DImode splitter): Likewise.
|
||
|
(adddi, minusdi splitter): Likewise.
|
||
|
(umulsidi): Likewise.
|
||
|
(umulsi): New.
|
||
|
(mulsidi): Disable for 64bit
|
||
|
(lshift:DI/ashift:DI): Disable for 64bit.
|
||
|
(loop patterns): Likewise.
|
||
|
(call_pop, call_value_pop expanders and patterns): Likewise.
|
||
|
(prologue_get_pc): Likewise.
|
||
|
(leave): Likewise.
|
||
|
(fcmovDI pattern and splitter): Likewise.
|
||
|
(movdfcc_1_rex64): New.
|
||
|
|
||
|
Mon Mar 12 15:16:36 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.h (VALID_FP_MODE_P): XFmode is invalid on x86_64.
|
||
|
(MODES_TIEABLE_P): QImodes and DImodes are tiable on x86_64.
|
||
|
(HARD_REGNO_CALLER_SAVE_MODE): Save QImodes as QImodes for x86_64.
|
||
|
(STATIC_CHAIN_REGNUM): Set to r10 for x86_64.
|
||
|
(PIC_OFFSET_TABLE_REGNUM): Set to INVALID_REGNUM for x86_64.
|
||
|
(LIMIT_RELOAD_CLASS): Avoid limiting of QImodes on x86_64.
|
||
|
(SECONDARY_OUTPUT_RELOAD_CLASS): No need to QImodes.
|
||
|
(PUSH_ROUNDING): x86_64 rounds to 64bits.
|
||
|
(CONSTANT_ADDRESS_P): Accept CONST_DOUBLE.
|
||
|
(REGPARM_MAX): Set to 6 for x86_64.
|
||
|
(SSE_REGPARM_MAX): Set to 16 for x86_64.
|
||
|
* i386.c (hard_regno_mode_ok): QImodes can be in all general purpose
|
||
|
registers.
|
||
|
|
||
|
* (patterns that does use upper halves): Update constraints
|
||
|
'q' to 'Q' and 'r' to 'R'.
|
||
|
(cmpqi_ext_1): Disable for 64bit.
|
||
|
(cmpqi_ext_3_insn): Likewise.
|
||
|
(movqi_extzv_1): Likewsie.
|
||
|
(addqi_ext_1): Liekwsie
|
||
|
(testqi_ext_1): Liekwsie
|
||
|
(andqi_ext_1): Liekwsie
|
||
|
(xorqi_ext_1): Liekwsie
|
||
|
(cmpqi_ext_1_rex64): New.
|
||
|
(cmpqi_ext_3_insn_rex64): Likewise.
|
||
|
(movqi_extzv_1_rex64): Likewsie.
|
||
|
(addqi_ext_1_rex64): Liekwsie
|
||
|
(testqi_ext_1_rex64): Liekwsie
|
||
|
(andqi_ext_1_rex64): Liekwsie
|
||
|
(xorqi_ext_1_rex64): Liekwsie
|
||
|
|
||
|
2001-03-11 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* configure.in: Move check for unsigned enumerated bitfields
|
||
|
to macro in aclocal.m4. Disable it for now.
|
||
|
* configure, config.in: Regenerate.
|
||
|
* system.h: Don't do anything with ONLY_INT_FIELDS. Use the
|
||
|
unsigned-int form of ENUM_BITFIELD() unless being compiled by GCC.
|
||
|
* varasm.c (struct rtx_const): Use ENUM_BITFIELD(). Move enum
|
||
|
kind above its first use.
|
||
|
|
||
|
* config/xm-interix.h, config/alpha/xm-alpha.h,
|
||
|
config/i370/xm-linux.h, config/i386/xm-beos.h,
|
||
|
config/i386/xm-mingw32.h, config/mips/xm-mips.h,
|
||
|
config/pa/xm-pa.h, config/pa/xm-pa64hpux.h,
|
||
|
config/rs6000/xm-beos.h, config/rs6000/xm-sysv4.h,
|
||
|
Don't define ONLY_INT_FIELDS under any circumstances.
|
||
|
|
||
|
* config/pa/xm-pa.h: Don't define __BSD_NET2__.
|
||
|
|
||
|
* config/pa/xm-pahpux.h, config/pa/xm-papro.h,
|
||
|
config/sparc/xm-sysv4.h: Delete - now identical with some
|
||
|
other xm header.
|
||
|
* config.gcc (hppa targets): Replace xm-pahpux.h and
|
||
|
xm-papro.h with implicit xm-pa.h.
|
||
|
(sparc targets): Replace xm-sysv4.h with implicit or explicit
|
||
|
xm-sparc.h.
|
||
|
|
||
|
2001-03-12 Aldy Hernandez <aldyh@redhat.com>
|
||
|
|
||
|
* reload1.c (reload_cse_simplify): Call reload_cse_simplify_set
|
||
|
before reload_cse_noop_set_p.
|
||
|
|
||
|
2001-03-11 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* config.gcc: Where xm-host.h used to include another
|
||
|
xm-host.h, list the nested header directly in xm_file. Remove
|
||
|
references to deleted files. Can now use sparc/xm-sp64.h for
|
||
|
sparcv9-*-solaris*.
|
||
|
|
||
|
* config/xm-linux.h, config/arm/xm-linux.h,
|
||
|
config/i386/xm-dos.h, config/i386/xm-gnu.h,
|
||
|
config/i386/xm-linux.h, config/i386/xm-openbsd.h,
|
||
|
config/i860/xm-fx2800.h, config/m68k/xm-atari.h,
|
||
|
config/m68k/xm-linux.h, config/m68k/xm-sun3.h,
|
||
|
config/sparc/xm-linux.h, config/sparc/xm-sysv4-64.h:
|
||
|
Delete.
|
||
|
|
||
|
* config/alpha/xm-alpha-interix.h: Don't include alpha/xm-alpha.h.
|
||
|
* config/mips/xm-iris5.h: Don't include mips/xm-mips.h. Don't
|
||
|
bother to wrap #undef in #ifdef.
|
||
|
* config/pa/xm-linux.h, config/rs6000/xm-sysv4.h:
|
||
|
Don't include xm-linux.h.
|
||
|
* config/sparc/xm-sp64.h: Don't include sparc/xm-sparc.h.
|
||
|
|
||
|
* configure.in: Wrap regexps using [] in changequote block.
|
||
|
Use expr : not echo | grep. Simplify regexps.
|
||
|
* configure: Regenerate.
|
||
|
|
||
|
56 xm-files remain, 22 xm-arch.
|
||
|
|
||
|
2001-03-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* mips-tfile.c: Cast arg to PTR when specifier is HOST_PTR_PRINTF.
|
||
|
(__proto, PTR_T, CPTR_T): Delete, use PARAMS/PTR instead.
|
||
|
(local_index, local_rindex): Delete, use strchr/strrchr instead.
|
||
|
(copy_object): Fix format specifier vs argument mismatch.
|
||
|
|
||
|
* mips-tdump.c: Make local functions static.
|
||
|
(rindex): Don't #undef.
|
||
|
(__proto, PTR_T, CPTR_T): Delete, use PARAMS/PTR instead.
|
||
|
(fatal, fancy_abort): Delete.
|
||
|
(read_seek): Avoid signed/unsigned compare.
|
||
|
|
||
|
Sun Mar 11 17:01:41 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* combine.c (try_combine): Fix error in change to try original
|
||
|
register.
|
||
|
(gen_rtx_combine): Do same as gen_rtx for now.
|
||
|
|
||
|
2001-03-11 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* configure.in: AC_SUBST xm_defines.
|
||
|
* configure: Regenerate.
|
||
|
* Makefile.in: Set DEFINES=$(xm_defines) when building
|
||
|
tconfig.h.
|
||
|
|
||
|
2001-03-11 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppfiles.c (INCLUDE_LEN_FUDGE, ENOMEM): Delete.
|
||
|
(cpp_included, find_include_file): Update.
|
||
|
(_cpp_compare_file_date): Make else unconditional.
|
||
|
|
||
|
2001-03-10 kaz Kojima <kkojima@rr.iij4u.or.jp>
|
||
|
|
||
|
* config/sh/sh.h (LEGITIMATE_PIC_OPERAND_P): Defined.
|
||
|
|
||
|
2001-03-10 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
|
||
|
|
||
|
* config/sh/sh.md (umulhisi3_i, mulhisi3_i): Fix mnemonics.
|
||
|
* config/sh/lib1funcs.asm (mulsi3): Convert mulu to mulu.w.
|
||
|
|
||
|
Sat Mar 10 22:42:05 2001 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* tree.c (build_common_tree_nodes_2): Don't copy va_list_type_node
|
||
|
if it's a record type.
|
||
|
|
||
|
Sat Mar 10 17:52:54 2001 Christopher Faylor <cgf@cygnus.com>
|
||
|
|
||
|
* config/i386/cygwin.h: Make ../w32api a system directory. Reorganize
|
||
|
mingw includes slightly.
|
||
|
|
||
|
2001-03-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* system.h (malloc, realloc, calloc, strdup, bzero, bcmp, rindex):
|
||
|
#undef token before poisoning it.
|
||
|
|
||
|
2001-03-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* alpha.c (check_float_value): Use memcpy, not bcopy.
|
||
|
|
||
|
* m32r.c (m32r_sched_reorder): Likewise.
|
||
|
|
||
|
* vax.c (check_float_value): Likewise.
|
||
|
|
||
|
2001-03-10 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* toplev.c (file_name_nondirectory): Remove.
|
||
|
* toplev.h: Similarly.
|
||
|
* dwarf2out.c (compute_section_prefix): Use lbasename instead
|
||
|
of file_name_nondirectory.
|
||
|
|
||
|
Sat Mar 10 10:36:45 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* mips-tdump.c (read_seek): Call xmalloc, not malloc.
|
||
|
* mips-tfile.c: Don't #undef rindex; not used.
|
||
|
|
||
|
Sat Mar 10 14:34:59 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.h (DBX_REGISTER_NUMBER): Return proper values for 64bits.
|
||
|
(dbx64_register_map): Declare.
|
||
|
(RETURN_ADDR_RTX): Fix for 64bit.
|
||
|
(DWARF_FRAME_RETURN_COLUMN): Set to 16 for 64bit.
|
||
|
(INCOMING_FRAME_SP_OFFSET): Set to 8.
|
||
|
* i386.c (dbx64_register_map): New global array.
|
||
|
* beos-elf.h, freebsd.h, i386-interix.h, i386elf.h,
|
||
|
linux.h (DBX_REGISTER_REGNUMBER): Use dbx64_register_map
|
||
|
for 64bits.
|
||
|
|
||
|
2001-03-10 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppfiles.c (search_from): Use lbasename.
|
||
|
* mkdeps.c (deps_add_default_target): Use lbasename.
|
||
|
|
||
|
2001-03-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* fixinc/server.c (load_data, run_shell): Use xmalloc, xrealloc &
|
||
|
xcalloc in lieu of malloc, realloc & calloc.
|
||
|
|
||
|
* gencheck.c (xmalloc): Use really_call_malloc, not malloc.
|
||
|
|
||
|
* gengenrtl.c (xmalloc): Likewise.
|
||
|
|
||
|
* gensupport.c (xcalloc, xrealloc, xmalloc): Use the
|
||
|
really_call_* memory allocation routines.
|
||
|
|
||
|
* stmt.c (check_for_full_enumeration_handling): Use
|
||
|
really_call_calloc, not calloc.
|
||
|
|
||
|
* system.h (really_call_malloc, really_call_calloc,
|
||
|
really_call_realloc): Define.
|
||
|
(malloc, realloc, calloc, strdup, bzero, bcmp, rindex): Poison.
|
||
|
|
||
|
Fri Mar 9 18:39:19 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* pa.md (builtin_longjmp): Rework slightly to work for PA64 too.
|
||
|
|
||
|
2001-03-09 Nicola Pero <n.pero@mi.flashnet.it>
|
||
|
|
||
|
* configure: Rebuilt.
|
||
|
* configure.in: Only use `lang_requires' for languages athat are
|
||
|
actually enabled.
|
||
|
|
||
|
2001-03-09 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* invoke.texi: Fix typo.
|
||
|
* gcc.1: Regenerate.
|
||
|
|
||
|
2001-03-09 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* configure.in: Prune nonexistent files from build_xm_file,
|
||
|
xm_file, and host_xm_file lists. Warn unless they're
|
||
|
$cpu/xm-$cpu.h.
|
||
|
Don't generate *config.h here.
|
||
|
AC_SUBST all variables needed to generate *config.h.
|
||
|
* configure: Regenerate.
|
||
|
* mkconfig.sh: New helper script, from code removed from
|
||
|
configure.in.
|
||
|
* Makefile.in: Zap all MALLOC variables - no longer used
|
||
|
anywhere, and malloc.c doesn't exist.
|
||
|
Substitute in variables needed to generate *config.h.
|
||
|
Stop lying about the dependencies contained in CONFIG_H and
|
||
|
GCONFIG_H.
|
||
|
(HCONFIG_H, TCONFIG_H, TM_P_H): New variables.
|
||
|
(config.h, hconfig.h, tconfig.h, tm_p.h, cs-config.h,
|
||
|
cs-hconfig.h, cs-tconfig.h, cs-tm_p.h): New rules.
|
||
|
(all .o): Add dependencies on $(HCONFIG_H), $(TCONFIG_H),
|
||
|
$(TM_P_H), etc. as appropriate.
|
||
|
|
||
|
* config.gcc: Zap references to deleted files.
|
||
|
* ggc-none.c: Don't include rtl.h or tm_p.h.
|
||
|
|
||
|
* config/i386/xm-beos.h, config/i386/xm-dgux.h,
|
||
|
config/i386/xm-djgpp.h, config/i386/xm-dos.h,
|
||
|
config/i386/xm-gnu.h, config/i386/xm-i386-interix.h,
|
||
|
config/i386/xm-linux.h, config/i386/xm-linux.h,
|
||
|
config/i386/xm-next.h, config/i386/xm-openbsd.h,
|
||
|
config/i386/xm-sun.h, config/i386/xm-sysv3.h:
|
||
|
Don't include i386/xm-i386.h.
|
||
|
|
||
|
* config/elxsi/xm-elxsi.h, config/i386/xm-bsd386.h,
|
||
|
config/i386/xm-i386.h, config/i860/xm-i860.h,
|
||
|
config/i960/xm-i960.h, config/mcore/xm-mcore.h,
|
||
|
config/mn10300/xm-mn10300.h, config/ns32k/xm-ns32k.h,
|
||
|
config/pj/xm-pj.h, config/sh/xm-sh.h, config/v850/xm-v850.h:
|
||
|
Delete (empty except comments, #includes of other deleted
|
||
|
files, and macros used nowhere).
|
||
|
|
||
|
Fri Mar 9 20:05:27 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.h (MAX_WCHAR_TYPE_SIZE): New constant to keep tradcpp
|
||
|
independent on TARGET_FLAGS.
|
||
|
|
||
|
Fri Mar 9 19:52:52 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.h (FIRST_PSEUDO_REGISTER): Set to 53.
|
||
|
|
||
|
(FIXED_REGISTERS, CALL_USED_REGISTERS, REG_ALLOC_ONES): Add
|
||
|
extended ones.
|
||
|
(CONDITIONAL_REGISTER_USAGE): Set proper values according to
|
||
|
TARGET_64BIT.
|
||
|
(FIRST_REX_INT_REG, LAST_REX_INT_REG, FIRST_REX_SSE_REG,
|
||
|
LAST_REX_SSE_REG): define.
|
||
|
(enum reg_class): Add 'LEGACY_REGS'
|
||
|
(REG_CLASS_CONTENTS): Likewise; add extended registers.
|
||
|
(SSE_REGNO_P): Recognize extended registers.
|
||
|
(ANY_QI_REG_P, REX_INT_REGNO_P, REX_INT_REG_P): New.
|
||
|
(REG_CLASS_FROM_LETTER): Add 'R' and 'Q'.
|
||
|
(REGNO_OK_FOR_INDEX_P, REGNO_OK_FOR_BASE_P,
|
||
|
REG_OK_FOR_BASE_NONSTRICT_P): Recognize REX registers.
|
||
|
(REG_OK_FOR_STRREG_NONSTRICT_P, REG_OK_FOR_STRREG_STRICT_P,
|
||
|
REG_OK_FOR_STRREG_P): Remove.
|
||
|
(HI_REGISTER_NAMES): Add extended registers.
|
||
|
(ADDITIONAL_REGISTER_NAMES): Likewise.
|
||
|
(QI_REGISTER_NAMES): Add 8bit extended registers.
|
||
|
(DEBUG_REG): Support extended registers.
|
||
|
* i386.c (regclass_map): Add extended registers.
|
||
|
(dbx_register-map): Likewise.
|
||
|
(svr4_dbx_register_map): Likewise.
|
||
|
(print_reg): Support extended registers.
|
||
|
(print_operand): Support 64bit operands.
|
||
|
|
||
|
Fri Mar 9 19:37:46 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Set to 128bit for x86_64
|
||
|
(BOOL_TYPE_SIZE, SHORT_TYPE_SIZE, INT_TYPE_SIZE,
|
||
|
FLOAT_TYPE_SIZE, LONG_TYPE_SIZE, MAX_LONG_TYPE_SIZE,
|
||
|
DOUBLE_TYPE_SIZE, LONG_LONG_TYPE_SIZE): New constants.
|
||
|
(BITS_PER_WORD, UNITS_PER_WORD, POINTER_SIZE, PARM_BOUNDARY,
|
||
|
STACK_BOUNDARY): Set properly for 64bits.
|
||
|
(MAX_BITS_PER_WORD, MIN_UNITS_PER_WORD): New constants.
|
||
|
(EMPTY_FIELD_BOUNDARY): Define using BITS_PER_WORD.
|
||
|
(BIGGEST_FIELD_ALIGNMENT): Set to 128 for 64bits.
|
||
|
(MOVE_MAX): Set to 16.
|
||
|
(MOVE_MAX_PIECES): 8 for 64bit.
|
||
|
(Pmode): Set to SImode.
|
||
|
|
||
|
Fri Mar 9 09:00:36 2001 Mike Stump <mrs@wrs.com>
|
||
|
|
||
|
* cselib.c (hash_rtx): Ensure that hash isn't zero upon return.
|
||
|
|
||
|
Fri Mar 9 17:38:08 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.h (mask_64bit): New constant.
|
||
|
(target_64bit): New macro.
|
||
|
(target_options): Add '64'/'32'
|
||
|
(target_default): Define.
|
||
|
* cygwin.h freebsd-aout.h i386-interix.h i386.h i386elf.h isc.h
|
||
|
isccoff.h netbsd.h next.h openbsd.h p sco.h sco5.h scodbx.h sequent.h
|
||
|
unix.h win32.h (TARGET_DEFAULT): Rename to TARGET_SUBTARGET_DEFAULT.
|
||
|
|
||
|
Thu Mar 8 23:36:56 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* config/pa/som.h (MAKE_DECL_ONE_ONLY, ASM_WEAKEN_LABEL): Disable.
|
||
|
|
||
|
Thu Mar 8 23:29:37 2001 John Wehle (john@feith.com)
|
||
|
|
||
|
* rtlanal.c (rtx_varies_p): Check operand 0 of a
|
||
|
LO_SUM unless for_alias is set.
|
||
|
|
||
|
2001-03-08 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
* objc/objc-act.c: Fix old typos in comments, add comments for
|
||
|
various functions.
|
||
|
(hash_init): Fix file name in error message.
|
||
|
(hash_enter): Ditto.
|
||
|
(hash_add_attr): Ditto.
|
||
|
(continue_class): Ditto.
|
||
|
|
||
|
2001-03-08 Bruce Korb <bkorb@gnu.org>
|
||
|
|
||
|
gcc.c(main): ensure SIGCHLD handling is set to SIG_DFL so that
|
||
|
wait4() can receive the signal.
|
||
|
|
||
|
Thu Mar 8 21:09:10 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||
|
|
||
|
* fixinc/inclhack.def (AAB_dgux_int_varargs): Don't use HTML
|
||
|
entities.
|
||
|
* fixinc/fixincl.x: Regenerate.
|
||
|
|
||
|
Thu Mar 8 21:09:10 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||
|
|
||
|
* fixinc/inclhack.def (AAA_standards): Undo <standards.h> breakage
|
||
|
on Tru64 UNIX.
|
||
|
* fixinc/fixincl.x: Regenerate.
|
||
|
|
||
|
2001-03-08 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* configure.in (HAVE_AS_LEB128): New assembler check.
|
||
|
* configure, config.in: Rebuilt.
|
||
|
|
||
|
Thu Mar 8 19:54:04 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* reg-stack.c (move_for_stack_reg): Avoid non-poping fst for
|
||
|
TFmode too.
|
||
|
|
||
|
2001-03-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* config/ns32k/xm-pc532-min.h, config/we32k/xm-we32k.h: Delete
|
||
|
references to the MAXPATHLEN macro.
|
||
|
|
||
|
* config/alpha/xm-alpha.h, config/arm/xm-arm.h,
|
||
|
config/i386/xm-cygwin.h, config/xm-linux.h: Delete references to
|
||
|
the POSIX macro.
|
||
|
|
||
|
* config/i386/xm-gnu.h, config/xm-gnu.h,
|
||
|
config/alpha/xm-openbsd.h, config/i386/xm-openbsd.h,
|
||
|
config/m68k/xm-openbsd.h, config/mips/xm-openbsd.h,
|
||
|
config/sparc/xm-openbsd.h, config/xm-openbsd.h: Delete empty
|
||
|
and/or unused files.
|
||
|
|
||
|
* config.gcc: Define POSIX in xm_defines as appropriate in lieu of
|
||
|
doing so in various xm-*.h files.
|
||
|
|
||
|
Thu Mar 8 06:32:50 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* config/i386/i386.md (clrstrsi): Call ix86_set_move_mem_attrs.
|
||
|
|
||
|
2001-03-08 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* configure.in (enable_shared): Support per-package shared-library
|
||
|
enabling.
|
||
|
* configure: Rebuilt.
|
||
|
|
||
|
2001-03-07 David Edelsohn <edelsohn@gnu.org>
|
||
|
|
||
|
* rs6000.md (cr logic): Add original POWER mnemonic alternative
|
||
|
for crnot. Set operands[5] in splitter.
|
||
|
|
||
|
2001-03-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* config/i370/xm-mvs.h, config/i370/xm-oe.h,
|
||
|
config/i386/xm-beos.h, config/i386/xm-mingw32.h,
|
||
|
config/m88k/xm-m88k.h, config/mips/xm-iris6.h,
|
||
|
config/mips/xm-openbsd.h, config/pa/xm-pa64hpux.h,
|
||
|
config/pa/xm-pahpux.h, config/rs6000/xm-beos.h,
|
||
|
config/rs6000/xm-darwin.h, config/rs6000/xm-mach.h,
|
||
|
config/rs6000/xm-rs6000.h, config/xm-interix.h: Delete references
|
||
|
to the USG macro.
|
||
|
|
||
|
* config/vax/xm-vaxv.h, config/a29k/xm-unix.h,
|
||
|
config/i370/xm-i370.h, config/i386/xm-dgux.h,
|
||
|
config/i386/xm-sun.h, config/i386/xm-sysv3.h,
|
||
|
config/m68k/xm-tower.h, config/m68k/xm-aux.h,
|
||
|
config/m68k/xm-hp320.h, config/m68k/xm-amix.h,
|
||
|
config/m68k/xm-altos3068.h, config/m68k/xm-mot3300.h,
|
||
|
config/m68k/xm-m68kv.h, config/m88k/xm-openbsd.h,
|
||
|
config/mips/xm-nws3250v4.h, config/mips/xm-sysv.h,
|
||
|
config/mips/xm-iris3.h, config/mips/xm-iris4.h, config/xm-svr3.h,
|
||
|
config/xm-svr4.h, config/sparc/xm-pbd.h, config/clipper/xm-clix.h:
|
||
|
Delete unused and/or empty files.
|
||
|
|
||
|
* config.gcc: Define USG in xm_defines as appropriate. Define
|
||
|
POSIX in lieu of xm-svr4.h. Delete all references to the SVR3
|
||
|
macro. Remove deleted xm-* files from $xm_files variable.
|
||
|
|
||
|
2001-03-07 Tom Tromey <tromey@redhat.com>
|
||
|
|
||
|
* configure: Rebuilt.
|
||
|
* configure.in: Allow config-lang.in to set `lang_requires' to list
|
||
|
of other required languages.
|
||
|
|
||
|
2001-03-07 Andrew MacLeod <amacleod@redhat.com>
|
||
|
|
||
|
* config/a29k/a29k.c (print_operand): Free a29k_last_prologue_insn
|
||
|
after its emitted.
|
||
|
(output_prologue): Use xmalloc not oballoc.
|
||
|
(output_epilog): Free a29k_first_epilogue_insn when finished.
|
||
|
* confif/a29k/a29k.h (PREDICATE_CODES): Remove shift_constant_operand.
|
||
|
|
||
|
2001-03-07 Brad Lucier <lucier@math.purdue.edu>
|
||
|
|
||
|
* builtins.c (expand_builtin_mathfn): Check
|
||
|
flag_unsafe_math_optimizations, not flag_fast_math.
|
||
|
(expand_builtin): Likewise
|
||
|
* combine.c (combine_simplify_rtx): Likewise.
|
||
|
(simplify_if_then_else): Likewise.
|
||
|
* cse.c (fold_rtx): Likewise.
|
||
|
* flags.h: Remove flag_fast_math. Add
|
||
|
flag_unsafe_math_optimizations and flag_trapping_math.
|
||
|
* fold-const.c (negate_expr): Check
|
||
|
flag_unsafe_math_optimizations, not flag_fast_math.
|
||
|
(invert_truthvalue): Likewise.
|
||
|
(fold): Likewise. Before associating operands, check that
|
||
|
code == MULT_EXPR, not code != MULT_EXPR.
|
||
|
* ifcvt.c (noce_try_minmax): Check
|
||
|
flag_unsafe_math_optimizations, not flag_fast_math.
|
||
|
(noce_operand_ok): Check flag_trapping_math, not flag_fast_math.
|
||
|
* invoke.texi: Document -funsafe-math-optimizations and
|
||
|
-fno-trapping-math. Change documentation for -ffast-math.
|
||
|
* jump.c (reversed_comparison_code_parts): Likewise.
|
||
|
(rtx_equal_for_thread_p): Likewise.
|
||
|
* optabs.c (emit_conditional_move): Likewise.
|
||
|
* simplify-rtx.c (simplify_binary_operation): Likewise.
|
||
|
(simplify_relational_operation): Likewise.
|
||
|
(simplify_ternary_operation): Likewise.
|
||
|
* toplev.c: Remove flag_fast_math. Add flag_trapping_math and
|
||
|
flag_unsafe_math_optimizations. Remove fast-math entry from f_options.
|
||
|
Add trapping-math and unsafe-math-optimizations entries to f_options.
|
||
|
(set_fast_math_flags): New, sets flags for -ffast-math.
|
||
|
(set_no_fast_math_flags): New, sets flags for -fno-fast-math.
|
||
|
(decode_f_option): Add code to handle -ffast-math and -fno-fast-math.
|
||
|
* toplev.h: Declare set_fast_math_flags and set_no_fast_math_flags.
|
||
|
|
||
|
* config/alpha/alpha.c (alpha_emit_conditional_branch): Likewise.
|
||
|
(alpha_emit_conditional_move): Initialize local_fast_math to
|
||
|
flag_unsafe_math_optimizations, not flat_fast_math.
|
||
|
* config/c4x/c4x.c (c4x_override_options): Call set_fast_math_flags
|
||
|
instead of setting flag_fast_math to 1.
|
||
|
* config/convex/convex.md: Check flag_unsafe_math_optimizations,
|
||
|
not flag_fast_math.
|
||
|
* config/i386/i386.c (override_options): Likewise
|
||
|
* config/i386/i386.md: Likewise.
|
||
|
* config/m68k/m68k.md: Likewise.
|
||
|
* config/mips/mips.md: Likewise.
|
||
|
* config/rs6000/rs6000.c (validate_condition_mode): Likewise.
|
||
|
(rs6000_generate_compare): Likewise.
|
||
|
|
||
|
2001-03-07 Laurynas Biveinis <lauras@softhome.net>
|
||
|
|
||
|
* Makefile.in: Set RANLIB to @RANLIB@.
|
||
|
Remove RANLIB_TEST.
|
||
|
|
||
|
2001-03-07 Laurynas Biveinis <lauras@softhome.net>
|
||
|
|
||
|
* fixinc/inclhack.def (djgpp_wchar_h): New test.
|
||
|
* fixinc/fixincl.x: Regenerated.
|
||
|
|
||
|
2001-03-07 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/alpha/alpha.md (call_osf_1_noreturn): New pattern.
|
||
|
|
||
|
2001-03-07 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* emit-rtl.c (remove_unnecessary_notes): Verify proper nesting
|
||
|
of block notes and exception handling notes.
|
||
|
|
||
|
* lists.c (init_EXPR_INSN_LIST_cache): Don't check initialized.
|
||
|
* toplev.c (rest_of_compilation): Call init_EXPR_INSN_LIST_cache ...
|
||
|
(compile_file): ... here.
|
||
|
|
||
|
2001-03-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* fixinc/Makefile.in (FIXINC_DEFS): Add -DHAVE_CONFIG_H.
|
||
|
|
||
|
* fixinc/gnu-regex.c: Don't include auto-host.h since we get
|
||
|
config.h now. Include libiberty.h to handle alloca.
|
||
|
|
||
|
2001-03-06 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* c-parse.in (yylexname): New function, split out of _yylex.
|
||
|
(objc_rid_sans_at): New table.
|
||
|
(init_reswords): Initialize it.
|
||
|
(_yylex): Give labels clearer names. Handle CPP_ATSIGN by
|
||
|
retrieving the next token and checking it for significance as
|
||
|
an ObjC keyword or string constant.
|
||
|
|
||
|
* cpplex.c (_cpp_lex_token): Just return CPP_ATSIGN for '@'.
|
||
|
* cpplib.h (TTYPE_TABLE): Add CPP_ATSIGN, drop CPP_OSTRING.
|
||
|
|
||
|
* c-lex.c, c-parse.in, cppmacro.c, cpplex.c: Remove references
|
||
|
to CPP_OSTRING.
|
||
|
|
||
|
2001-03-06 Stephen L Moshier <moshier@mediaone.net>
|
||
|
|
||
|
* config/m68k/m68k.c (const_uint32_operand): Accept any
|
||
|
const_int on a 32-bit host.
|
||
|
|
||
|
2001-03-06 Nicola Pero <n.pero@mi.flashnet.it>
|
||
|
|
||
|
* objc/objc-act.c (init_objc): Set save_lang_status,
|
||
|
restore_lang_status, and mark_lang_status.
|
||
|
|
||
|
2001-03-06 Krister Walfridsson <cato@df.lth.se>
|
||
|
|
||
|
* dwarf2asm.c (dw2_asm_output_delta): Fix smallest_mode_for_size call.
|
||
|
|
||
|
2001-03-06 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppinternals.texi: Update.
|
||
|
|
||
|
2001-03-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* config/a29k/xm-a29k.h, config/a29k/xm-unix.h,
|
||
|
config/alpha/xm-alpha.h, config/arc/xm-arc.h, config/arm/xm-arm.h,
|
||
|
config/c4x/xm-c4x.h, config/clipper/xm-clix.h,
|
||
|
config/convex/xm-convex.h, config/d30v/xm-d30v.h,
|
||
|
config/dsp16xx/xm-dsp16xx.h, config/elxsi/xm-elxsi.h,
|
||
|
config/h8300/xm-h8300.h, config/i370/xm-i370.h,
|
||
|
config/i370/xm-linux.h, config/i370/xm-mvs.h, config/i370/xm-oe.h,
|
||
|
config/i386/xm-i386.h, config/i860/xm-i860.h,
|
||
|
config/i960/xm-i960.h, config/ia64/xm-ia64.h,
|
||
|
config/m32r/xm-m32r.h, config/m68k/xm-m68k.h,
|
||
|
config/m88k/xm-m88k.h, config/mcore/xm-mcore.h,
|
||
|
config/mips/xm-mips.h, config/mn10200/xm-mn10200.h,
|
||
|
config/mn10300/xm-mn10300.h, config/ns32k/xm-ns32k.h,
|
||
|
config/pa/xm-linux.h, config/pa/xm-pa.h, config/pa/xm-pa64hpux.h,
|
||
|
config/pa/xm-pahpux.h, config/pa/xm-papro.h, config/pj/xm-pj.h,
|
||
|
config/romp/xm-romp.h, config/rs6000/xm-beos.h,
|
||
|
config/rs6000/xm-lynx.h, config/rs6000/xm-rs6000.h,
|
||
|
config/rs6000/xm-sysv4.h, config/sh/xm-sh.h,
|
||
|
config/sparc/xm-sparc.h, config/sparc/xm-sysv4.h,
|
||
|
config/v850/xm-v850.h, config/vax/xm-vax.h, config/vax/xm-vms.h,
|
||
|
config/we32k/xm-we32k.h: Delete HOST_BITS_PER_* definitions which
|
||
|
match the defaults provided in hwint.h.
|
||
|
|
||
|
* config/i386/xm-lynx.h, config/m68k/xm-lynx.h,
|
||
|
config/sparc/xm-lynx.h, config/xm-std32.h: Delete files.
|
||
|
|
||
|
* config.gcc (xm_file): Don't set to files which are deleted.
|
||
|
|
||
|
* hwint.h: Provide default values for HOST_BITS_PER_*. No longer
|
||
|
guard this file against these macros being undefined.
|
||
|
|
||
|
2001-03-06 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* objc/objc-act.c (objc_add_static_instance): Set DECL_INITIAL
|
||
|
and DECL_DEFER_OUTPUT on the decl we create, before calling
|
||
|
rest_of_decl_compilation.
|
||
|
|
||
|
2001-03-06 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* aclocal.m4 (AM_GNU_GETTEXT): Don't AC_REQUIRE
|
||
|
AC_FUNC_ALLOCA.
|
||
|
* configure, config.in: Regenerate.
|
||
|
* config.gcc: Remove references to deleted files.
|
||
|
|
||
|
* genattr.c, genattrtab.c, genextract.c, genoutput.c,
|
||
|
genrecog.c, rtl.c: Do not use alloca anywhere.
|
||
|
|
||
|
* Makefile.in, build-make, system.h, config/x-interix,
|
||
|
config/x-svr4, config/xm-interix.h, config/xm-openbsd.h,
|
||
|
config/alpha/xm-alpha.h, config/alpha/xm-vms.h,
|
||
|
config/arc/xm-arc.h, config/arm/xm-arm.h,
|
||
|
config/d30v/xm-d30v.h, config/dsp16xx/xm-dsp16xx.h,
|
||
|
config/h8300/xm-h8300.h, config/i370/x-oe,
|
||
|
config/i370/xm-linux.h, config/i386/x-aix, config/i386/x-beos,
|
||
|
config/i386/x-ncr3000, config/i386/x-sco5,
|
||
|
config/i386/xm-dgux.h, config/i860/x-sysv4,
|
||
|
config/i960/xm-i960.h, config/m32r/xm-m32r.h,
|
||
|
config/m68k/x-crds, config/m68k/x-dpx2, config/m68k/x-hp320,
|
||
|
config/m68k/x-hp320g, config/m69k/x-mot3300,
|
||
|
config/m68k/x-mot3300-gas, config/m68k/xm-amix.h,
|
||
|
config/m68k/xm-hp320.h, config/m68k/xm-m68kv.h,
|
||
|
config/m68k/xm-mot3300.h, config/m88k/x-dolph,
|
||
|
config/m88k/x-sysv4, config/m88k/x-tekXD88,
|
||
|
config/m88k/xm-m88k.h, config/mcore/xm-mcore.h,
|
||
|
config/mips/x-iris, config/mips/x-iris3,
|
||
|
config/mips/x-sni-svr4, config/mips/x-sysv,
|
||
|
config/mips/xm-iris6.h, config/mips/xm-mips.h,
|
||
|
config/mips/xm-nws3250v4.h, config/pa/x-hpux,
|
||
|
config/pa/x-pa-mpeix, config/pa/xm-pa.h,
|
||
|
config/pa/xm-pa64hpux.h, config/pa/xm-pahpux.h,
|
||
|
config/pa/xm-papro.h, config/romp/xm-romp.h,
|
||
|
config/rs6000/x-aix31, config/rs6000/x-aix41,
|
||
|
config/rs6000/x-beos, config/rs6000/x-lynx,
|
||
|
config/rs6000/x-mach, config/rs6000/x-rs6000,
|
||
|
config/rs6000/x-sysv4, config/rs6000/xm-rs6000.h,
|
||
|
config/rs6000/xm-sysv4.h, config/sh/xm-sh.h,
|
||
|
config/sparc/x-sysv4, config/sparc/xm-linux.h,
|
||
|
config/sparc/xm-pbd.h, config/sparc/xm-sparc.h,
|
||
|
config/vax/xm-vms.h: Eradicate all references to alloca and
|
||
|
related stuff.
|
||
|
|
||
|
* config/xm-alloca.h, config/clipper/x-clix,
|
||
|
config/i386/xm-sysv4.h, config/i860/x-fx2800,
|
||
|
config/i860/x-sysv3, config/m88k/x-sysv3,
|
||
|
config/sparc/xm-sol2.h, config/we32k/x-we32k: Delete
|
||
|
(contained only alloca related hacks).
|
||
|
|
||
|
* config/i386/xm-beos.h, config/rs6000/xm-beos.h: Just define
|
||
|
USE_C_ALLOCA.
|
||
|
|
||
|
2001-03-05 Brad Lucier <lucier@math.purdue.edu>
|
||
|
|
||
|
* invoke.texi: Document __FAST_MATH__.
|
||
|
|
||
|
2001-03-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* crtstuff.c: Restore include of auto-host.h.
|
||
|
|
||
|
2001-03-05 Fergus Henderson <fjh@cs.mu.oz.au>
|
||
|
|
||
|
Put main() in a separate file, so that the language
|
||
|
front-end can use a different main().
|
||
|
|
||
|
* main.c: New.
|
||
|
* toplev.c: (main): Rename as toplev_main.
|
||
|
* toplev.h: Declare toplev_main.
|
||
|
* Makefile.in (OBJS): add toplev.o.
|
||
|
(BACKEND): remove toplev.o, add main.o.
|
||
|
|
||
|
2001-03-04 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppfiles.c (search_from): Special case the empty string.
|
||
|
|
||
|
2001-03-04 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppfiles.c (_cpp_execute_include): Don't make a null-terminated
|
||
|
copy of the filename. Don't use CPP_PREV_BUFFER. Don't call
|
||
|
strlen or strcpy; we already know the length.
|
||
|
(_cpp_compare_file_date): Similarly.
|
||
|
* cpphash.h (struct cpp_reader): Delete done_initialising.
|
||
|
(CPP_PREV_BUFFER): Delete.
|
||
|
* cppinit.c (cpp_start_read): Don't set done_initialising.
|
||
|
* cpplex.c (parse_string): Guarantee null-termination.
|
||
|
(_cpp_equiv_toklists): Remove.
|
||
|
* cpplib.c (glue_header_name): Null-terminate.
|
||
|
(do_line): Don't leak memory.
|
||
|
* cpplib.h (BT_WEAK): Delete.
|
||
|
* cppmain.c (cb_ident): Strings are now null-terminated.
|
||
|
|
||
|
2001-03-04 Laurynas Biveinis <lauras@softhome.net>
|
||
|
|
||
|
* gcc.c (convert_filename): Append executable suffix
|
||
|
if NO_AUTO_EXE_SUFFIX is not defined.
|
||
|
* gcc.texi: Document NO_AUTO_EXE_SUFFIX.
|
||
|
* config/i386/djgpp.h: Define NO_AUTO_EXE_SUFFIX.
|
||
|
|
||
|
2001-03-03 David O'Brien <obrien@FreeBSD.org>
|
||
|
|
||
|
from 2000-09-06 Zack Weinberg <zack@wolery.cumb.org>
|
||
|
* c-parse.gperf, c-gperf.h: Delete.
|
||
|
(c-gperf.h was accidently re-added to the CVS repo in the rev
|
||
|
1.16 commit by tromey)
|
||
|
|
||
|
2001-03-03 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpplex.c (_cpp_lex_token): Don't warn about directives in
|
||
|
macro arguments when looking for the '('.
|
||
|
* cppmacro.c (funlike_invocation_p): Set parsing_args to
|
||
|
2 when really parsing arguments; 1 when looking for '('.
|
||
|
Always restore the lexer position.
|
||
|
|
||
|
2001-03-03 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* longlong.h (umul_ppmm): Don't use a multiline string.
|
||
|
|
||
|
2001-03-03 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||
|
|
||
|
* fixinc/fixlib.h (t_bool): Add identifier `t_bool' in typedef.
|
||
|
* fixinc/server.c (read_pipe_timeout): Use enum t_bool instead of
|
||
|
t_bool in declaration because pcc can't combine volatile with typedef
|
||
|
types.
|
||
|
|
||
|
Sat Mar 3 19:47:13 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (ix86_expand_fp_compare): Delay creating of scratch register
|
||
|
until when it is really needed.
|
||
|
(ix86_expand_compare): Update call of ix86_expand_fp_compare.
|
||
|
* i386.h (PREDICATE_CODES): Add all codes for sse_comparison_operator
|
||
|
* i386.md (float?i?f splitter): Don't force source operand to memory
|
||
|
for SSE.
|
||
|
(sse_movdfcc): Fix constraint.
|
||
|
(sse_movdfcc splitter): Handle properly the second alternative.
|
||
|
|
||
|
2001-03-03 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpplex.c (parse_string): Unconditionally pedwarn.
|
||
|
|
||
|
2001-03-03 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpp.texi: Update.
|
||
|
* cppexp.c (parse_number): Update.
|
||
|
* cpplex.c (parse_string): Pedwarn if multiline string does not
|
||
|
result from a system header's macro.
|
||
|
* cpplib.h (sys_objmacro_p): Rename sys_macro_p.
|
||
|
* cppmacro.c (sys_objmacro_p): Rename sys_macro_p. Return true
|
||
|
for function-like macros too.
|
||
|
* c-lex.c (lex_number): Update.
|
||
|
|
||
|
2001-03-03 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* dwarf2out.c (output_call_frame_info): Fix augmentation length.
|
||
|
|
||
|
Sat Mar 3 04:17:17 2001 J"orn Rennecke <amylaar@redhat.com>
|
||
|
|
||
|
* combine.c (try_combine): If split with mode-changed scratch
|
||
|
register didn't work, try the original mode.
|
||
|
|
||
|
Sat Mar 3 03:46:47 2001 J"orn Rennecke <amylaar@redhat.com>
|
||
|
|
||
|
* tm.texi: Change STRUCT_FORCE_BLK to MEMBER_TYPE_FORCES_BLK.
|
||
|
* config/c4x/c4x.h: Likewise.
|
||
|
* stor-layout.c (compute_record_mode): Likewise.
|
||
|
(layout_type, case ARRAY_TYPE): Use MEMBER_TYPE_FORCES_BLK.
|
||
|
|
||
|
2001-03-02 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* configure.in: Kill tm.h. Include the files in the $tm_file
|
||
|
list in all three of config.h, hconfig.h, tconfig.h, after the
|
||
|
relevant set of xm_files. Put TARGET_CPU_DEFAULT in all
|
||
|
three, include insn-codes.h in all three (#ifndef GENERATOR_FILE).
|
||
|
* configure: Regenerate.
|
||
|
* Makefile.in (clean): Don't delete tm.h.
|
||
|
|
||
|
* system.h: If SUCCESS_EXIT_CODE and FATAL_EXIT_CODE are not
|
||
|
defined, set them from EXIT_SUCCESS and EXIT_FAILURE. If
|
||
|
those are not defined, set SEC and FEC to 0 and 1.
|
||
|
* gcc.texi: Update to match.
|
||
|
|
||
|
* crtstuff.c: Include tconfig.h, not auto-host.h and tm.h.
|
||
|
* config/fp-bit.c, config/m68k/aux-crt2.asm,
|
||
|
config/m68k/aux-crtn.asm, config/m68k/aux-mcount.c:
|
||
|
Include tconfig.h, not tm.h.
|
||
|
|
||
|
* config/xm-lynx.h, config/xm-std32.h,
|
||
|
config/a29k/xm-a29k.h, config/a29k/xm-unix.h,
|
||
|
config/alpha/xm-alpha.h, config/arc/xm-arc.h,
|
||
|
config/avr/xm-avr.h, config/c4x/xm-c4x.h,
|
||
|
config/clipper/xm-clix.h, config/convex/xm-convex.h,
|
||
|
config/d30v/xm-d30v.h, config/dsp16xx/xm-dsp16xx.h,
|
||
|
config/elxsi/xm-elxsi.h, config/fr30/xm-fr30.h,
|
||
|
config/h8300/xm-h8300.h, config/i370/xm-linux.h,
|
||
|
config/i386/xm-i386.h, config/i860/xm-i860.h,
|
||
|
config/i960/xm-i960.h, config/ia64/xm-ia64.h,
|
||
|
config/m32r/xm-m32r.h, config/m68hc11/xm-m68hc11.h,
|
||
|
config/m88k/xm-m88k.h, config/mcore/xm-mcore.h,
|
||
|
config/mips/xm-mips.h, config/mn10200/xm-mn10200.h,
|
||
|
config/mn10300/xm-mn10300.h, config/ns32k/xm-ns32k.h,
|
||
|
config/pa/xm-linux.h, config/pa/xm-pa.h,
|
||
|
config/pa/xm-pa64hpux.h, config/pa/xm-pahpux.h,
|
||
|
config/pa/xm-papro.h, config/pdp11/xm-pdp11.h,
|
||
|
config/pj/xm-pj.h, config/romp/xm-romp.h,
|
||
|
config/rs6000/xm-beos.h, config/rs6000/xm-rs6000.h,
|
||
|
config/rs6000/xm-sysv4.h, config/sh/xm-sh.h,
|
||
|
config/sparc/xm-sparc.h, config/sparc/xm-sysv4.h,
|
||
|
config/v850/xm-v850.h, config/vax/xm-vax.h,
|
||
|
config/we32k/xm-we32k.h:
|
||
|
Don't include tm.h.
|
||
|
Don't define SUCCESS_EXIT_CODE or FATAL_EXIT_CODE.
|
||
|
|
||
|
* config/i370/xm-i370.h, config/i370/xm-mvs.h,
|
||
|
config/i370/xm-oe.h: Don't include tm.h. Don't define
|
||
|
SUCCESS_EXIT_CODE.
|
||
|
* config/vax/xm-vms.h: Don't include tm.h.
|
||
|
|
||
|
* config/xm-lynx.h, config/avr/xm-avr.h,
|
||
|
config/fr30/xm-fr30.h, config/pdp11/xm-pdp11.h,
|
||
|
Delete; made empty by above changes.
|
||
|
* config/i386/xm-lynx.h, config/m68k/xm-lynx.h,
|
||
|
config/rs6000/xm-lynx.h, config/sparc/xm-lynx.h:
|
||
|
Don't include config/xm-lynx.h or tm.h.
|
||
|
|
||
|
* config/xm-gnu.h: Don't include fcntl.h.
|
||
|
* config/sparc/xm-lynx.h: Don't include sys/types.h and
|
||
|
sys/wait.h.
|
||
|
* config/clipper/xm-clix.h, config/vax/xm-vax.h: Don't define isinf.
|
||
|
|
||
|
2001-03-02 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* tm.texi (File Framework): Document UNALIGNED_SHORT_ASM_OP,
|
||
|
UNALIGNED_INT_ASM_OP, and UNALIGNED_DOUBLE_INT_ASM_OP.
|
||
|
|
||
|
2001-03-02 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* Makefile.in (OBJS): Add dwarf2asm.o.
|
||
|
* dwarf2asm.c, dwarf2asm.h: New files.
|
||
|
* dwarf2out.c (*): Use them.
|
||
|
(size_of_uleb128, size_of_sleb128): Remove.
|
||
|
(output_uleb128, output_sleb128): Remove.
|
||
|
(UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP): Remove.
|
||
|
(UNALIGNED_DOUBLE_INT_ASM_OP, ASM_BYTE_OP): Remove.
|
||
|
(UNALIGNED_OFFSET_ASM_OP, UNALIGNED_WORD_ASM_OP): Remove.
|
||
|
(FDE_LABEL, LINE_NUMBER_BEGIN_LABEL, LINE_NUMBER_END_LABEL): New.
|
||
|
(ASM_OUTPUT_DWARF_DATA1, ASM_OUTPUT_DWARF_DELTA1): Remove.
|
||
|
(ASM_OUTPUT_DWARF_DATA2, ASM_OUTPUT_DWARF_DELTA2): Remove.
|
||
|
(ASM_OUTPUT_DWARF_DATA4, ASM_OUTPUT_DWARF_DELTA4): Remove.
|
||
|
(ASM_OUTPUT_DWARF_DATA, ASM_OUTPUT_DWARF_DELTA): Remove.
|
||
|
(ASM_OUTPUT_DWARF_ADDR, ASM_OUTPUT_DWARF_ADDR_DATA): Remove.
|
||
|
(ASM_OUTPUT_DWARF_ADDR_DELTA, ASM_OUTPUT_DWARF_ADDR_CONST): Remove.
|
||
|
(ASM_OUTPUT_DWARF_OFFSET4, ASM_OUTPUT_DWARF_OFFSET): Remove.
|
||
|
(ASM_OUTPUT_DWARF_CONST_DOUBLE): Remove.
|
||
|
(ASM_OUTPUT_DWARF_NSTRING, ASM_OUTPUT_DWARF_STRING): Remove.
|
||
|
(dwarf2out_frame_debug): Remove unused variables.
|
||
|
(output_loc_operands): Don't abort on 8 byte constants if
|
||
|
host integers are wide enough.
|
||
|
(output_symbolic_ref): Remove.
|
||
|
(size_of_die): Don't assume 4 byte host integers.
|
||
|
(output_line_info): Use ASM_GENERATE_INTERNAL_LABEL for begin
|
||
|
and end labels.
|
||
|
(add_const_value_attribute) [CONST_INT]: Verify we're not doing
|
||
|
something stupid with HOST_WIDE_INT to long truncation.
|
||
|
[CONST_DOUBLE]: Likewise.
|
||
|
|
||
|
* config/arm/conix-elf.h (UNALIGNED_WORD_ASM_OP): Remove.
|
||
|
(ASM_OUTPUT_DWARF2_ADDR_CONST, ASM_OUTPUT_DWARF_ADDR_CONST): Remove.
|
||
|
* config/arm/unknown-elf.h: Likewise.
|
||
|
* config/rs6000/aix.h (UNALIGNED_SHORT_ASM_OP): New.
|
||
|
(UNALIGNED_INT_ASM_OP, UNALIGNED_DOUBLE_INT_ASM_OP): New.
|
||
|
(ASM_OUTPUT_DWARF_ADDR_VAR, ASM_OUTPUT_DWARF_DELTA_VAR): Remove.
|
||
|
(ASM_OUTPUT_DWARF_DELTA2, ASM_OUTPUT_DWARF_DELTA4): Remove.
|
||
|
(ASM_OUTPUT_DWARF_DELTA, ASM_OUTPUT_DWARF_ADDR_DELTA): Remove.
|
||
|
(ASM_OUTPUT_DWARF_ADDR, ASM_OUTPUT_DWARF_DATA4): Remove.
|
||
|
(ASM_OUTPUT_DWARF_DATA2, ASM_OUTPUT_DWARF_OFFSET4): Remove.
|
||
|
(ASM_OUTPUT_DWARF_OFFSET): Remove.
|
||
|
* config/rs6000/sysv4.h (ASM_OUTPUT_DWARF_ADDR): Remove.
|
||
|
* config/sparc/sp64-elf.h (UNALIGNED_DOUBLE_INT_ASM_OP): New.
|
||
|
(UNALIGNED_LONGLONG_ASM_OP, ASM_OUTPUT_DWARF_ADDR): Remove.
|
||
|
(ASM_OUTPUT_DWARF_ADDR_CONST, ASM_OUTPUT_DWARF_REF): Remove.
|
||
|
|
||
|
2001-03-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||
|
|
||
|
* cselib.c (hash_rtx): Cast enums to unsigned int.
|
||
|
|
||
|
2001-03-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||
|
|
||
|
* print-rtl.c (print_rtx): Cast enums to int for comparison.
|
||
|
* c-decl.c (grokdeclarator): Cast enums to int for comparison and
|
||
|
shifts.
|
||
|
* c-format.c (C_STD_VER): Cast to int for comparisons.
|
||
|
(check_function_format): Cast various enums to int for &.
|
||
|
(maybe_read_dollar_number): Likewise.
|
||
|
(check_format_info): Likewise.
|
||
|
(check_format_info_main): Likewise.
|
||
|
* expr.c (emit_move_insn_1): Cast enums to unsigned int for comparison.
|
||
|
(safe_from_p): Likewise.
|
||
|
* varasm.c (const_hash): Cast enum to int for %.
|
||
|
* emit-rtl.c (init_emit_once): Use int loop variable to work around
|
||
|
pcc enum problems with < and ++ operators.
|
||
|
* regclass.c (init_reg_sets_1): Cast enums for comparison.
|
||
|
(choose_hard_reg_mode): Use unsigned int to iterate over CCmodes.
|
||
|
(regclass_init): Change enum class to int to iterate over reg_classes.
|
||
|
* genrecog.c (merge_trees): Cast enums for comparison.
|
||
|
* rtl.h (GET_CODE): Cast to enum rtx_code.
|
||
|
(PUT_CODE): Cast to ENUM_BITFIELD(rtx_code).
|
||
|
(GET_MODE): Cast to enum machine_mode.
|
||
|
(PUT_MODE): Cast to ENUM_BITFIELD(machine_mode).
|
||
|
(GET_NOTE_INSN_NAME): Cast enum to int.
|
||
|
* tree.h (TREE_CODE): Cast to enum tree_code.
|
||
|
(TREE_SET_CODE): Cast VALUE to ENUM_BITFIELD(tree_code).
|
||
|
* timevar.c (timevar_print): Change loop variable id from enum to
|
||
|
unsigned int.
|
||
|
* fixinc/fixincl.c (VLEVEL): Cast enums in comparison to unsigned int.
|
||
|
* config/i386/i386.md: Use PUT_MODE for mode assignment.
|
||
|
* toplev.c (compile_file): Cast enum DFI to int.
|
||
|
(decode_d_option): Likewise.
|
||
|
|
||
|
Fri Mar 2 12:18:13 2001 Christopher Faylor <cgf@cygnus.com>
|
||
|
|
||
|
* cppinit.c (append_include_chain): Mark "after" include file name list
|
||
|
as a system directory.
|
||
|
* cpp.texi: Document new behavior.
|
||
|
|
||
|
Fri Mar 2 11:59:43 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* ifcvt.c (noce_operand_ok): Handle properly unarry operations.
|
||
|
|
||
|
2001-03-02 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppfiles.c (struct include_file): Update.
|
||
|
(stack_include_file): Use search_from.
|
||
|
(cpp_included, find_include_file): Update.
|
||
|
(cpp_execute_include): Update. ptr->name may not be
|
||
|
null terminated. Use the new search_from member variable
|
||
|
of cpp_buffer.
|
||
|
(_cpp_compare_file_date): Similarly.
|
||
|
(search_from): New function, similar to actual_directory.
|
||
|
(actual_directory): Delete.
|
||
|
(remap_filename): Update. loc->name may not be null terminated.
|
||
|
(struct file_name_list): Rename search_path. Update.
|
||
|
* cpphash.h (struct cpp_buffer): Delete actual_dir. New members
|
||
|
search_from and dir.
|
||
|
(struct cpp_reader): Remove actual_dirs.
|
||
|
* cppinit.c (struct cpp_pending): Update for renamed objects.
|
||
|
(append_include_chain, remove_dup_dir, remove_dup_dirs,
|
||
|
merge_include_chains, cpp_destroy, cpp_start_read): Similarly.
|
||
|
* cpplib.h (struct cpp_options): Similarly.
|
||
|
|
||
|
2001-03-01 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* config/xm-lynx.h, config/xm-std32.h, config/a29k/xm-a29k.h,
|
||
|
config/a29k/xm-unix.h, config/alpha/xm-alpha.h,
|
||
|
config/arc/xm-arc.h, config/arm/xm-arm.h, config/c4x/xm-c4x.h,
|
||
|
config/clipper/xm-clix.h, config/convex/xm-convex.h,
|
||
|
config/d30v/xm-d30v.h, config/dsp16xx/xm-dsp16xx.h,
|
||
|
config/elxsi/xm-elxsi.h, config/fr30/xm-fr30.h,
|
||
|
config/h8300/xm-h8300.h, config/i370/xm-i370.h,
|
||
|
config/i370/xm-linux.h, config/i370/xm-mvs.h,
|
||
|
config/i370/xm-oe.h, config/i386/xm-aix.h,
|
||
|
config/i386/xm-i386.h, config/i386/xm-osf.h,
|
||
|
config/i860/xm-i860.h, config/i960/xm-i960.h,
|
||
|
config/ia64/xm-ia64.h, config/m32r/xm-m32r.h,
|
||
|
config/m68k/xm-m68k.h, config/m88k/xm-m88k.h,
|
||
|
config/mcore/xm-mcore.h, config/mips/xm-mips.h,
|
||
|
config/mn10200/xm-mn10200.h, config/mn10300/xm-mn10300.h,
|
||
|
config/ns32k/xm-ns32k.h, config/pa/xm-linux.h,
|
||
|
config/pa/xm-pa.h, config/pa/xm-pa64hpux.h,
|
||
|
config/pa/xm-pahpux.h, config/pa/xm-papro.h,
|
||
|
config/pj/xm-pj.h, config/romp/xm-romp.h,
|
||
|
config/rs6000/xm-beos.h, config/rs6000/xm-rs6000.h,
|
||
|
config/rs6000/xm-sysv4.h, config/sh/xm-sh.h,
|
||
|
config/sparc/xm-sparc.h, config/sparc/xm-sysv4.h,
|
||
|
config/v850/xm-v850.h, config/vax/xm-vax.h,
|
||
|
config/vax/xm-vms.h, config/we32k/xm-we32k.h:
|
||
|
Do not define TRUE or FALSE.
|
||
|
|
||
|
* config/i386/xm-aix.h, config/i386/xm-osf.h: Delete; made
|
||
|
empty by above change.
|
||
|
* config.gcc: Remove references to these files.
|
||
|
|
||
|
* configure.in: Detect stdbool.h.
|
||
|
* configure, config.in: Regenerate.
|
||
|
* system.h: Include stddef.h here if available.
|
||
|
Set HAVE__BOOL based on GCC_VERSION and __STDC_VERSION__.
|
||
|
Then set up a sensible boolean type at the very end.
|
||
|
|
||
|
* combine.c, cse.c, expr.c, fold-const.c, gensupport.c,
|
||
|
config/mcore/mcore.c: Rename variables named 'true' and/or 'false'.
|
||
|
|
||
|
* hash.h: Delete 'boolean' typedef and related #undefs.
|
||
|
|
||
|
* function.c, ggc-common.c, hash.h, hash.c, tlink.c: Replace
|
||
|
all uses of 'boolean' with 'bool'.
|
||
|
|
||
|
2001-03-01 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||
|
|
||
|
* cpplib.c (_cpp_init_stacks): Cast enum for comparison.
|
||
|
* cppexp.c (lex): Cast enums for comparison.
|
||
|
* cppinit.c (parse_option): Cast enum for comparison.
|
||
|
* cpplex.c (cpp_spell_token): Cast enums to int for minus.
|
||
|
(cpp_output_token): Likewise.
|
||
|
(cpp_can_paste): Cast enums for comparsion and plus/minus.
|
||
|
(cpp_avoid_paste): Cast enums for minus and comparison.
|
||
|
|
||
|
2001-03-01 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* gcc.c, objc/lang-specs.h: Add zero initializer for cpp_spec
|
||
|
field to all array elements.
|
||
|
|
||
|
2001-03-01 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* cpphash.h (struct cpp_reader): Add print_version field.
|
||
|
* cppinit.c (cpp_handle_option): For -v, -version, and --version,
|
||
|
just set print_version and other flags as appropriate.
|
||
|
(cpp_post_options): Print version here if print_version is set.
|
||
|
|
||
|
* toplev.c (exit_after_options): New flag.
|
||
|
(independent_decode_option): Don't exit here; just set
|
||
|
exit_after_options.
|
||
|
(main): Exit after calling lang_hooks.post_options if
|
||
|
exit_after_options is true.
|
||
|
|
||
|
* cppinit.c (append_include_chain): Drop never-used case QUOTE.
|
||
|
(merge_include_chains): Adjust comment to match code.
|
||
|
|
||
|
2001-03-01 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* stringpool.c (set_identifier): New function.
|
||
|
* tree.h: Prototype it.
|
||
|
|
||
|
* c-parse.in: Kill D_YES. If compiled for objc, call
|
||
|
save_and_forget_protocol_qualifiers from init_reswords.
|
||
|
* objc/objc-act.c (remember_protocol_qualifiers,
|
||
|
forget_protocol_qualifiers): Don't diddle C_IS_RESERVED_WORD.
|
||
|
Swap out the non-keyword IDENTIFIER_NODEs for keyword ones, or
|
||
|
vice versa.
|
||
|
(save_and_forget_protocol_qualifiers): New function.
|
||
|
* c-lex.h: Prototype save_and_forget_protocol_qualifiers.
|
||
|
|
||
|
2001-03-01 Diego Novillo <dnovillo@redhat.com>
|
||
|
|
||
|
* c-semantics.c (prune_unused_decls): Return error_mark_node
|
||
|
instead of (tree) 1 to stop traversing the tree chain.
|
||
|
|
||
|
2001-03-01 Bernd Schmidt <bernds@redhat.com>
|
||
|
|
||
|
Fix a problem introduced by Kenner's Feb 18 change.
|
||
|
* toplev.c (rest_of_compilation): Disable flag_cse_follow_jumps and
|
||
|
flag_cse_skip_blocks only temporarily, not for ever.
|
||
|
|
||
|
Thu Mar 1 09:49:58 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* config/pa/som.h (ASM_IDENTIFY_GCC): Define.
|
||
|
(ASM_IDENTIFY_GCC_AFTER_SOURCE): Likewise.
|
||
|
|
||
|
* pa.c (emit_move_sequence): Verify operand0 is a hard register
|
||
|
before determining its register class.
|
||
|
|
||
|
2001-03-01 Bernd Schmidt <bernds@redhat.com>
|
||
|
|
||
|
* config/ia64/ia64.c (ia64_hard_regno_rename_ok): Disallow renaming
|
||
|
from reg 4 if current_function_calls_setjmp.
|
||
|
(gen_nop_type): New function.
|
||
|
(ia64_emit_nops): New function.
|
||
|
(ia64_reorg): Call it.
|
||
|
(ia64_sched_reorder): Move code that rotates bundles up a bit.
|
||
|
|
||
|
* reload1.c (eliminate_regs_in_insn): Restrict the special case
|
||
|
code not to try to optimize adds with anything but a REG destination.
|
||
|
|
||
|
* sched-int.h (struct haifa_insn_data): Add new member priority_known.
|
||
|
(INSN_PRIORITY_KNOWN): New accessor macro.
|
||
|
* haifa-sched.c (priority): Use it instead of testing priority against
|
||
|
zero.
|
||
|
|
||
|
2001-02-28 DJ Delorie <dj@redhat.com>
|
||
|
|
||
|
* config/m68k/m68k.h (MOVE_BY_PIECES_P): Avoid pushing bytes,
|
||
|
since that doesn't work the way gcc wants on a generic m68k.
|
||
|
|
||
|
2001-02-28 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* caller-save.c (save_call_clobbered_regs): Fix typo in
|
||
|
comparison last change.
|
||
|
|
||
|
Wed Feb 28 19:31:42 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (pentium4_cost): New.
|
||
|
(m_PENT4): New macro.
|
||
|
(x86_push_memory, x86_movx,x86_cmove, x86_deep_branch, x86_use_sahf
|
||
|
x86_sub_esp_4, x86_sub_esp_8, x86_add_esp_4, x86_add_esp_8
|
||
|
x86_integer_DFmode_moves, x86_partial_reg_dependency,
|
||
|
x86_memory_mismatch_stall): Add Pentium4
|
||
|
(x86_use_q_reg, x86_use_any_reg): Kill.
|
||
|
(override_options): Add pentium4.
|
||
|
(incdec_operand): Return 0 for pentium4.
|
||
|
(ix86_issue_rate): Add PROCESSOR_PENTIUM4 and PROCESSOR_ATHLON.
|
||
|
* i386.h (x86_use_q_reg, x86_use_any_reg): Kill.
|
||
|
(TARGET_PENTIUM4): Define.
|
||
|
(enum processor_type): Add PROCESSOR_PENTIUM4.
|
||
|
(CPP_CPU_DEFAULT_SPEC): Add pentium4 support.
|
||
|
* i386.md (attribute "cpu"): Add pentium4.
|
||
|
* invoke.texi (march): Add pentium4.
|
||
|
|
||
|
Wed Feb 28 19:28:06 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (sse_mov?fcc*): New patterns and splitters.
|
||
|
* i386.c (ix86_expand_movcc): Work post-reload; recognize
|
||
|
the SSE based conditional moves.
|
||
|
|
||
|
Wed Feb 28 19:18:23 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (attribute mode): Add "TI".
|
||
|
(movsf_1): Add pxor support; remove constant propagation splitter.
|
||
|
(movdf_integer): Likewise.
|
||
|
(movdf_nointeger): Likewise.
|
||
|
(movxf constant prop splitter): Handle all modes; update for SSE.
|
||
|
* i386.h (CONST_DOUBLE_OK_FOR_LETTER): Add 'H' for SSE constants.
|
||
|
* i386.c (standard_80387_constant_p): Rewrite.
|
||
|
(standard_sse_constant_p): New.
|
||
|
* i386-protos.h (standard_sse_constant_p): New.
|
||
|
|
||
|
Wed Feb 28 19:05:37 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (sse_setccsf, sse_setccdf): New.
|
||
|
(sse_cmp* patterns): Use '%D' instead of outputtting condition
|
||
|
flag directly.
|
||
|
* i386.c (sse_comparison_operator): Accept the supported unordered
|
||
|
comparses; be ready for fast_math.
|
||
|
(print_operand): Support 'D'.
|
||
|
|
||
|
Wed Feb 28 18:54:51 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* jump.c (reversed_comparison_code): Kill.
|
||
|
|
||
|
Wed Feb 28 18:50:15 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* toplev.c (rest_of_compilation): Do post-reload splitting unconditionally
|
||
|
for STACK_REGS
|
||
|
|
||
|
Wed Feb 28 18:47:37 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (sse_andti3, sse_nandti_3, sse_xorti3): Add SSE2 versions;
|
||
|
add missing '%' in constraints.
|
||
|
|
||
|
Wed Feb 28 17:24:24 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* c-common.c (build_common_tree_nodes): Build intTI_type_nodes
|
||
|
for HOST_BITS_PER_WIDE_INT == 32 too.
|
||
|
|
||
|
Wed Feb 28 17:22:35 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* caller-save.c (reg_save_code, reg_restore_code): Index by mode, not
|
||
|
NREGS.
|
||
|
(insert_save, insert_restore): New parameter save_mode.
|
||
|
(init_caller_save): Update initialization of reg_save_code
|
||
|
and reg_restore_code.
|
||
|
(save_call_clobbered_regs): Compute save_modes and update calls to
|
||
|
reg_save_code and reg_restore_code.
|
||
|
(insert_restore): Unsignetize numbers; use save_modes to choose mode
|
||
|
of spill; update use of reg_restore_code.
|
||
|
(insert_save): Likewise.
|
||
|
* i386.h (HARD_REGNO_CALLER_SAVE_MODE): Update.
|
||
|
* c4x.h (HARD_REGNO_CALLER_SAVE_MODE): Update.
|
||
|
* regs.h (HARD_REGNO_CALLER_SAVE_MODE): Likewise.
|
||
|
|
||
|
Wed Feb 28 17:19:28 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* ifcvt.c (noce_emit_store_flag, noce_try_store_flag_constants,
|
||
|
noce_try_store_flag_inc, noce_try_store_flag_mask,
|
||
|
noce_try_cmove_arith):
|
||
|
Use reversed_comparison_code instead of reverse_comparison and
|
||
|
can_reverse_comparison_p.
|
||
|
|
||
|
Wed Feb 28 17:17:29 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* jump.c (reversed_comparison_code_parts): Allow reversal of
|
||
|
unordered compares in -ffast-math mode; reverse ordered compares
|
||
|
for FP even w/o -ffast-math.
|
||
|
|
||
|
2001-02-27 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* print-rtl.c (print_rtx) [i]: Don't print field five on
|
||
|
NOTEs other than NOTE_INSN_DELETED_LABEL.
|
||
|
|
||
|
2001-02-27 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* mips/xm-iris4.h: Delete #if 0 block (there since before 1997).
|
||
|
* pa/xm-linux.h, pa/xm-pa.h, pa/xm-papro.h: Don't declare errno.
|
||
|
|
||
|
2001-02-27 Diego Novillo <dnovillo@redhat.com>
|
||
|
|
||
|
* c-common.c (walk_stmt_tree): Visit the chain of the current tree
|
||
|
even if walk_subtrees is 0.
|
||
|
* c-semantics.c (prune_unused_decls): Return a non-null value to
|
||
|
stop traversing the tree chain.
|
||
|
|
||
|
2001-02-27 DJ Delorie <dj@redhat.com>
|
||
|
|
||
|
* config/m68k/m68k.c (output_function_prologue): Save the new CFA
|
||
|
register, *then* define it as the new CFA.
|
||
|
|
||
|
Tue Feb 27 16:49:13 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* pa.c (override_options): Promote -fpic to -fPIC.
|
||
|
(legitimize_pic_address): Simplify due to removal of
|
||
|
small PIC as a code generation option.
|
||
|
(secondary_reload_class): Similarly.
|
||
|
* pa.h (GO_IF_LEGITIMATE_ADDRESS): Similarly.
|
||
|
(PRINT_OPERAND_ADDRESS): Similarly.
|
||
|
* pa.md (various patterns): Similarly.
|
||
|
(small pic lo_sum pattern): Remove.
|
||
|
|
||
|
Tue Feb 27 16:01:13 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
Fergus Henderson
|
||
|
|
||
|
* md.texi (min, max): Document
|
||
|
|
||
|
Tue Feb 27 15:51:35 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (movsf, movdf): Use movaps for reg-reg moves if
|
||
|
TARGET_PARTIAL_REG_DEPENDENCY.
|
||
|
(truncdfsf2_1_sse, truncdfsf2_2): Penalize the fpreg->mem case.
|
||
|
|
||
|
Tue Feb 27 15:36:48 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (mins*, maxs*): New patterns, expanders and splitters.
|
||
|
|
||
|
2001-02-26 Jeffrey Oldham <oldham@codesourcery.com>
|
||
|
|
||
|
* mips.c (mips_make_temp_file): Fix thinko in last change.
|
||
|
|
||
|
2001-02-26 Jason Eckhardt <jle@redhat.com>
|
||
|
|
||
|
* combine.c (known_cond): Do not reverse the condition when
|
||
|
SMAX/UMAX is being considered and the condition is for equality
|
||
|
or inequality.
|
||
|
|
||
|
* testsuite/gcc.c-torture/execute/20010221-1.c: New test.
|
||
|
|
||
|
2001-02-26 Philip Blundell <philb@gnu.org>
|
||
|
|
||
|
* config.gcc: Remove obsolete targets "arm*-*-linuxoldld" and
|
||
|
"armv2-*-linux".
|
||
|
* config/arm/linux-elf.h: Remove historical relics related to
|
||
|
above configurations.
|
||
|
* config/arm/linux-oldld.h: Delete.
|
||
|
* config/arm/linux-elf26.h: Delete.
|
||
|
|
||
|
2001-02-26 Jason Merrill <jason@redhat.com>
|
||
|
|
||
|
* c-decl.c (finish_decl): Set DECL_DEFER_OUTPUT on tentative file-scope
|
||
|
definitions.
|
||
|
* toplev.c (rest_of_decl_compilation): Check DECL_DEFER_OUTPUT to
|
||
|
recognize a tentative definition. Lose obsolete code.
|
||
|
|
||
|
* toplev.c (wrapup_global_declarations): Don't emit DECL_COMDAT
|
||
|
variables unless necessary, either.
|
||
|
|
||
|
2001-02-25 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* ifcvt.c (struct noce_if_info): Add test_bb.
|
||
|
(noce_get_alt_condition): New.
|
||
|
(noce_try_minmax, noce_try_abs): New.
|
||
|
(noce_operand_ok): New.
|
||
|
(noce_process_if_block): Use them.
|
||
|
* rtlanal.c (may_trap_p): NEG and ABS can never trap.
|
||
|
|
||
|
Sun Feb 25 14:26:17 2001 Christopher Faylor <cgf@cygnus.com>
|
||
|
|
||
|
* config/i386/cygwin.h (CPP_SPEC): Add missing space before w32api
|
||
|
include.
|
||
|
|
||
|
2001-02-25 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* config.gcc: Put back pa/t-openbsd and rs6000/t-openbsd.
|
||
|
* config/mips/mips.c (mips_make_temp_file): Set temp_filename
|
||
|
properly.
|
||
|
(mips_asm_file_end): Free temp_filename here.
|
||
|
|
||
|
Sun Feb 25 08:34:23 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* config/i386/i386-protos.h (ix86_set_move_mem_attrs): Move decl.
|
||
|
* config/i386/i386.c (ix86_set_move_mem_attrs_1): Fix typo.
|
||
|
|
||
|
* config/i386/i386.md (movstrsi): Handle FAIL case.
|
||
|
|
||
|
2001-02-25 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppinit.c (builtin_array): Update.
|
||
|
(init_builtins): Flag builtins to warn if redefined or
|
||
|
undefined. Define __GXX_WEAK as a normal macro.
|
||
|
* cpplib.c (do_undef): Warn if flagged NODE_WARN.
|
||
|
* cpplib.h (NODE_WARN): New flag.
|
||
|
* cppmacro.c (builtin_macro): Remove handling of __GXX_WEAK__.
|
||
|
Handle __STDC__ as a builtin only on Solaris.
|
||
|
(warn_of_redefinition): Renamed from check_macro_definition.
|
||
|
Reverse sense of test. Always warn if NODE_WARN.
|
||
|
(_cpp_create_definition): Use warn_of_redefinition. Flag
|
||
|
any macro beginning with "__STDC_" to require a mandatory
|
||
|
warning if redefined or undefined.
|
||
|
|
||
|
2001-02-24 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* xm-interix.h, xm-lynx.h, alpha/xm-vms.h, convex/xm-convex.h,
|
||
|
i370/xm-i370.h, i370/xm-linux.h, i370/xm-mvs.h, i370/xm-oe.h,
|
||
|
i386/xm-beos.h, i386/xm-dos.h, i386/xm-mingw32.h,
|
||
|
i860/xm-i860.h, m68k/xm-3b1.h, m68k/xm-amix.h, m68k/xm-aux.h,
|
||
|
m68k/xm-crds.h, m68k/xm-mot3300.h, m88k/xm-sysv3.h,
|
||
|
mips/xm-mips.h, rs6000/xm-beos.h, vax/xm-vms.h:
|
||
|
Don't define any of:
|
||
|
USE_PROTOTYPES, vfork, mktemp, SVR3, NO_SYS_PARAMS_H,
|
||
|
P_tmpdir, MVS, NO_DBX_FORMAT, USE_STDARGS, STDC_HEADERS,
|
||
|
NO_PRECOMPILES, i860, __PTR_TO_INT, __INT_TO_PTR, rindex,
|
||
|
index, FULL_PROTOTYPES, AUX, R_OK, W_OK, X_OK, F_OK,
|
||
|
STACK_DIRECTION, MIPS, MAX_READ_LEN, MAX_WRITE_LEN.
|
||
|
|
||
|
* alpha/xm-alpha.h, clipper/xm-clix.h, d30v/xm-d30v.h,
|
||
|
fr30/xm-fr30.h, i370/xm-linux.h: Remove commented-out macro
|
||
|
definitions.
|
||
|
|
||
|
* m68k/xm-3b1.h, m68k/xm-crds.h, m88k/xm-sysv3.h:
|
||
|
Delete now-empty file.
|
||
|
|
||
|
* alpha/vms.h: Define NEED_ATEXIT here...
|
||
|
* alpha/xm-vms.h: ...not here.
|
||
|
|
||
|
* i386/cygwin.h: Don't define PARAMS.
|
||
|
* mips/mips.c: Don't prototype mktemp. Don't define
|
||
|
P_tmpdir. Use make_temp_file to create temporary files.
|
||
|
Don't be clever and delete temporary files early.
|
||
|
* config.gcc: Drop references to deleted files. Don't define
|
||
|
FULL_PROTOTYPES.
|
||
|
* gcc.texi: Don't mention USE_PROTOTYPES.
|
||
|
|
||
|
Sat Feb 24 20:25:29 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* config/i386/i386.c (ix86_set_move_mem_attrs): New function.
|
||
|
(ix86_set_move_mem_attrs_1): Likewise.
|
||
|
* config/i386/i386-protos.h (ix86_set_move_mem_attrs): New declaration.
|
||
|
* config/i386/i386.md (movstrsi): Call it.
|
||
|
|
||
|
2001-02-24 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* config.gcc: Expunge references to alpha/t-pe, pa/t-openbsd,
|
||
|
x-linux-aout, i386/t-go32, t-osf, m68k/x-m68kv,
|
||
|
ns32k/xm-netbsd.h, rs6000/t-openbsd, rs6000/t-xnewas,
|
||
|
rs6000/x-aix41-gld. These are nonexistent, empty, or obsolete.
|
||
|
|
||
|
(i750a-*-*): Error here if hosting on i750a.
|
||
|
(alpha*-*-winnt*, ix86-*-winnt3*): Remove stanzas entirely.
|
||
|
|
||
|
* x-linux-aout, xm-freebsd.h, i386/beos-pe.h, ns32k/xm-netbsd.h:
|
||
|
Remove (empty modulo comments).
|
||
|
|
||
|
* 1750a/xm-1750a.h, alpha/config-nt.sed, alpha/win-nt.h,
|
||
|
alpha/xm-winnt.h, i386/config-nt.sed, i386/os2.h,
|
||
|
i386/t-winnt, i386/win-nt.h, i386/xm-freebsd.h, i386/xm-os2.h,
|
||
|
i386/xm-winnt.h, m68k/x-alloca-c, m88k/x-dguxbcs,
|
||
|
mips/x-netbsd, mips/x-nws3250v4, rs6000/t-xnewas,
|
||
|
rs6000/t-xrs6000, rs6000/xm-cygwin.h: Remove (obsolete)
|
||
|
|
||
|
* i386/crtdll.h, i386/cygwin.h, i386/mingw32.h:
|
||
|
Remove reference to winnt.h in comment.
|
||
|
* rs6000/t-newas, rs6000/t-rs6000: Override LIBGCC1_TEST to null.
|
||
|
|
||
|
2001-02-24 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
|
||
|
|
||
|
* loop.c (check_dbra_loop): A biv has uses besides counting if it is
|
||
|
used to set another biv.
|
||
|
|
||
|
Sat Feb 24 06:45:21 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* tree.h (BLOCK_DEAD): New macro.
|
||
|
(struct tree_block): New flag, dead_flag.
|
||
|
* print-tree.c (print_node, case 'b'): Print missing fields.
|
||
|
* emit-rtl.c (remove_unnecessary_notes): Set BLOCK_DEAD.
|
||
|
* function.c (identify_blocks): Enable test for misplaced notes.
|
||
|
(all_blocks): Skip BLOCK_DEAD blocks.
|
||
|
* integrate.c (integrate_decl_tree): Likewise.
|
||
|
|
||
|
* errors.c (internal_error, trim_filename): New functions.
|
||
|
(fancy_abort): Call internal_error.
|
||
|
* errors.h (internal_error, trim_filename): New declarations.
|
||
|
|
||
|
2001-02-24 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/mn10300/mn10300.h (DBX_REGISTER_NUMBER): Reverted
|
||
|
2000-08-26's patch.
|
||
|
(EXTRA_CONSTRAINT): Formatting changes.
|
||
|
|
||
|
2001-02-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* rtl.c (rtl_check_failed_code2): Fix typo in last change.
|
||
|
|
||
|
2001-02-23 Per Bothner <per@bothner.com>
|
||
|
|
||
|
* gcc.c (record_temp_file, pfatal_with_name, error): Make non-static,
|
||
|
so they can be called from java/jvspec.c.
|
||
|
* gcc.h (record_temp_file, pfatal_with_name, error): Declare.
|
||
|
|
||
|
Sat Feb 24 03:32:50 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (ix86_frame): New structure.
|
||
|
(ix86_compute_frame_size): Kill.
|
||
|
(ix86_compute_frame_layout): New.
|
||
|
(ix86_save_reg): New.
|
||
|
(ix86_can_use_return_insn_p): Use frame layout stuff.
|
||
|
(ix86_expand_prologue): Likewise.
|
||
|
(ix86_expand_epilogue): Likewise.
|
||
|
(ix86_initial_elimination_offset): Likewise.
|
||
|
(ix86_nsaved_regs): Use ix86_save_reg.
|
||
|
(ix86_emit_save_regs): Likewise.
|
||
|
|
||
|
Sat Feb 24 03:30:38 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* flow.c (find_sub_basic_blocks): New function.
|
||
|
(split_block): Be ready for basic block introduced by CODE_LABEL.
|
||
|
(commit_one_edge_insertion): Call find_sub_basic_block.
|
||
|
|
||
|
* flow.c (make_edges): Add edge from entry for blocks starting with
|
||
|
label having ALTERNATE_NAME
|
||
|
|
||
|
Sat Feb 24 03:19:42 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* function.c (epilogue_done): Be ready for first basic block not
|
||
|
containing PROLOGUE_END note.
|
||
|
(reposition_prologue_and_epilogue_notes): Avoid placing
|
||
|
PROLOGUE_END note between BASIC_BLOCK.
|
||
|
|
||
|
Sat Feb 24 03:17:09 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* loop.c (canonicalize_condition): Move to reversed_comparison_code.
|
||
|
|
||
|
2001-02-21 DJ Delorie <dj@redhat.com>
|
||
|
|
||
|
* config/i960/i960.h (FRAME_POINTER_REQUIRED): Revert removal of
|
||
|
check for current_function_has_nonlocal_goto from 1999-11-12.
|
||
|
|
||
|
Fri Feb 23 15:28:39 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* diagnostic.c (trim_filename): No longer static.
|
||
|
* toplev.h (trim_filename): Declare.
|
||
|
* rtl.c (rtl_check_failed_bounds): Call internal_error.
|
||
|
(rtl_check_failed_type1, rtl_check_failed_type2): Likewise.
|
||
|
(rtl_check_failed_code1, rtl_check_failed_code2): Likewise.
|
||
|
(rtvec_check_failed_bounds): Likewise.
|
||
|
* tree.c (tree_check_failed, tree_class_check_failed): Likewise.
|
||
|
|
||
|
* convert.c (convert_to_integer): Don't do unsigned unless result or
|
||
|
both inputs are unsigned.
|
||
|
|
||
|
* fold-const.c (fold_convert): Don't call size_int_type_wide if
|
||
|
input overflows.
|
||
|
|
||
|
* c-decl.c (set_block): Set NAMES and BLOCKS from BLOCK.
|
||
|
|
||
|
* varasm.c (output_constant): Recompute CODE after lang-specific fn.
|
||
|
|
||
|
2001-02-23 Jeffrey Oldham <oldham@codesourcery.com>
|
||
|
|
||
|
* Makefile.in (resource.o): Add params.h dependence.
|
||
|
* params.def (MAX_DELAY_SLOT_LIVE_SEARCH): New parameter.
|
||
|
* params.h (MAX_DELAY_SLOT_LIVE_SEARCH): Likewise.
|
||
|
* resource.c: Add dependence on params.h.
|
||
|
(current_live_regs): Fix explanatory comment.
|
||
|
(find_basic_block): Add new parameter to permit limiting search
|
||
|
for a BARRIER.
|
||
|
(mark_target_live_regs): Add new argument to find_basic_block call.
|
||
|
(incr_ticks_for_insn): Likewise.
|
||
|
|
||
|
2001-02-23 Gabriel Dos Reis <gdr@merlin.codesourcery.com>
|
||
|
|
||
|
* diagnostic.c (output_to_stream): Rename to
|
||
|
output_buffer_to_stream. Loses the stream parameter.
|
||
|
(init_output_buffer): Set diagnosic_buffer's stream.
|
||
|
(flush_diagnostic_buffer): Adjust.
|
||
|
(default_print_error_function): Likewise.
|
||
|
(finish_diagnostic): Likewise.
|
||
|
(verbatim): Likewise.
|
||
|
|
||
|
* diagnostic.h (struct output_buffer): Add `stream' field.
|
||
|
(output_buffer_attached_stream): New macro.
|
||
|
|
||
|
2001-02-23 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* fold-const.c (extract_muldiv) [case PLUS_EXPR]: If not MULT_EXPR,
|
||
|
check if either operand is divisible by C.
|
||
|
(multiple_of_p): Handle LSHIFT_EXPR with small constant shift.
|
||
|
If type is signed, consider negative numbers as well.
|
||
|
|
||
|
2001-02-22 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/ia64/crtbegin.asm (.fini): Use pc-relative relocs to
|
||
|
reach .text instead of gp-relative relocs.
|
||
|
* config/ia64/crtend.asm (.init): Likewise.
|
||
|
|
||
|
2001-02-22 Andreas Jaeger <aj@suse.de>
|
||
|
|
||
|
* extend.texi (C++ Attributes): Fix typo.
|
||
|
|
||
|
2001-02-21 David Mosberger <davidm@hpl.hp.com>
|
||
|
|
||
|
* config/ia64/ia64.c (ia64_epilogue_uses): For syscall_linkage
|
||
|
functions, drop current_function_args_info.words test.
|
||
|
(ia64_compute_frame_size): Mark syscall_linkage functions as
|
||
|
using eight input registers.
|
||
|
|
||
|
2001-02-21 Loren J. Rittle <ljrittle@acm.org>
|
||
|
Bruce Korb <bkorb@gnu.org>
|
||
|
|
||
|
* fixinc/inclhack.def (freebsd_gcc3_breakage): new fix
|
||
|
* fixinc/README: Document how to convert sed substitutions
|
||
|
to format style c_fix-es.
|
||
|
* fixinc/fixincl.x: regen
|
||
|
|
||
|
2001-02-21 Jeffrey D. Oldham <oldham@codesourcery.com>
|
||
|
|
||
|
* gcc.c: Add comment explaining how to add a command-line option.
|
||
|
Add title to specs language comment.
|
||
|
|
||
|
2001-02-21 Jeffrey Oldham <oldham@codesourcery.com>
|
||
|
|
||
|
* gcc.c (cc1_options): Add "-param".
|
||
|
(DEFAULT_WORD_SWITCH_TAKES_ARG): Likewise.
|
||
|
(option_map): Likewise.
|
||
|
* toplev.c (display_help): Add entry for "--param".
|
||
|
(independent_decode_option): Fix typographical error.
|
||
|
|
||
|
Wed Feb 21 18:57:28 CET 2001 Catherine Moore <clm@redhat.com>
|
||
|
Bernd Schmidt <bernds@redhat.com>
|
||
|
Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (function_arg_advance): Pass SSE arguments in registers.
|
||
|
(function_arg): Likewise.
|
||
|
|
||
|
Wed Feb 21 18:12:41 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (mmx_lshrdi3, mmx_ashldi3): Guard by unspec.
|
||
|
|
||
|
2001-02-21 Kazu Hirata <kazu@hxi.com>
|
||
|
|
||
|
* config/h8300/h8300.md (iorsi3): Do not output an extra newline
|
||
|
character.
|
||
|
(xorsi3): Likewise.
|
||
|
|
||
|
Wed Feb 21 17:35:24 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* flow.c (init_propagate_block_info): Canon address and use single_set
|
||
|
for killing dead memory stores.
|
||
|
|
||
|
2001-02-21 Jeffrey Oldham <oldham@codesourcery.com>
|
||
|
|
||
|
* Makefile.in (reorg.o): Add params.h dependence.
|
||
|
* params.def: Fix typographical error in comment.
|
||
|
(MAX_DELAY_SLOT_INSN_SEARCH): New parameter.
|
||
|
* params.h: Modify introductory comment.
|
||
|
(MAX_DELAY_SLOT_INSN_SEARCH): New parameter.
|
||
|
* reorg.c: Add dependence on params.h.
|
||
|
(redundant_insn): Add parameterized throttle for search.
|
||
|
(fill_simple_delay_slots): Add a comment explaining a variable.
|
||
|
Move conditional out of loop, simplifying code.
|
||
|
(fill_eager_delay_slots): Fix typographical error in comment.
|
||
|
|
||
|
2001-02-20 Aldy Hernandez <aldyh@redhat.com>
|
||
|
|
||
|
* tm.texi (REVERSE_CONDEXEC_PREDICATES_P): New macro documentation.
|
||
|
|
||
|
* flow.c (ior_reg_cond): Use REVERSE_CONDEXEC_PREDICATES_P macro.
|
||
|
(REVERSE_CONDEXEC_PREDICATES_P): Define macro.
|
||
|
|
||
|
2001-02-21 Jason Merrill <jason@redhat.com>
|
||
|
|
||
|
* tree.h (DECL_UNINLINABLE): Move from C++ frontend.
|
||
|
(struct tree_decl): Add uninlinable bitfield.
|
||
|
* c-decl.c (duplicate_decls): Set it.
|
||
|
* integrate.c (function_cannot_inline_p): Check it.
|
||
|
|
||
|
* dwarf2out.c (add_name_and_src_coords_attributes): Don't add
|
||
|
DW_AT_MIPS_linkage_name to abstract methods.
|
||
|
(dwarf2out_abstract_function): Emit class context before calling
|
||
|
set_decl_abstract_flags. Don't clear DECL_ABSTRACT.
|
||
|
(gen_subprogram_die): Remove obsolete code.
|
||
|
(gen_member_die): Don't include clones in the member list.
|
||
|
(gen_decl_die): Emit abstract info for clone origin.
|
||
|
* dwarfout.c (output_type): Don't include clones in the member list.
|
||
|
* dbxout.c (dbxout_type_methods): Ignore abstract methods.
|
||
|
* toplev.c (note_deferral_of_defined_inline_function): Don't clear
|
||
|
DECL_ABSTRACT on a function that already has it set.
|
||
|
|
||
|
* dwarf2out.c (gen_formal_types_die): Also accept a FUNCTION_DECL.
|
||
|
(get_subprogram_die): Pass it in.
|
||
|
|
||
|
2001-02-21 Richard Earnshaw <rearnsha@arm.com>
|
||
|
|
||
|
* flow.c (mark_set_1): Make not_dead unsigned long. For
|
||
|
non-pseudos, use it as a bitmask of the hard regs that
|
||
|
don't die.
|
||
|
|
||
|
2001-02-21 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppfiles.c: Update comments.
|
||
|
(_cpp_read_file): Don't check for NULL filenames any more.
|
||
|
* cppinit.c (cpp_start_read): Don't do canonicalization of
|
||
|
in_fname and out_fname. Use the passed file name exclusively.
|
||
|
(_cpp_handle_options): Don't treat "-" as a command line option,
|
||
|
but as a normal filename.
|
||
|
(_cpp_post_options): Canonicalize in_fname and out_fname.
|
||
|
* cppmain.c (printer_init): Don't check out_fname for NULL.
|
||
|
* c-lex.c (orig_filename): Rename cpp_filename for clarity.
|
||
|
(init_c_lex): Update, and use "" to represent stdin to CPP.
|
||
|
(yyparse): Update.
|
||
|
|
||
|
2001-02-20 Will Cohen <wcohen@redhat.com>
|
||
|
|
||
|
* config/pa/quadlib.c (_U_Qfcnvfxt_quad_to_usgl): New function.
|
||
|
* config/pa/long_double.h (FIXUNS_TRUNCTFSI2_LIBCALL): Added.
|
||
|
(INIT_TARGET_OPTABS): Use FIXUNS_TRUNCTFSI2_LIBCALL for
|
||
|
fixunstfsi_libfunc.
|
||
|
|
||
|
2001-02-20 Stan Shebs <shebs@apple.com>
|
||
|
|
||
|
* config/rs6000/rs6000.c (output_cbranch): Output branches
|
||
|
on separate lines instead of using ';' to separate.
|
||
|
|
||
|
2001-02-20 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppinit.c (set_lang): Move builtin handling to...
|
||
|
(init_builtins): ...here.
|
||
|
(_cpp_create_reader): Move call to set_lang.
|
||
|
|
||
|
2001-02-20 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* stmt.c (expand_return): If an attempt is made to return the
|
||
|
error_mar_node, treat the return like a return without a value.
|
||
|
|
||
|
2001-02-19 Zack Weinberg <zackw@stanford.edu>
|
||
|
|
||
|
* sibcall.c (skip_copy_to_return_value): Call
|
||
|
identify_call_return_value here, and return orig_insn if it
|
||
|
returns zero. Hardret and softret arguments now unnecessary.
|
||
|
(call_ends_block_p): Don't call identify_call_return_value here.
|
||
|
|
||
|
* ggc-common.c (ggc_mark_rtx_children): No need to mark 'S' or
|
||
|
's' slots in RTXen.
|
||
|
* ggc-page.c, ggc-simple.c (ggc_mark_if_gcable): Delete function.
|
||
|
* ggc.h (ggc_mark_if_gcable): Delete prototype.
|
||
|
|
||
|
Mon Feb 19 20:30:16 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* pa.c (move_operand): Accept code to load the address of a
|
||
|
symbol out of the DLT as a valid move operand.
|
||
|
(print_operand, case 'A'): New to handle generating a DLT
|
||
|
reference for a LO_SUM expression.
|
||
|
* pa.h (EXTRA_CONSTRAINT): Handle 'A' for DLT LO_SUM references.
|
||
|
* pa.md (movsi, movdi patterns): Allow DLT LO_SUM references.
|
||
|
|
||
|
2001-02-19 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* README, cpp.texi, gcc.texi, version.c: Update version number to
|
||
|
3.1.
|
||
|
* cpp.1, gcov.1, gcc.1: Regenerate.
|
||
|
|
||
|
2001-02-19 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppfiles.c (stack_include_file): Generate dependencies
|
||
|
here, and manage include_count here too.
|
||
|
(PRINT_THIS_DEP): Delete.
|
||
|
(_cpp_execute_include): Do not generate dependencies here,
|
||
|
apart from the case of a missing header. Do not manage
|
||
|
include_count.
|
||
|
(_cpp_read_file): Leave dependency generation to
|
||
|
stack_include_file.
|
||
|
|
||
|
Mon Feb 19 10:17:47 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* config.gcc (hppa*64*-*-hpux11*): Add MASK_GAS to
|
||
|
target_cpu_default. Remove dead assignment to
|
||
|
target_cpu_default.
|
||
|
|
||
|
Mon Feb 19 16:47:39 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* regclass.c (contains_reg_of_mode): Make global.
|
||
|
(init_reg_sets): Remove contains_reg_of_mode; take into account
|
||
|
CLASS_MAX_NREGS when looking for the proper mode.
|
||
|
(dump_regclass): Dump only classes considered for the pseudo.
|
||
|
(regclass): Use contains_reg_of_mode.
|
||
|
|
||
|
Mon Feb 19 16:45:42 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* gcc.c (do_spec_1): 'n' for printing notices.
|
||
|
* i386.h (CC1_CPU_SPEC): Notice deprecated options as deprecated.
|
||
|
|
||
|
Mon Feb 19 15:51:30 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* reg-stack.c (next_flags_user): Use current_block->end
|
||
|
(swap_rtx_condition): Look for next user if flags don't die;
|
||
|
give up on CALL_INSNs; use current_block->end.
|
||
|
|
||
|
Mon Feb 19 08:27:21 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* sibcall.c (call_ends_block_p): New function.
|
||
|
(optimize_sibling_and_tail_recursive_call): Use it.
|
||
|
|
||
|
2001-02-18 Kazu Hirata <kazu@hxi.com>
|
||
|
|
||
|
* config/h8300/h8300.md: Update copyright.
|
||
|
(andsi3): Do not output an extra newline character.
|
||
|
|
||
|
Sun Feb 18 15:45:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* toplev.c (note_deferral_of_defined_inlined_function): Argument
|
||
|
FNDECL may be unused.
|
||
|
|
||
|
* toplev.c (rest_of_compilation): Don't have CSE skip blocks or
|
||
|
follow jumps after first run.
|
||
|
If -fexpensive-optimizations rerun CSE after GCSE and iterate until
|
||
|
it doesn't change any jumps.
|
||
|
|
||
|
Sun Feb 18 17:05:50 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* Makefile.in (rtlanal.o): Depend on hard-reg-set.h.
|
||
|
($HOST_PREFIX_1)rtlanal.o: Remove rules for building
|
||
|
(mostlyclean): Corresponding changes.
|
||
|
* rtlanal.c (hard-reg-set.h): Include.
|
||
|
(rtx_unstable_p): Do not treat the argument pointer specially
|
||
|
if it is not a fixed register.
|
||
|
(rtx_varies_p, rtx_addr_can_trap_p): Similarly.
|
||
|
|
||
|
Sun Feb 18 15:45:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* sibcall.c (optimize_sibling_and_tail_recursive_call): Compare
|
||
|
against last real insn in basic block.
|
||
|
Rework to avoid gotos.
|
||
|
|
||
|
* Makefile.in (gcse.o): Now includes ggc.h.
|
||
|
* gcse.c: Include ggc.h.
|
||
|
(want_to_gcse_p): Verify expression can be in SET as valid insn.
|
||
|
(try_replace_reg): Remove warning of uninitialize variable.
|
||
|
(process_insert_insn): Call invalid_insn_p to validate insn.
|
||
|
* recog.c (insn_invalid_p): Now global.
|
||
|
See if can make valid by adding CLOBBERs of SCRATCH only and do if so.
|
||
|
* recog.h (insn_invalid_p): New declaration.
|
||
|
|
||
|
* jump.c (jump_optimize_1): Only define reversed_code #ifdef HAVE_trap.
|
||
|
|
||
|
* config/sparc/sparc.c (eligible_for_epilogue_delay): Don't put
|
||
|
assignments from FP constants since 'Y' output code can't handle it.
|
||
|
(eligible_for_sibcall_delay): Likewise.
|
||
|
|
||
|
* flow.c (print_rtl_and_abort_fcn): Renamed from print_rtl_and_abort.
|
||
|
Call fancy_abort directly, passing args.
|
||
|
(print_rtl_and_abort): Now a macro, like fancy_abort.
|
||
|
|
||
|
* final.c (output_operand_lossage): Use internal_error, not error.
|
||
|
|
||
|
2001-02-18 Shane Nay <shane@agendacomputing.com>
|
||
|
|
||
|
* mips.c (mips_expand_prologue) Add REG_MAYBE_DEAD to
|
||
|
structure shift insns.
|
||
|
|
||
|
2001-02-18 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* invoke.texi (-fsquangle): Remove documentation.
|
||
|
(-fname-mangling-version): Likewise.
|
||
|
|
||
|
2001-02-18 Lars Brinkhoff <lars@nocrew.org>
|
||
|
|
||
|
* optabs.c (expand_abs): Remove reference to
|
||
|
HAVE_contitional_arithmetic.
|
||
|
* combine.c (simplify_set): Likewise.
|
||
|
|
||
|
2001-02-18 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* ifcvt.c (dead_or_predicable): Don't move code if eh regions
|
||
|
would be disrupted.
|
||
|
|
||
|
2001-02-18 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/ns32k/ns32k.h (ADJSP): Upcase arguments.
|
||
|
|
||
|
* config/alpha/alpha.md (movsi_fix): Fix typo in pattern name.
|
||
|
|
||
|
* reload1.c (reload_cse_simplify_set): Fix typo.
|
||
|
|
||
|
Sun Feb 18 09:30:09 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* diagnostic.c (_fatal_insn): Decrement errorcount.
|
||
|
|
||
|
* invoke.texi (-I): Add note avoiding use for system header files.
|
||
|
|
||
|
* rtl.h (add_clobbers): Remove duplicate declaration.
|
||
|
* recog.h (added_clobbers_hard_reg_p): New declaration.
|
||
|
* genemit.c (struct clobber_pat): New field has_hard_reg.
|
||
|
(gen_insn): Record if added clobbers clobber hard reg.
|
||
|
(gen_split): Avoid unused warning if number of operands is 0.
|
||
|
(output_added_clobbers_hard_reg_p): New function.
|
||
|
(main): Call it.
|
||
|
|
||
|
2001-02-18 Alan Modra <alan@linuxcare.com.au>
|
||
|
|
||
|
* pa.c (hppa_expand_prologue): Simplify code storing return
|
||
|
pointer. For large (>=8k) frames with a post_store, adjust stack
|
||
|
pointer by 8k-64 first rather than by 64. When testing with
|
||
|
VAL_14_BITS_P, always use the actual value rather than the value
|
||
|
negated. Add blockage to prevent scheduling of spills before
|
||
|
stack frame has been created.
|
||
|
(hppa_expand_epilogue): Simplify code loading return pointer.
|
||
|
Allow a slightly larger range for merge_sp_adjust_with_load case.
|
||
|
When testing with VAL_14_BITS_P, always use the actual value.
|
||
|
|
||
|
* pa.c (pa_adjust_insn_length): Check that block move
|
||
|
pattern is a set before looking at operands.
|
||
|
|
||
|
2001-02-17 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* fold-const.c (fold_binary_op_with_conditional_arg): New
|
||
|
function, split out from ...
|
||
|
(fold): ... here.
|
||
|
* tree.def (COND_EXPR): Document the use of VOID_TYPE for
|
||
|
conditional arms that throw exceptions.
|
||
|
|
||
|
* print-tree.c (print_node): Do not use BLOCK_CHAIN when we're not
|
||
|
looking at a BLOCK.
|
||
|
|
||
|
2001-02-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* aclocal.m4 (gcc_AC_CHECK_DECL): Before attempting the test,
|
||
|
define HAVE_DECL_* to 1 to mask potential backup declarations.
|
||
|
* configure: Regenerated.
|
||
|
|
||
|
2001-02-17 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* invoke.texi (-Woverloaded-virtual): Clarify documentation.
|
||
|
|
||
|
2001-02-17 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* reload1.c (reload_cse_simplify_set): Respect LOAD_EXTEND_OP
|
||
|
when replacing a memory load with a register.
|
||
|
|
||
|
Sat Feb 17 14:48:30 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* recog.c (validate_replace_src_1): New.
|
||
|
(validate_replace_src_data): Likewise.
|
||
|
(validate_replace_src): Use note_uses.
|
||
|
* rtl.h (note_uses): Declare.
|
||
|
* rtlanal.c (note_uses): New.
|
||
|
|
||
|
Sat Feb 17 10:52:34 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* reg-stack.c (stack_def): Make field reg unsigned.
|
||
|
(remove_regno_note): Unsignetize parameter.
|
||
|
|
||
|
2001-02-16 Jes Sorensen <jes@linuxcare.com>
|
||
|
|
||
|
* ia64.c (errata_emit_nops): Add VOIDmode as second argument to
|
||
|
shladd_operand() call.
|
||
|
|
||
|
2001-02-16 Bruce Korb <bkorb@gnu.org>
|
||
|
Rodney Brown <RodneyBrown@mynd.com>
|
||
|
|
||
|
* fixinc/mkfixinc.sh: Use C fixincludes for UnixWare 7.
|
||
|
* fixinc/inclhack.def: Add fixinc.svr4 patterns with matching
|
||
|
machine restrictions
|
||
|
* fixinc/fixincl.x: regen
|
||
|
|
||
|
Fri Feb 16 12:41:30 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* gcse.c (hash_scan_set): If cprop, see if REG_EQUAL or REG_EQUIV.
|
||
|
Don't CSE a nop.
|
||
|
(hash_scan_insn): Clean up calls to hash_scan_set.
|
||
|
(compute_kill_rd): REGNO now unsigned.
|
||
|
(try_replace_reg): Rework to use simplify_replace_rtx.
|
||
|
(cprop_jump, cprop_cc0_jump): Likewise.
|
||
|
(cprop_insn): Call find_reg_equal_equiv_note.
|
||
|
Reflect changes to cprop_jump and cprop_cc0_jump.
|
||
|
|
||
|
* recog.c (validate_replace_src): Replace in operands of
|
||
|
ZERO_EXTRACT in SET_DEST.
|
||
|
|
||
|
* cse.c (new_label_ref): New variable.
|
||
|
(insert): Set it instead of recorded_label_ref.
|
||
|
(cse_basic_block): Set recorded_label_ref if new_label_ref use, has
|
||
|
CODE_LABEL for this function, and not already in REG_LABEL note.
|
||
|
|
||
|
2001-02-16 Jeffrey Oldham <oldham@codesourcery.com>
|
||
|
|
||
|
* resource.c (mark_referenced_resources): Fix typo in introductory
|
||
|
comment.
|
||
|
* config/mips/abi64.h (SUBTARGET_TARGET_OPTIONS): Fix typo in
|
||
|
string constant.
|
||
|
|
||
|
2001-02-16 Jason Merrill <jason@redhat.com>
|
||
|
|
||
|
* dwarf2out.c (add_bound_info): Don't crash if SAVE_EXPR_RTL is
|
||
|
NULL.
|
||
|
(gen_subprogram_die): Don't abort on seeing a second definition if
|
||
|
the previous one was abstract. Don't replace an abstract instance
|
||
|
in the lookup table.
|
||
|
|
||
|
* dwarf2out.c (dwarf2out_abstract_function): Rename from
|
||
|
gen_abstract_function.
|
||
|
* dwarf2out.h: Declare it.
|
||
|
* toplev.c (note_outlining_of_inline_function): New fn.
|
||
|
* toplev.h: Declare it.
|
||
|
* integrate.c (output_inline_function): Call it.
|
||
|
* c-decl.c (duplicate_decls): Call it when redefining an extern
|
||
|
inline. Don't inline the new defn.
|
||
|
|
||
|
* tree.h (BLOCK_CHAIN): Use BLOCK_CHECK.
|
||
|
|
||
|
2001-02-16 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
|
||
|
|
||
|
* .gdbinit: Rename to gdbinit.in.
|
||
|
* gdbinit.in: New file,
|
||
|
* configure.in: Generate .gdbinit from gdbinit.in.
|
||
|
* configure: Regenerated.
|
||
|
* Makefile.in (distclean): Always remove .gdbinit.
|
||
|
|
||
|
2001-02-16 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* objc/objc-act.c (start_class): Register implemented_classes with
|
||
|
GC.
|
||
|
|
||
|
2001-02-16 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppfiles.c (_cpp_make_system_header): Generate a file
|
||
|
change callback.
|
||
|
|
||
|
2001-02-15 Jim Meyering <meyering@lucent.com>
|
||
|
|
||
|
* Makefile.in (install-common): Don't depend on installdirs here.
|
||
|
Instead, make each of the lang.install-common targets (e.g.,
|
||
|
c++.install-common in cp/Make-lang.in) depend on it.
|
||
|
(install-driver): Depend on installdirs.
|
||
|
|
||
|
Thu Feb 15 21:30:26 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* flow.c (tidy_fallthru_edge): Never end block on line number NOTE.
|
||
|
|
||
|
* function.c (assign_parms): Set RTX_UNCHANGING_P in pseudo when we
|
||
|
do in memory.
|
||
|
|
||
|
2001-02-15 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* invoke.texi (--param): Document.
|
||
|
|
||
|
Thu Feb 15 15:16:38 2001 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/sh/sh.h (BOOL_TYPE_SIZE): Don't define.
|
||
|
|
||
|
Thu Feb 15 10:52:31 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (extendsfdf2_2): Fix constraints.
|
||
|
|
||
|
Thu Feb 15 09:46:21 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (fop_df_3 splitter): Fix operand number.
|
||
|
|
||
|
Wed Feb 14 12:37:37 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* invoke.texi (-mreg-alloc): Nuke.
|
||
|
* i386.c (ix86_reg_alloc_order, regs_allocated,
|
||
|
order_regs_for_local_alloc): Nuke.
|
||
|
(override_options): Kill reg_alloc code.
|
||
|
* i386.h (TARGET_OPTIONS): Kill reg-alloc.
|
||
|
(REG_ALLOC_ORDER): SSE goes before I387.
|
||
|
(ORDER_REGS_FOR_LOCAL_ALLOC): Kill.
|
||
|
(ix86_reg_alloc_order): Likewise.
|
||
|
* i386-protos.h (ix86_reg_alloc_order): Kill.
|
||
|
|
||
|
2001-02-14 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* toplev.c (f_options): Clarify -fschedule-insns2 documentation.
|
||
|
|
||
|
Wed Feb 14 11:59:58 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.h (RETURN_IN_MEMORY): Fix formating; reject TFmodes
|
||
|
|
||
|
Wed Feb 14 11:12:38 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386-protos.h (ix86_memory_move_cost): Move offline.
|
||
|
* i386.c (ix86_register_move_cost): Compute properly cost of
|
||
|
SSE, MMX and i387 instructions.
|
||
|
(*_cost): Add costs of SSE/MMX moves.
|
||
|
(ix86_memory_move_cost): Move offline from ....; Likewise.
|
||
|
* i386.h (MEMORY_MOVE_COST): .... here;
|
||
|
(struct processor costs): Add new fields to represent costs
|
||
|
of SSE/MMX moves.
|
||
|
|
||
|
Wed Feb 14 10:08:26 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* regclass.c (init_reg_sets_1): Reinstall the optimization of
|
||
|
move_cost together with Matt Kraai's fix.
|
||
|
|
||
|
2001-02-14 Jeffrey Oldham <oldham@codesourcery.com>
|
||
|
|
||
|
* Makefile.in (OBJS): Add params.o.
|
||
|
|
||
|
2001-02-14 Richard Henderson <rth@redhat.com>
|
||
|
DJ Delorie <dj@redhat.com>
|
||
|
|
||
|
* jump.c (jump_optimize_1): When we delete a conditional jump
|
||
|
preceding a non-conditional jump to effectively the same place,
|
||
|
make sure that the combined jump skips any clobber insns between
|
||
|
the two labels.
|
||
|
|
||
|
2001-02-14 Jeffrey Oldham <oldham@codesourcery.com>
|
||
|
|
||
|
* gcc.c (do_spec_1): Fix off-by-one error for '%M' case.
|
||
|
|
||
|
2001-02-14 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* Makefile.in (toplev.o): Depend on params.h.
|
||
|
(intergate.o): Likewise.
|
||
|
(params.o): New target.
|
||
|
* flags.h (inline_max_insns): Remove.
|
||
|
* integrate.c: Include params.h.
|
||
|
Use MAX_INLINE_INSNS instead of inline_max_insns.
|
||
|
* params.c: New file.
|
||
|
* params.h: Likewise.
|
||
|
* params.def: Likewise.
|
||
|
* toplev.c: Include params.h.
|
||
|
(lang_independent_params): New variable.
|
||
|
(decode_f_option): Use the param machinery instead of setting
|
||
|
max_inline_insns.
|
||
|
(independent_decode_option): Handle "--param name=value".
|
||
|
(main): Register language-independent parameters.
|
||
|
|
||
|
Wed Feb 14 11:13:45 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (pushsf, pushdf_nointeger): Fix constraint.
|
||
|
|
||
|
2001-02-14 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* regclass.c (init_reg_sets_1): Revert last two changes.
|
||
|
|
||
|
2001-02-14 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* stor-layout.c (is_pending_size, put_pending_size): New functions.
|
||
|
(variable_size): Call put_pending_size.
|
||
|
* tree.h (is_pending_size, put_pending_size): Add prototypes.
|
||
|
* fold-const.c (extract_muldiv): If SAVE_EXPR is on the pending
|
||
|
sizes list, put newly created SAVE_EXPR there as well.
|
||
|
|
||
|
2001-02-14 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* config/ia64/ia64.c (last_group): Only 2 entries are needed.
|
||
|
(errata_find_address_regs): load_group has only 2 entries.
|
||
|
(errata_emit_nops): Likewise. shladd is not problematic.
|
||
|
Clear last_group if nop was emitted.
|
||
|
(fixup_errata): load_group has only 2 entries.
|
||
|
Optimize.
|
||
|
|
||
|
2001-02-14 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* c-lex.c (lex_number): Only warn traditionally for U suffix
|
||
|
outside system macros.
|
||
|
* cppexp.c (parse_number): Similarly.
|
||
|
* cpplib.h (NODE_SYSHDR, cpp_sys_objmacro_p): New.
|
||
|
* cppmacro.c (struct cpp_macro): New member node.
|
||
|
(parse_args): Only warn about missing rest args if not
|
||
|
a system macro.
|
||
|
(funlike_invocation_p): Similarly for uninvoked funlike macros.
|
||
|
(cpp_sys_objmacro_p): New.
|
||
|
(_cpp_create_definition): Store the node with the macro defn.
|
||
|
Remember if the macro is defined in a system header.
|
||
|
|
||
|
2001-02-13 DJ Delorie <dj@redhat.com>
|
||
|
|
||
|
* configure.in (check_languages): determine languages to check
|
||
|
* Makefile.in (check-c++): alias for check-g++
|
||
|
(check-f77): alias for check-g77
|
||
|
(CHECK_TARGETS): depend on configured languages
|
||
|
|
||
|
Wed Feb 14 01:13:59 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (fixsfsi2, fixdfdi2): Fix previous patch again.
|
||
|
(sqrtsf2): Use TARGET_SSE instead of TARGET_SSE2)
|
||
|
(sqrtsf2 patterns): Use 'x' instead of 'Y'.
|
||
|
(sqrtextendsfdf2): Disable for SSE2.
|
||
|
|
||
|
Wed Feb 14 00:19:28 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (fixsfsi2, fixdfdi2): Fix previous patch again.
|
||
|
(sqrtsf2): Use TARGET_SSE instead of TARGET_SSE2)
|
||
|
(sqrtsf2 patterns): Use 'x' instead of 'Y'.
|
||
|
(sqrtextendsfdf2): Disable for SSE2.
|
||
|
|
||
|
Wed Feb 14 00:11:20 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (movsfcc_1): Support integer cmove instruction.
|
||
|
(movdfcc_1): Likewise; new splitter.
|
||
|
|
||
|
Tue Feb 13 23:19:27 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (output_fp_compare): Support SSE.
|
||
|
(prepare_fp_compare_args): SSE comparisons always support memory.
|
||
|
* i386.h (TARGET_CMOVE): SSE imply cmove.
|
||
|
* i386.md (cmp?f2): Enable for SSE too.
|
||
|
(cmpfp_i*): Support SSE.
|
||
|
(cmpfp_i_sse): New.
|
||
|
(cmpfp_i_sse_only): New.
|
||
|
(s*, b* fp expanters): Enable for SSE too.
|
||
|
(fp_jcc_1_sse, fp_jcc_1_sse_only, fp_jcc_2_sse, fp_jcc_2_sse_only):
|
||
|
New patterns.
|
||
|
|
||
|
Tue Feb 13 23:05:42 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* regclass.c (init_reg_sets_1): Silence warning.
|
||
|
|
||
|
Tue Feb 13 22:03:07 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (sqrt?f2): Change to expander.
|
||
|
(sqrt?f2_1, sqrt?f2_sse_only, sqrt?f2_i387): New.
|
||
|
|
||
|
Tue Feb 13 15:42:05 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* rtlanal.c (find_reg_equal_equiv_note): New function.
|
||
|
* simplify-rtx.c (simplify_gen_unary, simplify_gen_ternary): New fns.
|
||
|
(simplify_gen_relational, simplify_replace_rtx): Likewise.
|
||
|
* rtl.h: Add declarations for above functions.
|
||
|
|
||
|
Tue Feb 13 21:09:11 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* cse.c (cse_main): Converts ifdefs on PIC_OFFSET_TABLE_REGNUM to
|
||
|
conditionals.
|
||
|
* defaults.h (PIC_OFFSET_TABLE_REGNUM): Default to INVALID_REGNUM.
|
||
|
* emit-rtl.c (init_emit_once): Convert ifdefs to conditionals.
|
||
|
* flow.c (mark_regs_live_at_end): Likewise.
|
||
|
(calculate_global_regs_live): Likewise.
|
||
|
* gcse.c (compute_hash_table): Likewise.
|
||
|
(compute_kill_rd): Likewise.
|
||
|
* resource.c (mark_target_live_regs): Likewise.
|
||
|
* rtl.h (INVALID_REGNUM): New macro.
|
||
|
|
||
|
Tue Feb 13 20:59:22 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (fixsfsi2, fixdfdi2): Fix previous patch.
|
||
|
|
||
|
Tue Feb 13 16:32:20 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (fixsfsi2, fixdfdi2): Force operand to register
|
||
|
for SSE.
|
||
|
|
||
|
Tue Feb 13 14:53:16 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (add?f3, sub?f3, mul?f3, dif?f3): Enable for TARGET_SSE(2)
|
||
|
too.
|
||
|
(fop_sf_comm, fop_df_comm, fop_sf_1, fop_df_1): Support SSE.
|
||
|
(fop_sf_comm_sse, fop_df_comm_sse): New patterns.
|
||
|
(fop_sf_1_sse, fop_df_1_sse): New patterns
|
||
|
(fop_*): Disable float_extend and float patterns for SSE compilation.
|
||
|
* i386.c (output_387_binary_op): Support SSE.
|
||
|
|
||
|
Tue Feb 13 14:16:34 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.md (dummy_extendsfdf2): Support SSE2
|
||
|
(extendsfdf2): Enable if 80387 or SSE2.
|
||
|
(extendsfdf2_1): Support SSE2. Disable if SSE2 is avialble
|
||
|
and no MIX_I387_SSE2
|
||
|
(extendsfdf2_1_sse_only): New pattern.
|
||
|
(truncdfsf2): Enable if SSE2 or 80387; Always use SSE only version
|
||
|
of SSE.
|
||
|
(truncdfsf2_1): Support SSE.
|
||
|
(truncdfsf2_2): Support SSE.
|
||
|
(truncdfsf2_2_1_sse): New pattern.
|
||
|
(fixtruncsfsi2): Always use SSE if available.
|
||
|
(fix_truncsfsi_sse): New pattern.
|
||
|
(fix_truncdfsi_sse): New pattern.
|
||
|
(floatsis?f2): Support SSE.
|
||
|
(floatsidf2_i387): New pattern.
|
||
|
(floatsidf2_sse): Likewise.
|
||
|
|
||
|
Tue Feb 13 07:52:04 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* configure.in: Use "have_gnat" variable, not "gnat".
|
||
|
* configure: Regenerated.
|
||
|
|
||
|
* config/sparc/sparc.c (function_value): Treat all non-record
|
||
|
aggregate types like used to treat UNION_TYPE.
|
||
|
|
||
|
Tue Feb 13 13:31:33 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (print_reg): Use ANY_FP_REG instead of FP_REG
|
||
|
* i386.h (MASK_128BIT_LONG_DOUBLE): Renumber
|
||
|
(MASK_SSE2): New.
|
||
|
(MASK_MIX_SSE_I387): New.
|
||
|
(TARGET_SSE): SSE2 imply SSE.
|
||
|
(TARGET_SSE2, TARGET_MIX_SSE_I387): New.
|
||
|
(TARGET_SWITCHES): Add "sse2", "mix-sse-i387".
|
||
|
(enum reg_class): Add new classes.
|
||
|
(REG_CLASS_NAMES): Likewise.
|
||
|
(REG_CLASS_CONTENTS): Likewise.
|
||
|
(ANY_FP_REG_P, ANY_FP_REGNO_P, SSE_REG_P, SSE_FLOAT_MODE): New macros.
|
||
|
(REG_CLASS_FROM_LETTER): 'x' and 'y' is SSE_REGS only when SSE is
|
||
|
supported. Add 'Y' to be SSE_REGS when SSE2 is supported.
|
||
|
(CLASS_MAX_NREGS): Use new macros.
|
||
|
(REGISTER_MOVE_COST): Rewrite using SECONDARY_MEMORY_MAYBE_NEEDED.
|
||
|
* i386.md (pushsf, movsf): Support SSE.
|
||
|
(pushdf_nointeger, pushdf_integer, pushdf): Support SSE, update
|
||
|
splitters to use ANY_FP_REGNO_P.
|
||
|
(movdf_nointeger, movdf_integer): Likewise.
|
||
|
|
||
|
2001-02-13 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* combine.c (UWIDE_SHIFT_LEFT_BY_BITS_PER_WORD): New macro.
|
||
|
(try_combine): Use it.
|
||
|
|
||
|
Tue Feb 13 11:37:06 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.h (SSE_CLASS_P, MMX_CLASS_P, MAYBE_FLOAT_CLASS_P,
|
||
|
MAYBE_SSE_CLASS_P, MAYBE_MMX_CLASS_P): New macros.
|
||
|
(PREFERRED_RELOAD_CLASS, SECONDARY_MEMORY_NEEDED): Move offline.
|
||
|
(REGISTER_MOVE_COST): Likewise.
|
||
|
* i386-protos.h (ix86_secondary_memory_needed,
|
||
|
ix86_preferred_reload_class, ix86_register_move_cost): Declare.
|
||
|
* i386.c (ix86_secondary_memory_needed,
|
||
|
ix86_preferred_reload_class, ix86_register_move_cost): New function.
|
||
|
|
||
|
Die Feb 13 11:04:25 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.h (VALID_FP_MODE_P, VALID_INT_MODE_P): New.
|
||
|
(HARD_REGNO_MODE_OK): Move offline to ....
|
||
|
* i386.c (ix86_hard_regno_mode_ok) ... here;
|
||
|
refuse all incorrect modes.
|
||
|
* i386-protos.h (ix86_hard_regno_mode_ok): Declare.
|
||
|
|
||
|
2001-02-13 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* sparc.md (cmp_cc_arith_op_set): Don't use match_dup on the
|
||
|
entire operator; replicate that and match_dup the operands.
|
||
|
(cmp_ccx_arith_op_set): Likewise.
|
||
|
(cmp_cc_arith_op_not_set): Likewise.
|
||
|
(cmp_ccx_arith_op_not_set): Likewise.
|
||
|
|
||
|
2001-02-13 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* explow.c (trunc_int_for_mode): Sign-extend value to mode.
|
||
|
|
||
|
2001-02-12 Geoffrey Keating <geoffk@redhat.com>
|
||
|
|
||
|
* config/rs6000/sysv4.h (MASK_NO_BITFIELD_WORD): New macro.
|
||
|
(TARGET_NO_BITFIELD_WORD): New macro.
|
||
|
(SUBTARGET_SWITCHES): Add -mbit-word, -mno-bit-word options.
|
||
|
(BITFIELD_NBYTES_LIMITED): Define based on TARGET_NO_BITFIELD_WORD.
|
||
|
|
||
|
Mon Feb 12 18:13:26 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* cselib.c: New file, from simplify-rtx.c.
|
||
|
* simplify-rtx.c: Remove cselib parts.
|
||
|
* Makefile.in: Add cselib.o.
|
||
|
|
||
|
2001-02-12 Geoffrey Keating <geoffk@redhat.com>
|
||
|
|
||
|
* config/rs6000/rs6000.c (rs6000_float_const): Remove warning.
|
||
|
(setup_incoming_varargs): Remove warning.
|
||
|
|
||
|
* config/rs6000/rs6000.c (validate_condition_mode): When
|
||
|
flag_fast_math, allow floating-point conditionals to be reversed.
|
||
|
(rs6000_generate_compare): When flag_fast_math, don't generate
|
||
|
cror operations for FP conditionals.
|
||
|
|
||
|
* config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Handle
|
||
|
-mcall-i960.
|
||
|
(ASM_SPEC): Likewise.
|
||
|
(CC1_ENDIAN_LITTLE_SPEC): Likewise.
|
||
|
(CC1_SPEC): Likewise.
|
||
|
(LINK_TARGET_SPEC): Likewise.
|
||
|
(CPP_ENDIAN_SPEC): Likewise.
|
||
|
* Makefile.in (check-consistency): New target.
|
||
|
|
||
|
2001-02-12 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* c-decl.c (grokdeclarator): In C99 mode, give the more specific
|
||
|
"return type defaults" warning for functions with return type
|
||
|
defaulting to int.
|
||
|
* c-lang.c (c_init): In C99 mode, enable warnings for implicit
|
||
|
function declarations by default rather than only when pedantic.
|
||
|
|
||
|
Mon Feb 12 17:28:48 CET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* regclass.c (init_reg_sets_1): Optimize calculation of move_cost
|
||
|
arrays.
|
||
|
|
||
|
2001-02-12 Nathan Sidwell <nathan@codesourcery.com>
|
||
|
|
||
|
* extend.texi (Deprecated): Deprecate new initializer lists.
|
||
|
|
||
|
2001-02-12 Nathan Sidwell <nathan@codesourcery.com>
|
||
|
|
||
|
* mkdeps.c (deps_add_default_target): Robustify. Add
|
||
|
basename component only.
|
||
|
* cpp.texi (-M): Describe how default target is generated.
|
||
|
* invoke.texi (-M): Likewise.
|
||
|
|
||
|
2001-02-12 Kazu Hirata <kazu@hxi.com>
|
||
|
|
||
|
* toplev.c (push_float_handler): Remove.
|
||
|
(pop_float_handler): Remove.
|
||
|
* toplev.h: Remove prototypes for the above functions.
|
||
|
|
||
|
2001-02-12 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* c-common.c (constant_fits_type_p): New function.
|
||
|
(convert_and_check): Use it.
|
||
|
|
||
|
2001-02-11 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* Makefile.in (GXX_ABI_FLAG): Don't define.
|
||
|
* configure.in (--enable-new-gxx-abi): Remove option.
|
||
|
* config.in: Regenerated.
|
||
|
* configure: Likewise.
|
||
|
|
||
|
2001-02-12 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* lcm.c (compute_earliest): Let EXIT_BLOCK be handled as a regular
|
||
|
basic block.
|
||
|
(optimize_mode_switching) [NORMAL_MODE]: Set up EXIT_BLOCK as a
|
||
|
regular basic block, and arrange for all edges into it to switch
|
||
|
to normal mode.
|
||
|
|
||
|
2001-02-11 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
|
||
|
|
||
|
* Makefile.in (distclean): Do not remove .gdbinit.
|
||
|
|
||
|
2001-02-11 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* Makefile.in (gcc.o): Fix typos.
|
||
|
(protize.o): Likewise.
|
||
|
(unprotoize.o): Likewise.
|
||
|
|
||
|
2001-02-11 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* tree.c (build1): Check for null operand in last change.
|
||
|
|
||
|
2001-02-11 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* fold-const.c (split_tree): Don't assume a constant isn't splittable.
|
||
|
(fold): Don't assume a constant isn't foldable.
|
||
|
* tree.c (build): Set TREE_CONSTANT for an expression with no
|
||
|
side-effects and constant operands.
|
||
|
(build1): Likewise.
|
||
|
|
||
|
2001-02-10 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* jump.c (squeeze_notes): Revert 2000-05-12 change.
|
||
|
|
||
|
2001-02-10 Anthony Green <green@redhat.com>
|
||
|
|
||
|
* cpp.texi (Standard Predefined): Add documentation for
|
||
|
__OPTIMIZE_SIZE__.
|
||
|
|
||
|
* c-common.c (combine_strings): Improve warning message.
|
||
|
|
||
|
2001-02-10 Geoffrey Keating <geoffk@redhat.com>
|
||
|
|
||
|
* config/rs6000/sysv4.h (LINK_TARGET_SPEC): Use two dashes for
|
||
|
--oformat.
|
||
|
* config/rs6000/sysv4le.h (LINK_TARGET_SPEC): Likewise.
|
||
|
|
||
|
Fri Feb 9 15:05:27 2001 Christopher Faylor <cgf@cygnus.com>
|
||
|
|
||
|
* config/i386/t-cygwin (T_CPPFLAGS): Use correct location for
|
||
|
CYGWIN_CROSS_DIR.
|
||
|
|
||
|
2001-02-09 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/sh/sh.md (sibcalli, sibcalli_pcrel, sibcalli): Set
|
||
|
fp_mode attribute.
|
||
|
|
||
|
2001-02-09 Nick Clifton <nickc@redhat.com>
|
||
|
|
||
|
* config/arm/arm.md: Change output contraint on post inc
|
||
|
load/store multiple patterns to be a read/write contraint.
|
||
|
|
||
|
2001-02-09 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* gcc.c (cpp_options): Delete .d files on error. Don't delete
|
||
|
.o files when using the -M options.
|
||
|
|
||
|
2001-02-08 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
|
||
|
David Edelsohn <edelsohn@gnu.org>
|
||
|
|
||
|
* config/rs6000/rs6000.c (output_toc): Allow 32-bit targets to
|
||
|
handle DImode constants. Use one TOC entry for SImode and smaller
|
||
|
constants, aligned properly.
|
||
|
|
||
|
2001-02-08 Jason Merrill <jason@redhat.com>
|
||
|
|
||
|
* config/arm/arm.c (arm_expand_prologue): Do tell the dwarf2 backend
|
||
|
about the SP adjustment for saving the static chain pointer.
|
||
|
* dwarf2out.c (dwarf2out_frame_debug_expr): Use the specified
|
||
|
offset when setting a temporary CFA register.
|
||
|
|
||
|
2001-02-08 Chandrakala Chavva <cchavva@redhat.com>
|
||
|
|
||
|
* config.gcc : New targets, i386-*-chorusos*, sparc-*-chorusos*,
|
||
|
powerpc-*-chorusos* .
|
||
|
* config/rs6000/chorus.h : New file.
|
||
|
* config/i386/chorus.h : New file.
|
||
|
* config/sparc/chorus.h : New file.
|
||
|
* config/sparc/t-chorus-elf : New file.
|
||
|
|
||
|
2001-02-08 David Edelsohn <edelsohn@gnu.org>
|
||
|
|
||
|
* config/rs6000/rs6000.h (ASM_OUTPUT_SYMBOL_REF): Move from here ...
|
||
|
* config/rs6000/aix.h (ASM_OUTPUT_SYMBOL_REF): ... to here.
|
||
|
* config/rs6000/aix51.h (CPLUSCPLUS_CPP_SPEC): Define it.
|
||
|
(__WCHAR_TYPE__): Correct macro name.
|
||
|
|
||
|
2001-02-08 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/i386/i386.c (ix86_frame_pointer_required): New.
|
||
|
(ix86_setup_frame_addresses): New.
|
||
|
(struct machine_funciton): Add accesses_prev_frame.
|
||
|
* config/i386/i386.h (FRAME_POINTER_REQUIRED): Call
|
||
|
ix86_frame_pointer_required.
|
||
|
(SUBTARGET_FRAME_POINTER_REQUIRED): New.
|
||
|
(SETUP_FRAME_ADDRESSES): New.
|
||
|
* config/i386/i386-protos.h: Update.
|
||
|
* config/i386/sco5.h (SUBTARGET_FRAME_POINTER_REQUIRED): Rename
|
||
|
from FRAME_POINTER_REQUIRED.
|
||
|
* config/i386/svr3gas.h: Likewise.
|
||
|
* config/i386/sysv3.h: Likewise.
|
||
|
* config/i386/v3gas.h: Likewise.
|
||
|
|
||
|
2001-02-08 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/sparc/sparc.c (function_arg_record_value_3): Fix
|
||
|
calculation of the number of integer registers required.
|
||
|
(function_arg_record_value): Likewise.
|
||
|
|
||
|
2001-02-08 Jason Merrill <jason@redhat.com>
|
||
|
|
||
|
* diagnostic.c (internal_error): Say "confused" after 1 error, not
|
||
|
two. Print file and line with "confused" message.
|
||
|
|
||
|
* dwarf2out.c (dwarf2out_line): Include filename in -dA output.
|
||
|
|
||
|
Thu Feb 8 11:21:28 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* rtlanal.c (remove_node_from_expr_list): Correctly update PREV.
|
||
|
|
||
|
2001-02-08 Bernd Schmidt <bernds@redhat.com>
|
||
|
|
||
|
* final.c (cleanup_subreg_operands): The address of a MEM can
|
||
|
contain SUBREGs.
|
||
|
|
||
|
* config/ia64/ia64.c (ia64_variable_issue): Call group_barrier_needed_p
|
||
|
for asms, too.
|
||
|
|
||
|
2001-02-08 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* gcc.texi (Incompatibilities): Update documentation of
|
||
|
preprocessing numbers.
|
||
|
|
||
|
2001-02-07 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* c-decl.c (finish_enum): Revert part of 2000-01-05 change.
|
||
|
|
||
|
2001-02-07 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* config/rs6000/aix43.h (CPLUSCPLUS_CPP_SPEC): Define it.
|
||
|
|
||
|
* defaults.h (CPLUSPLUS_CPP_SPEC): New macro.
|
||
|
* gcc.c (struct compiler): Add cpp_spec field.
|
||
|
(input_file_compiler): New variable.
|
||
|
(do_spec_1): Allow a particular compiler to handle `%C'
|
||
|
specially.
|
||
|
(main): Store the current compiler in input_file_compiler.
|
||
|
* tm.texi (CPLUSPLUS_CPP_SPEC): Document.
|
||
|
|
||
|
2001-02-07 Zack Weinberg <zack@wolery.stanford.edu>
|
||
|
|
||
|
* cpphash.h (struct spec_nodes): Add n_true and n_false.
|
||
|
* cppinit.c (cpp_create_reader): Initialize them.
|
||
|
(append_include_chain): cxx_aware arg might be unused.
|
||
|
* cppexp.c (lex): In C++ mode, recognize 'true' and 'false'
|
||
|
keywords and give them their phase 7 meaning. Pedwarn about
|
||
|
this unless '__bool_true_false_are_defined' is defined.
|
||
|
|
||
|
2001-02-07 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* lcm.c (optimize_mode_switching): Emit mode_set before the
|
||
|
JUMP_INSN of an abnormal edge.
|
||
|
|
||
|
2001-02-07 Bernd Schmidt <bernds@redhat.com>
|
||
|
|
||
|
* builtins.c (expand_builtin_setjmp_receiver): Emit an ASM_INPUT as
|
||
|
a scheduling barrier at the end.
|
||
|
|
||
|
* tm.texi (MD_INIT_BUILTINS, MD_EXPAND_BUILTIN): Document.
|
||
|
|
||
|
2001-02-07 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/sh/sh.md (reload_outsf): Removed.
|
||
|
(movsf_ie): Introduce constraints for FPUL loads and stores.
|
||
|
(reload_insf): Broaden the output constraint.
|
||
|
|
||
|
* config/elfos.h (INT_ASM_OP): Don't define it if it's already
|
||
|
defined.
|
||
|
* config/sh/sh.h (INT_ASM_OP, ASM_OUTPUT_CONSTRUCTOR,
|
||
|
ASM_OUTPUT_DESTRUCTOR): Copy definitions from config/elfos.h.
|
||
|
|
||
|
2001-02-06 Chandrakala Chavva <cchavva@redhat.com>
|
||
|
|
||
|
* final.c: Revert my previous changes.
|
||
|
* output.h: Make profile_label_no extern.
|
||
|
* config/rs6000/rs6000.c (output_profile_hook): Use standard functions
|
||
|
for generating label.
|
||
|
|
||
|
2001-02-06 Laurynas Biveinis <lauras@softhome.net>
|
||
|
|
||
|
* config/i386/djgpp.h: Add comments about standard paths.
|
||
|
(MD_EXEC_PREFIX): Undefine before defining.
|
||
|
(MD_STARTFILE_PREFIX): New.
|
||
|
|
||
|
2001-01-30 Bruce Korb <bkorb@gnu.org>
|
||
|
|
||
|
fixinc/fixincl.c(process): Emit error message only if appropriate :)
|
||
|
(load_file): do not rely on load_file_data() to close file pointer
|
||
|
fixinc/fixlib.c(load_file_data): do not close passed in file pointer
|
||
|
fixinc/inclhack.def(irix_limits_const): add test_text
|
||
|
|
||
|
2001-02-06 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppexp.c (parse_defined): Improve diagnostics for invalid
|
||
|
syntax.
|
||
|
|
||
|
2001-02-06 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppmacro.c (cpp_get_token): Avoid pasting after a builtin.
|
||
|
|
||
|
2001-02-06 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* config/rs6000/rs6000.h (ASM_OUTPUT_SYMBOL_REF): Define.
|
||
|
* config/rs6000/rs6000-protos.h (rs6000_output_symbol_ref): Declare.
|
||
|
* config/rs6000/rs6000.c (VTABLE_NAME_P): New macro.
|
||
|
(rs6000_output_symbol_ref): New function.
|
||
|
(output_toc): Use VTABLE_NAME_P.
|
||
|
|
||
|
Tue Feb 6 07:54:51 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* print-tree.c (print_node, case PARM_DECL):
|
||
|
Print DECL_ARG_TYPE and DECL_ARG_TYPE_AS_WRITTEN.
|
||
|
|
||
|
* stor-layout.c (reference_types_internal): New variable.
|
||
|
(internal_reference_types): New function.
|
||
|
(layout_type, case REFERENCE_TYPE): Make Pmode if internal.
|
||
|
* tree.h (internal_reference_types): New declaration.
|
||
|
|
||
|
* cse.c (find_best_addr): Fix typo in computing cost.
|
||
|
|
||
|
Mon Feb 5 21:56:16 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* combine.c (nonzero_bits, case PLUS): If pointers extend unsigned
|
||
|
and this is the sum of a pointer and a constant, we know the result
|
||
|
did not overflow.
|
||
|
(num_sign_bit_copies, case PLUS): Likewise.
|
||
|
* explow.c (convert_memory_address): Remove opposite SUBREG.
|
||
|
* function.c (instantiate_new_reg): New function (from common code).
|
||
|
(instantiate_virtual_regs_1): Call it.
|
||
|
For PLUS, handle if (plus (subreg (virt-reg) (const_int))
|
||
|
if pointers sign- or zero-extend.
|
||
|
* simplify-rtx.c (simplify_unary_operation, case ZERO_EXTEND):
|
||
|
If pointers extend unsigned, use inside of SUBREG.
|
||
|
(simplify_unary_operation, case SIGN_EXTEND): Likewise, if sign extend.
|
||
|
|
||
|
2001-02-05 Benjamin Kosnik <bkoz@redhat.com>
|
||
|
|
||
|
* Makefile.in (-DGPLUSPLUS_TOOL_INCLUDE_DIR): Change to target
|
||
|
subdir of gcc_gxx_include_dir.
|
||
|
(gcc_gxx_target_include_dir): Remove.
|
||
|
|
||
|
2001-02-05 Jeffrey Oldham <oldham@codesourcery.com>
|
||
|
|
||
|
* dwarf2out.c: Revise DWARF2 Abbreviation Glossary comments.
|
||
|
(dwarf2out_frame_debug_expr): Revise introductory comments to add
|
||
|
a high-level description.
|
||
|
|
||
|
2001-02-05 Chandrakala Chavva <cchavva@redhat.com>
|
||
|
|
||
|
* final.c: Move the declaration of profile_label_no to ...
|
||
|
* output.h: ... here.
|
||
|
* function.c (expand_function_start): Call PROFILE_HOOK.
|
||
|
* config/rs6000/aix.h: Define PROFILE_HOOK.
|
||
|
* config/rs6000/rs6000-protos.h: output_profile_hook new.
|
||
|
* config/rs6000/rs6000.c (output_profile_hook): Define.
|
||
|
(output_prolog): Do nothing for ABI_AIX as it is taken care by
|
||
|
output_profile_hook.
|
||
|
tm.texi : Explain new macro PROFILE_HOOK.
|
||
|
|
||
|
2001-02-06 Hans-Peter Nilsson <hp@axis.com>
|
||
|
|
||
|
* extend.texi (Extended Asm): Do not say that semicolon is always
|
||
|
a valid line-breaking character for GNU assemblers. Use
|
||
|
newline-tab as the most commonly supported syntax. Use
|
||
|
newline-tab rather than semicolon in multi-insn examples.
|
||
|
|
||
|
2001-02-05 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
|
||
|
|
||
|
* Makefile.in (gcc_gxx_target_include_dir): Use $(target_alias).
|
||
|
|
||
|
2001-02-05 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
|
||
|
David Edelsohn <edelsohn@gnu.org>
|
||
|
|
||
|
* config/rs6000/rs6000.c (rs6000_return_addr): Use PIC
|
||
|
code for AIX, even without flag_pic.
|
||
|
|
||
|
2001-02-05 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* c-typeck.c (common_type): push and pop binding level around
|
||
|
calling common_type on function parameters.
|
||
|
|
||
|
Mon Feb 5 14:30:37 2001 Christopher Faylor <cgf@cygnus.com>
|
||
|
|
||
|
* config/i386/cygwin.h (CPP_SPEC): Add missing space after -idirafter.
|
||
|
|
||
|
Mon Feb 5 11:23:16 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* config/mips/mips.c (override_options): Fix typo in last change.
|
||
|
(mips_make_temp_file): Call fatal_io_error, not pfatal_with_name.
|
||
|
(mips_asm_file_end): Likewise; also pass more args to fatal_io_error.
|
||
|
|
||
|
2001-02-05 Nathan Sidwell <nathan@codesourcery.com>
|
||
|
|
||
|
* invoke.texi (-fdump-class-layout): Document.
|
||
|
(-fdump-translation-unit): Use `=' as filename separator.
|
||
|
|
||
|
2001-02-05 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* Makefile.in (s-mlib): Don't build multilibs if
|
||
|
--disable-multilib.
|
||
|
(DRIVER_DEFINES): Adjust accordingly.
|
||
|
(gcc.o): Likewise.
|
||
|
(protoize.o): Likewise.
|
||
|
(unprotoize.o): Likewise.
|
||
|
* configure.in: Recognize --enable-multilib.
|
||
|
|
||
|
2001-02-04 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* Makefile.in (DRIVER_DEFINES): Fix quoting.
|
||
|
|
||
|
* Makefile.in (site.exp): Always set HAVE_LIBSTDCXX_V3.
|
||
|
* configure.in: Remove --enable-libstdcxx_v3 support.
|
||
|
* configure: Regenerated.
|
||
|
|
||
|
Sun Feb 4 15:52:44 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* config/avr/avr.h (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP):
|
||
|
Call abort instead of fatal.
|
||
|
(TRAMPOLINE_TEMPLATE): Call internal_error instead of fatal.
|
||
|
* config/dsp16xx/dsp16xx.h (FUNCTION_PROFILER): Likewise.
|
||
|
(FUNCTION_BLOCK_PROFILER, BLOCK_PROFILER): Likewise.
|
||
|
(TRAMPOLINE_TEMPLATE, INITIALIZE_TRAMPOLINE): Likewise.
|
||
|
(ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Likewise.
|
||
|
* config/rs6000/rs6000.h (RETURN_ADDRESS_OFFSET): Likewise.
|
||
|
|
||
|
* diagnostic.h (set_internal_error_function): Renamed.
|
||
|
* toplev.h (internal_error): Renamed from fatal.
|
||
|
(pfatal_with_name): Deleted.
|
||
|
(fatal_io_error): Now has printf-style arguments.
|
||
|
* diagnostic.c (pfatal_with_name): Deleted.
|
||
|
(fatal_io_error): Rework to have args in printf-style.
|
||
|
(set_internal_error_function): Renamed from set_fatal_function.
|
||
|
(internal_error): Renamed from fatal.
|
||
|
(error_recursion, fancy_abort): Call internal_error instead of fatal.
|
||
|
* dwarf2out.c (get_cfa_from_loc_descr): Likewise.
|
||
|
* emit-rtl.c (gen_realpart, gen_imagpart): Likewise.
|
||
|
* expr.c (check_max_integer_computation_mode, expand_expr): Likewise.
|
||
|
* flow.c (verify_flow_info): Likewise.
|
||
|
* config/arm/arm.c (thumb_unexpanded_epilogue): Likewise.
|
||
|
* config/mips/mips.c (save_restore_insns): Likewise.
|
||
|
|
||
|
* except.c (duplicate_eh_handlers): Call abort instead of fatal.
|
||
|
* flow.c (verify_flow_info): Likewise.
|
||
|
* config/arm/arm.c (thumb_load_double_from_address): Likewise.
|
||
|
* config/avr/avr.c (pttreg_to_str, unique_section): Likewise.
|
||
|
(avr_normalize_condition): Likewise.
|
||
|
* config/c4x/c4x.c (c4x_emit_libcall, c4x_valid_operands): Likewise.
|
||
|
* config/dsp16xx/dsp16xx.c (dsp16xx_reg_class_from_letter): Likewise.
|
||
|
(limit_reload_class, double_reg_to_memory): Likewise.
|
||
|
(print_operand_address, emit_1600_code_shift): Likewise.
|
||
|
(gen_tst_reg, gen_compare_reg): Likewise.
|
||
|
* config/m68hc11/m68hc11.c (m68hc11_emit_libcall): Likewise.
|
||
|
* config/dsp16xx/dsp16xx.c (dsp16xx_invalid_register_for_compare):
|
||
|
Deleted.
|
||
|
* config/dsp16xx/dsp16xx.md (unnamed cmphi): Call abort instead of it.
|
||
|
|
||
|
* c-parse.in (methoddef): Call fatal_error instead of fatal.
|
||
|
* objc/objc-act.c (build_ivar_chain): Likewise.
|
||
|
* dwarfout.c (dwarfout_init): Call fatal_io_error instead of
|
||
|
pfatal_with_name.
|
||
|
* graph.c (clean_graph_dump_file): Likewise.
|
||
|
* profile.c (init_branch_prob): Likewise.
|
||
|
* objc/objc-act.c (objc_init): Likewise.
|
||
|
|
||
|
* config/arm/arm.c (arm_override_options): Make errors non-fatal.
|
||
|
* config/avr/avr.c (avr_override_options): Likewise.
|
||
|
* config/c4x/c4x.c (c4x_expand_prologue): Likewise.
|
||
|
* config/dsp16xx/dsp16xx.c (function_prologue): Likewise.
|
||
|
* config/h8300/h8300.c (h8300_init_once): Likewise.
|
||
|
* config/mips/mips.c (override_options): Likewise.
|
||
|
* config/i386/i386.c (override_options): Likewise, rework.
|
||
|
* config/m68k/m68k.c (override_options): Likewise.
|
||
|
|
||
|
* config/dsp16xx/dsp16xx.c (print_operand): Call output_operand_lossage
|
||
|
instead of fatal.
|
||
|
* config/mips/mips.c (print_operand): Likewise.
|
||
|
* hash.c (hash_allocate): Don't check for failure returns from
|
||
|
obstack functions that can't fail.
|
||
|
(hash_table_init_n, hash_table_init): Likewise; also now return void.
|
||
|
* hash.h (hash_table_init_n, hash_table_init): Now return void.
|
||
|
* objc/objc_act.c (objc_check_decl): Remove unneeded fatal call.
|
||
|
(get_object_reference): Likewise.
|
||
|
|
||
|
2001-02-04 Nick Clifton <nickc@redhat.com>
|
||
|
|
||
|
* config/arm/arm.c (all_cores): Add 710T, 720T, 740T, 940T, 9e,
|
||
|
StrongARM1110, 10TDMI, and 1020T.
|
||
|
|
||
|
2001-02-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* mips.h (MULTILIB_ISA_DEFAULT): Don't use #elif.
|
||
|
|
||
|
2001-02-04 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/sh/sh.md (movdf load split): Pass register number to
|
||
|
FP_OR_XD_REGISTER_P.
|
||
|
|
||
|
2001-02-04 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* cppinit.c (BC): New macro.
|
||
|
(builtin_array): Add __GXX_WEAK__.
|
||
|
* cpplib.h (builtin_type): Add BT_WEAK.
|
||
|
* cppmacro.c (builtin_macro): Handle BT_WEAK.
|
||
|
* defaults.h (SUPPORTS_ONE_ONLY): Define.
|
||
|
* varasm.c (SUPPORTS_ONE_ONLY): Do not define.
|
||
|
|
||
|
2001-02-03 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* cppinit.c (append_include_chain): Honor NO_IMPLICIT_EXTERN_C.
|
||
|
|
||
|
2001-02-03 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpphash.h: Rename _ALIGN POOL_ALIGN.
|
||
|
* cpplex.c (new_chunk, _cpp_pool_reserve): Update.
|
||
|
|
||
|
2001-02-03 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpphash.h: Rename ALIGN _ALIGN.
|
||
|
* cpplex.c (new_chunk, _cpp_pool_reserve): Update.
|
||
|
|
||
|
Fri Feb 2 23:15:29 2001 Christopher Faylor <cgf@cygnus.com>
|
||
|
|
||
|
* config/i386/cygwin.h (CPP_SPEC): Reorganize YA to better handle cross
|
||
|
compilation environment.
|
||
|
* config/i386/t-cygwin (T_CPPFLAGS): Define CYGWIN_CROSS_DIR to allow
|
||
|
control over location of cygwin includes and libs.
|
||
|
|
||
|
2001-02-03 Michael Hayes <m.hayes@elec.canterbury.ac.nz)
|
||
|
|
||
|
* c4x.h (HARD_REGNO_CALL_PART_CLOBBERED): Fix typo.
|
||
|
|
||
|
2001-02-02 lars brinkhoff <lars@nocrew.org>
|
||
|
|
||
|
* md.texi (Standard Names): remove reference to spur.md.
|
||
|
|
||
|
2001-02-03 Michael Hayes <m.hayes@elec.canterbury.ac.nz)
|
||
|
|
||
|
* c4x.h (IS_INT_CALL_SAVED_REG, IS_FLOAT_CALL_SAVED_REG): Define.
|
||
|
(HARD_REGNO_CALL_PART_CLOBBERED): Use IS_FLOAT_CALL_SAVED_REG.
|
||
|
(INITIAL_FRAME_POINTER_OFFSET, INITIAL_ELIMINATION_OFFSET): Likewise.
|
||
|
* c4x.c (c4x_hard_regno_rename_ok): Use IS_XXX_CALL_SAVED_REG.
|
||
|
(c4x_expand_prologue, c4x_expand_epilogue): Likewise.
|
||
|
|
||
|
2001-02-03 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
|
||
|
|
||
|
* c4x.c (group1_reg_operand, group1_mem_operand, arx_reg_operand,
|
||
|
c4x_arn_reg_operand, c4x_arn_mem_operand): Do not check register
|
||
|
number before reload.
|
||
|
(c4x_adjust_cost): Return zero before reload.
|
||
|
* c4x.md (load_immed_address+1, load_immed_address+2): Do not
|
||
|
split before reload.
|
||
|
|
||
|
2001-02-03 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
|
||
|
|
||
|
* c4x.c (c4x_hard_regno_rename_ok): New.
|
||
|
* c4x-protos.h (c4x_hard_regno_rename_ok): New.
|
||
|
* c4x.h (HARD_REGNO_RENAME_OK): Define.
|
||
|
|
||
|
Fri Feb 2 20:03:50 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* diagnostic.h: Add missing "extern" in all declarations.
|
||
|
|
||
|
2001-02-02 Alex Samuel <samuel@codesourcery.com>
|
||
|
|
||
|
* Makefile.in (gcc_gxx_target_include_dir): Generate dynamically
|
||
|
as for gcc_gxx_include_dir.
|
||
|
|
||
|
2001-02-02 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpp.texi, invoke.texi: Update -Wtraditional documentation.
|
||
|
|
||
|
2001-02-02 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/sh/sh.c (output_far_jump): Don't use braf on SH1. Emit
|
||
|
label before alignment to be used as the braf base address.
|
||
|
* config/sh/sh.md (length): Use longer lengths for SH1 PIC far
|
||
|
branches.
|
||
|
(casesi_jump_2): Require at least TARGET_SH2.
|
||
|
|
||
|
* config/float-sh.h (LDBL_EPSILON, LDBL_MIN, LDBL_MAX): Prevent
|
||
|
truncation to 32-bit doubles on -m3e and -m4-single-only.
|
||
|
|
||
|
2001-02-02 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* gcc.c (init_gcc_specs): New function. Make -shared-libgcc
|
||
|
the default when building a shared object.
|
||
|
(init_spec): Use it.
|
||
|
* testsuite/lib/g++.exp: Include the directory where libgcc
|
||
|
is located to the LD_LIBRARY_PATH list.
|
||
|
* invoke.texi (-shared-libgcc): Document the cases in which
|
||
|
GCC defaults to using the shared libgcc.
|
||
|
|
||
|
2001-02-02 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/fp-bit.h (MAX_USI_INT, MAX_SI_INT): Don't assume
|
||
|
unsigned is wide enough.
|
||
|
(BITS_PER_SI): New.
|
||
|
* config/fp-bit.c (_fpmul_parts): Don't assume 32-bits SI.
|
||
|
(si_to_float): Likewise.
|
||
|
(float_to_si, float_to_usi): Use BITS_PER_SI.
|
||
|
|
||
|
2001-02-01 Jeffrey Oldham <oldham@codesourcery.com>
|
||
|
|
||
|
* dwarf2out.c: Added explanation of abbreviations.
|
||
|
(def_cfa_1): Added comments listing DWARF2 instructions.
|
||
|
(cfa_temp_reg): Removed in favor of cfa_temp.
|
||
|
(cfa_temp_value): Removed in favor of cfa_temp.
|
||
|
(cfa_temp): New global variable.
|
||
|
(dwarf2out_frame_debug_expr): Added extensive introductory
|
||
|
comments explaining the function's transformations. Revised to
|
||
|
use cfa_temp. Added some rtx checking. Generalize IOR case.
|
||
|
(dwarf2out_frame_debug): Revised to use cfa_temp.
|
||
|
(output_aranges): Cast as "unsigned" to avoid warning.
|
||
|
* rtl.texi (RTX_FRAME_RELATED_P): Revise entry to emphasize better
|
||
|
explain which instructions must be marked.
|
||
|
|
||
|
2001-02-01 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* local-alloc.c (update_equiv_regs): Copy INSN_CODE to the
|
||
|
new instruction.
|
||
|
|
||
|
2001-02-01 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/sh/crt1.asm (main_k): Modified so that start calls
|
||
|
___setup_argv_and_call_main.
|
||
|
|
||
|
2001-02-01 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpphash.h (struct cpp_buffer): Move saved_flags from cpp_reader.
|
||
|
* cpplex.c (_cpp_lex_token): New token picks up the saved flags,
|
||
|
and AVOID_LPASTE is cleared on meeting an unescaped newline.
|
||
|
* cppmacro.c (builtin_macro): Set builtin flags here.
|
||
|
(paste_all_tokens): Preserve AVOID_LPASTE on pasted token.
|
||
|
(replace_args): Clarify intent.
|
||
|
(cpp_get_token): Macro expansion tokens get the saved flags.
|
||
|
Update.
|
||
|
* cppmain.c (scan_buffer): Remove now-redundant print.printed
|
||
|
check.
|
||
|
|
||
|
2001-02-01 Jeffrey Oldham <oldham@codesourcery.com>
|
||
|
|
||
|
* config/mips/iris6.h (SUPPORTS_INIT_PRIORITY): Reverse change of
|
||
|
2001-Jan-29.
|
||
|
|
||
|
Thu Feb 1 07:22:41 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* builtins.c (expand_builtin_alloca): allocate_dynamic_stack_space
|
||
|
returns Pmode pseudo, but we need ptr_mode.
|
||
|
* explow.c (allocate_dynamic_stack_space): Use plus_constant.
|
||
|
Remove bogus conversions; use HOST_WIDE_INT for size.
|
||
|
Don't use TARGET if wrong mode.
|
||
|
|
||
|
* config/i386/i386.c (ix86_compute_frame_size): Allow
|
||
|
stack_alignment_needed to be non-default even if size is zero.
|
||
|
|
||
|
2001-01-31 Alan Modra <alan@linuxcare.com.au>
|
||
|
|
||
|
* pa.c (hppa_init_pic_save): New function.
|
||
|
* pa.h (hppa_init_pic_save): Declare.
|
||
|
* pa.md (call, call_value, sibcall, sibcall_value): Use
|
||
|
the above instead of duplicated code.
|
||
|
|
||
|
* pa.c (hppa_encode_label): Correct size of alloca buffer
|
||
|
so we don't overrun it. Correct leading `*' case.
|
||
|
* pa.h (STRIP_NAME_ENCODING): Simplify now that we don't
|
||
|
need to handle `*@'.
|
||
|
(FUNCTION_NAME_P): Likewise.
|
||
|
|
||
|
2001-01-31 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config.gcc (alpha-osf5): Use float-i128.h.
|
||
|
|
||
|
* config/float-i128.h (FLT_EVAL_METHOD, DECIMAL_DIG): Define.
|
||
|
* config/float-i32.h: Likewise.
|
||
|
* config/float-i64.h: Likewise.
|
||
|
* config/float-sh.h: Likewise.
|
||
|
* config/float-sparc.h: Likewise.
|
||
|
|
||
|
2001-01-31 DJ Delorie <dj@redhat.com>
|
||
|
|
||
|
* expmed.c (extract_bit_field): allow non-integral modes if we
|
||
|
want to extract a whole register from itself.
|
||
|
|
||
|
2001-01-31 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* c-typeck.c (set_init_index): If first is equal to last, assume as
|
||
|
if it was not a range at all.
|
||
|
|
||
|
2001-01-31 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/fp-bit.c: Include tm.h.
|
||
|
(float_to_si): Don't assume SImode is 32-bits wide.
|
||
|
(float_to_usi): Likewise.
|
||
|
|
||
|
2001-01-31 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* c-parse.in (structsp): Pedwarn when "enum foo" refers to an
|
||
|
incomplete type.
|
||
|
(typename): Call pending_xref_error after parsing typed_typespecs.
|
||
|
* c-decl.c (lookup_tag): Give error immediately rather than
|
||
|
leaving it pending if the tag of the wrong type is in the same
|
||
|
binding level.
|
||
|
(xref_tag): Don't pedwarn for forward declarations of enum types
|
||
|
here.
|
||
|
* gcc.texi (Actual Bugs): Remove entry for misuse of struct, union
|
||
|
and enum tags.
|
||
|
|
||
|
2001-01-31 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/float-sparc.h (LDBL_MAX) [sparc32]: Fix typo.
|
||
|
|
||
|
2001-01-31 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpplib.c (T_ELIF): Move to STDC89, not that it matters.
|
||
|
(_cpp_handle_directive): Suggest not using #elif with -Wtraditional.
|
||
|
|
||
|
2001-01-31 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpphash.h (struct cpp_reader): New saved_flags.
|
||
|
* cppmacro.c (cpp_get_token): Use saved_flags to remember
|
||
|
to avoid a paste after a pasted token.
|
||
|
|
||
|
2001-01-31 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* libgcc2.h (Wtype_MAX, Wtype_MIN): Define.
|
||
|
* libgcc2.c (__fixunssfSI, __fixunsdfSI, __fixunsxfSI): Use
|
||
|
Wtype_MIN instead of LONG_MIN.
|
||
|
|
||
|
2001-01-30 Jeffrey Oldham <oldham@codesourcery.com>
|
||
|
|
||
|
* fixinc/fixincl.tpl: Add 2001 to copyright. Change name of
|
||
|
README file.
|
||
|
* fixinc/fixincl.x: Regenerated.
|
||
|
* fixinc/inclhack.def (irix_limits_const): New definition to
|
||
|
convert "const" to "__const" in limits.h.
|
||
|
|
||
|
2001-01-30 Jeffrey Oldham <oldham@codesourcery.com>
|
||
|
|
||
|
* fixinc/genfixes (AG): Fix "autogen4" thinko.
|
||
|
|
||
|
2001-01-30 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
|
||
|
|
||
|
* regmove.c (try_auto_increment): Change REG_DEAD into REG_UNUSED
|
||
|
when register dies in the insn.
|
||
|
|
||
|
2001-01-30 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* diagnostic.c (fatal): Fix word wrap.
|
||
|
|
||
|
2001-01-30 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* combine.c (try_combine): Fix SUBREG setting for
|
||
|
HOST_BITS_PER_WIDE_INT >= 2 * BITS_PER_WORD.
|
||
|
|
||
|
2001-01-30 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
|
||
|
|
||
|
* jump.c (comparison_dominates_p): Don't try to handle UNKNOWN
|
||
|
comparison codes.
|
||
|
|
||
|
2001-01-30 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* c-decl.c (c_expand_body): Check TYPE_SIZE_UNIT (ret_type)
|
||
|
is not NULL.
|
||
|
* toplev.c (decode_W_option): Update warn_larger_than
|
||
|
unconditionally for each processed switch.
|
||
|
|
||
|
2001-01-30 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||
|
|
||
|
* pa.c (pa_init_machine_status): Initialize pic_offset_table_save_rtx
|
||
|
to NULL_RTX.
|
||
|
(hppa_expand_prologue): Delete code to save pic offset table register
|
||
|
in the function prologue.
|
||
|
* pa.h (PIC_OFFSET_TABLE_SAVE_RTX): Correct type in comment.
|
||
|
* pa.md (call, call_value, sibcall, sibcall_value): Save the pic offset
|
||
|
table register at the beginning of the function after the prologue.
|
||
|
|
||
|
2001-01-29 lars brinkhoff <lars@nocrew.org>
|
||
|
|
||
|
* tm.texi (PUSH_ROUNDING): Remove duplicate lines.
|
||
|
|
||
|
2001-01-29 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||
|
Jeff Law <law@redhat.com>
|
||
|
|
||
|
* pa.md (return): Revise comment for trivial return.
|
||
|
(return_internal): Non-trivial return pattern for non-PIC code.
|
||
|
(return_internal_pic): Non-trivial return pattern for PIC code.
|
||
|
It uses the PIC register to ensure it is restored after
|
||
|
function calls.
|
||
|
(epilogue): Generate appropriate return for PIC and non-PIC code.
|
||
|
|
||
|
Mon Jan 29 23:53:14 2001 Christopher Faylor <cgf@cygnus.com>
|
||
|
|
||
|
* config/i386/cygwin.h: Fix -mno-cygwin search path for link.
|
||
|
|
||
|
2001-01-29 DJ Delorie <dj@redhat.com>
|
||
|
|
||
|
* combine.c (if_then_else_cond): Pass the correct mode to
|
||
|
operand_subword() for constants.
|
||
|
|
||
|
Mon Jan 29 20:38:19 2001 Christopher Faylor <cgf@cygnus.com>
|
||
|
|
||
|
* config/i386/cygwin.h: Add w32api to include search. Search different
|
||
|
directories in a cross-build environment.
|
||
|
|
||
|
2001-11-29 Tim Josling <tej@melbpc.org.au>
|
||
|
|
||
|
* tree.h (TYPE_STUB_DECL): Add documentation.
|
||
|
|
||
|
2001-11-29 Laurynas Biveinis <lauras@softhome.net>
|
||
|
|
||
|
* sdbout.c (sdbout_one_type): Skip types with indeterminate size.
|
||
|
(sdbout_field_types): Likwise. Fix use of host_integerp.
|
||
|
|
||
|
2001-01-29 Thomas Pfaff <tpfaff@gmx.net>
|
||
|
|
||
|
* mingw32.h: Override STARTFILE_SPEC and LINK_SPEC declared in
|
||
|
cygwin.h.
|
||
|
|
||
|
2001-01-29 Jeffrey Oldham <oldham@codesourcery.com>
|
||
|
|
||
|
* config/mips/iris6.h (SUPPORTS_INIT_PRIORITY): Revise definition
|
||
|
to use flag_gnu_linker.
|
||
|
|
||
|
2001-01-29 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpplib.c (T_BAD_DIRECTIVE): Remove.
|
||
|
(_cpp_init_stacks): Loop from 0 to N_DIRECTIVES - 1.
|
||
|
|
||
|
2001-01-29 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* tree.c, tree.h (build_parse_node): Remove; was identical to
|
||
|
build_nt.
|
||
|
* c-lang.c (start_cdtor), objc/objc-act.c
|
||
|
(build_module_descriptor): Use build_nt instead of
|
||
|
build_parse_node.
|
||
|
|
||
|
2001-01-29 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* config/i386/i386.md (addqi_1_lea): Fix mode (QI instead of HI).
|
||
|
(testqi_1, andqi_2): If widening to SImode, make sure CONST_INT does
|
||
|
not have any upper bits set.
|
||
|
|
||
|
2001-01-29 Phil Edwards <pme@sources.redhat.com>
|
||
|
|
||
|
* COPYING.LIB: Update to LGPL 2.1 from the FSF.
|
||
|
|
||
|
2001-01-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* stmt.c (estimate_case_costs): Use integer_minus_one_node.
|
||
|
|
||
|
* tree.c (build_common_tree_nodes_2): Set integer_minus_one_node.
|
||
|
|
||
|
* tree.h (tree_index): Add new element TI_INTEGER_MINUS_ONE.
|
||
|
(integer_minus_one_node): Define.
|
||
|
|
||
|
2001-01-28 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* Makefile.in (bootstrap2-lean): Fix typo.
|
||
|
|
||
|
2001-01-28 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpphash.c (_cpp_cleanup_hashtable, _cpp_lookup_with_hash)
|
||
|
: Don't set fe_value.
|
||
|
* cpplib.h (AVOID_LPASTE): New flag.
|
||
|
(struct cpp_hashnode): Remove fe_value.
|
||
|
* cpplex.c (cpp_avoid_paste): Don't paste '.' with a number.
|
||
|
* cppmacro.c (builtin_macro): Don't set flags here.
|
||
|
(replace_args): Set AVOID_LPASTE flag on first token of an
|
||
|
argument, and the token following it.
|
||
|
(cpp_get_token): Set AVOID_LPASTE flag on first token of a
|
||
|
macro expansion, and on the token following it. Do it for
|
||
|
builtins too.
|
||
|
* cppmain.c (scan_buffer): Avoid pasting only flagged tokens.
|
||
|
|
||
|
2001-01-27 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/alpha/t-ieee: Remove multilibbing.
|
||
|
(TARGET_LIBGCC2_CFLAGS): Add -mieee.
|
||
|
|
||
|
2001-01-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* configure.in: Arrange to include defaults.h in [ht]config.h/tm.h.
|
||
|
|
||
|
* Makefile.in: Remove all dependencies on defaults.h.
|
||
|
* builtins.c: Don't include defaults.h.
|
||
|
* c-common.c: Likewise.
|
||
|
* c-decl.c: Likewise.
|
||
|
* c-pragma.c: Likewise.
|
||
|
* c-typeck.c: Likewise.
|
||
|
* combine.c: Likewise.
|
||
|
* i386.c: Likewise.
|
||
|
* frame-ia64.c: Likewise.
|
||
|
* cppexp.c: Likewise.
|
||
|
* crtstuff.c: Likewise.
|
||
|
* dbxout.c: Likewise.
|
||
|
* dwarf2out.c: Likewise.
|
||
|
* dwarfout.c: Likewise.
|
||
|
* emit-rtl.c: Likewise.
|
||
|
* except.c: Likewise.
|
||
|
* expr.c: Likewise.
|
||
|
* final.c: Likewise.
|
||
|
* frame-dwarf2.c: Likewise.
|
||
|
* libgcc2.c: Likewise.
|
||
|
* optabs.c: Likewise.
|
||
|
* profile.c: Likewise.
|
||
|
* sdbout.c: Likewise.
|
||
|
* toplev.c: Likewise.
|
||
|
* tradcif.y: Likewise.
|
||
|
* tree.c: Likewise.
|
||
|
* varasm.c: Likewise.
|
||
|
|
||
|
2001-01-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* builtins.c (expand_builtin_fputs): Use size_one_node when
|
||
|
transforming into fwrite.
|
||
|
|
||
|
2001-01-27 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* extend.texi (Attribute Syntax): New section.
|
||
|
|
||
|
2001-01-27 Michael Sokolov <msokolov@ivan.Harhan.ORG>
|
||
|
|
||
|
* fixproto: Correctly install synthesised unistd.h and stdlib.h when
|
||
|
they didn't need fixing.
|
||
|
|
||
|
2001-01-27 Janis Johnson <janis@us.ibm.com>
|
||
|
|
||
|
* config.gcc (i[34567]86-sequent-{ptx4*,sysv4*}): Use usegas.h
|
||
|
if appropriate.
|
||
|
* config/ptx4.h: Several fixes to build on DYNIX/ptx v4.[456], and
|
||
|
to remove macro definitions that are duplicated from elfos.h.
|
||
|
|
||
|
2001-01-27 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/i386/sco5gas.h: Move ...
|
||
|
* config/usegas.h: ... here.
|
||
|
* config.gcc (i[34567]86-*-sco3.2v5) [tm_file]: Update.
|
||
|
|
||
|
2001-01-27 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* c-typeck.c (struct constructor_stack): Add range_stack member.
|
||
|
(really_start_incremental_init): Clear it.
|
||
|
(push_init_level): Save constructor_range_stack and clear it if
|
||
|
pushing explicit braces.
|
||
|
(pop_init_level): abort if constructor_range_stack is non-zero at
|
||
|
explicit closing brace. Restore saved constructor_range_stack if
|
||
|
not implicit.
|
||
|
|
||
|
2001-01-27 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* expr.c (emit_move_insn): Add REG_EQUAL note when constant loaded
|
||
|
into register was forced into memory.
|
||
|
|
||
|
2001-01-27 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* Makefile.in: Remove uses of + before $(MAKE).
|
||
|
|
||
|
2001-01-26 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* stmt.c (cost_table): Remove.
|
||
|
(COST_TABLE, cost_table_initialized): New.
|
||
|
(estimate_case_costs): Use the later instead of the former.
|
||
|
(balance_case_nodes): Likewise.
|
||
|
|
||
|
2001-01-26 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* alias.c (objects_must_conflict_p): Read-only slots may not
|
||
|
conflict despite having the same type.
|
||
|
|
||
|
2001-01-27 Michael Hayes <mhayes@redhat.com>
|
||
|
|
||
|
* loop.c (loop_giv_reduce_benefit): Copy mode size into
|
||
|
int variable.
|
||
|
(check_ext_dependant_givs): Initialise u_start_val and
|
||
|
u_end_val.
|
||
|
(load_mems): Make last_max_reg unsigned.
|
||
|
(try_swap_copy_prop): Use INSN_P and initialise set.
|
||
|
|
||
|
Fri Jan 26 23:22:58 2001 Denis Chertykov <denisc@overta.ru>
|
||
|
|
||
|
* README.AVR : Removed.
|
||
|
|
||
|
Fri Jan 26 11:37:26 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* pa-64.h (text_section): Remove declaration.
|
||
|
|
||
|
* pa.md (return_internal): Remove mode on PIC register use.
|
||
|
|
||
|
2001-01-25 lars brinkhoff <lars@nocrew.org>
|
||
|
|
||
|
* tm.texi (DATA_ALIGNMENT, LOCAL_ALIGNMENT, ASM_OPEN_PAREN,
|
||
|
ASM_CLOSE_PAREN): fix typos.
|
||
|
|
||
|
2001-01-25 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* acconfig.h: Define `const' to the empty string if neither
|
||
|
__STDC__ nor __cplusplus is defined.
|
||
|
* config.in: Regenerated.
|
||
|
|
||
|
2001-01-25 David Edelsohn <edelsohn@gnu.org>
|
||
|
|
||
|
* config.gcc (rs6000-ibm-aix[5-9]*): Change to aix51.h.
|
||
|
* collect2.c (main): Delete importf. Add ".obj" file extension.
|
||
|
(GCC_CHECK_HDR): Handle AIX V5 new magic number.
|
||
|
(aix_std_libs): Add additional AIX libraries to skip.
|
||
|
* config/rs6000/aix.h (MY_ISCOFF): Add AIX V5 new magic number.
|
||
|
* config/rs6000/aix51.h: New file.
|
||
|
|
||
|
2001-01-25 Michael Hayes <mhayes@redhat.com>
|
||
|
|
||
|
* loop.c (loop_call_insn_emit_before, loop_call_insn_hoist): New.
|
||
|
(loop_insn_emit_before): No longer static.
|
||
|
(move_movables): Replace emit_insn_after with loop_insn_emit_after.
|
||
|
(loop_givs_rescan, load_mems): Likewise.
|
||
|
(check_dbra_loop): Replace emit_insn_before with loop_insn_emit_before.
|
||
|
(maybe_eliminate_biv_1):
|
||
|
(move_movables): Replace emit_call_insn_before with
|
||
|
loop_call_insn_hoist.
|
||
|
* loop.h (loop_insn_emit_before): Add.
|
||
|
* unroll.c (copy_loop_body): Replace emit_insn_before with
|
||
|
loop_insn_emit_before.
|
||
|
|
||
|
2001-01-25 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* diagnostic.c (fatal): Request preprocessed source.
|
||
|
|
||
|
Thu Jan 25 02:01:16 2001 J"orn Rennecke <amylaar@redhat.com>
|
||
|
|
||
|
* c-decl.c (duplicate_decls): If different_binding_level is nonzero,
|
||
|
olddecl has argument types and newdecl has none, use the argument
|
||
|
types from olddecl.
|
||
|
|
||
|
2001-01-24 Ulrich Drepper <drepper@redhat.com>
|
||
|
|
||
|
* dwarf2out.c (prefix_of): New function. Determine longest common
|
||
|
prefix of the two arguments. The units are whole path components.
|
||
|
(output_file_names): When adding a new directory find the one entry
|
||
|
with the longest common prefix already in the list. Artificially
|
||
|
generate entry if there is none for this prefix.
|
||
|
Fix test to check whether the zeroth directory entry is used.
|
||
|
|
||
|
Wed Jan 24 23:51:55 2001 J"orn Rennecke <amylaar@redhat.com>
|
||
|
|
||
|
* reload1.c (reload_reg_free_for_value_p): New parameter start_regno.
|
||
|
Changed all callers. Take it into account when deciding if a
|
||
|
previously loaded value matches.
|
||
|
|
||
|
2001-01-24 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* reload.c (find_reloads_subreg_address): Fail the substitution
|
||
|
if the resulting address is insufficiently aligned.
|
||
|
|
||
|
2001-01-24 DJ Delorie <dj@redhat.com>
|
||
|
|
||
|
* combine.c (combine_simplify_rtx): If the modes are all VOIDmode,
|
||
|
check the original operand's mode also.
|
||
|
* simplify-rtx.c (simplify_ternary_operation): Ditto.
|
||
|
|
||
|
2001-01-24 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* c-parse.in (cast_expr): Move compound literals from here ...
|
||
|
(primary): ... to here. Use standard terminology "compound
|
||
|
literal" instead of "constructor expression".
|
||
|
|
||
|
2001-01-24 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* gcc.1, cpp.1: Regenerate.
|
||
|
|
||
|
2001-01-24 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* calls.c (emit_library_call_value_1): Memory slot for
|
||
|
pass-by-reference argument should have the mode of the argument,
|
||
|
not of the pointer to it.
|
||
|
|
||
|
2001-01-24 Tom Tromey <tromey@redhat.com>
|
||
|
|
||
|
* gcc.texi (G++ and GCC): Mention gcj manual.
|
||
|
(Standards): Link to section of manual mentioning gcj/Java
|
||
|
compatibility.
|
||
|
|
||
|
2001-01-24 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* cppfiles.c (_cpp_read_file): Add to dependencies if requested.
|
||
|
* cppinit.c (cpp_start_read): Remove deps_add_dep call.
|
||
|
* tradcpp.c (main): Add -imacros or -include'd dependencies
|
||
|
for -M*.
|
||
|
* cpp.texi (-M, -MM): Document -M -include behaviour.
|
||
|
|
||
|
2001-01-24 Roger Collins <roger@ProProject.com>
|
||
|
|
||
|
* config/i386/xm-i386.h: Make __i386__ a boolean macro.
|
||
|
|
||
|
2001-01-24 Will Cohen <wcohen@redhat.com>
|
||
|
|
||
|
* config/mips/abi64.h (RETURN_IN_MEMORY): Always take into account
|
||
|
whether registers are 32 bits or 64 bits in size.
|
||
|
|
||
|
2001-01-24 Ben Elliston <bje@redhat.com>
|
||
|
|
||
|
* config/m32r/m32r.h (PREDICATE_CODES): Remove m32r_not_same_reg.
|
||
|
|
||
|
2001-01-24 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/alpha/alpha.md (builtin_longjmp_internal): New.
|
||
|
(builtin_longjmp): Use it instead of emit_indirect_jump.
|
||
|
|
||
|
2001-01-23 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||
|
|
||
|
* bb-reorder.c (make_reorder_chain_1): Handle case where
|
||
|
jump edge goes to the same block as the fallthru edge.
|
||
|
|
||
|
2001-01-23 Jim Wilson <wilson@redhat.com>
|
||
|
|
||
|
* dwarf2out.c (dwarf2out_line): Make last_file_num be unsigned.
|
||
|
* frame.h (__ia64_personality_v1): Add prototype.
|
||
|
* libgcc2.c (ia64_throw_helper): Change personality declaration to
|
||
|
prototype form. Add void * cast to first argument to personality
|
||
|
call.
|
||
|
* real.c (e113toe): Surround with INTEL_EXTENDED_IEEE_FORMAT ifdefs.
|
||
|
(asctoe113): Likewise.
|
||
|
* config/ia64/frame-ia64.c: Include eh-common.h.
|
||
|
* config/ia64/ia64-protos.h (sdata_section, sbbs_section): Add
|
||
|
prototypes.
|
||
|
* config/ia64/ia64.c (emit_insn_group_barriers): Add ATTRIBUTE_UNUSED
|
||
|
to dump parameter.
|
||
|
(itanium_split_issue): Add prototype.
|
||
|
(gen_nop_type): Ifdef out.
|
||
|
(find_best_packet): Initialize best_packet.
|
||
|
(ia64_encode_section_info): New local string. Use for ggc_alloc_string
|
||
|
result.
|
||
|
* config/ia64/ia64.h (ASM_OUTPUT_LONG_DOUBLE): Use 0L not 0.
|
||
|
* config/ia64/ia64.md (bsp_value): Add explicit stop bit at start.
|
||
|
(flushrs): Add explicit stop bit at end.
|
||
|
* config/ia64/lib1funcs.asm (__ia64_restore_stack_nonlocal): Change
|
||
|
trailing \ to >.
|
||
|
|
||
|
2001-01-23 Chris Demetriou <cgd@broadcom.com>
|
||
|
|
||
|
* libgcc-std.ver (GCC_3.0): Add __terminate_func_set to list
|
||
|
of EH symbols.
|
||
|
* libgcc2.c (__terminate_func): Make variable static.
|
||
|
(__terminate_set_func): New function to set __terminate_func.
|
||
|
* libgcc2.h (__terminate_func_ptr): New typedef.
|
||
|
(__terminate_set_func): New function.
|
||
|
|
||
|
2001-01-23 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* flow.c (init_propagate_block_info): Don't consider unchanging
|
||
|
memories for dead frame store elimination.
|
||
|
|
||
|
2001-01-23 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* varasm.c (UNIQUE_SECTION): Move default implementation ...
|
||
|
* defaults.h: ... here.
|
||
|
|
||
|
2001-01-24 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
|
||
|
|
||
|
* c4x.h (TARGET_LOAD_DIRECT_MEMS): Define.
|
||
|
|
||
|
2001-01-23 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* c-lex.c (lex_charconst): Fix typo: s/p/str.
|
||
|
|
||
|
2001-01-23 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
|
||
|
|
||
|
* rs6000.h (rs6000_return_addr): Move prototype from here...
|
||
|
* rs6000-protos.h (rs6000_return_addr): ...to here.
|
||
|
(rs6000_init_expanders): Delete prototype.
|
||
|
|
||
|
2001-01-23 Nick Clifton <nickc@redhat.com>
|
||
|
|
||
|
* invoke.texi: Replace , with \, inside @gccoptlist macros.
|
||
|
(Spec Files): Document %B and %j and %. and %v3 and %M and
|
||
|
%{S*&T} spec switches.
|
||
|
|
||
|
2001-01-24 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
|
||
|
|
||
|
* c4x.c (c4x_r11_set_p): Calculate rtx code correctly.
|
||
|
|
||
|
2001-01-23 Chris Demetriou <cgd@sibyte.com>
|
||
|
Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpperror.c: Merge handlers of PEDWARN and WARNING.
|
||
|
Have -Werror make pedantic warnings errors, like the
|
||
|
rest of GCC.
|
||
|
|
||
|
2001-01-23 Phil Edwards <pme@sources.redhat.com>
|
||
|
|
||
|
* c-tree.texi (IDENTIFIER_LENGTH): Fix typo.
|
||
|
|
||
|
2001-01-23 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* integrate.h (struct inline_remap): Add compare_src, compare_mode.
|
||
|
* integrate.c (expand_inline_function): Initialize them.
|
||
|
(subst_constants): If changing COMPARE so that both its arguments
|
||
|
will be VOIDmode and the comparison mode will be lost, note
|
||
|
compare_mode. Use the recorded compare_mode to optimize
|
||
|
IF_THEN_ELSE.
|
||
|
|
||
|
2001-01-23 Jason Merrill <jason@redhat.com>
|
||
|
|
||
|
* dwarf2out.c (new_die): Use xcalloc.
|
||
|
(output_die): Abort rather than emit a local reference to offset 0.
|
||
|
|
||
|
2001-01-17 Andrew Haley <aph@redhat.com>
|
||
|
|
||
|
* libgcc2.c (get_reg_addr): Don't abort if we haven't got a copy
|
||
|
of a saved register; return NULL instead.
|
||
|
(copy_reg): Take a pointer to a source register rather than a
|
||
|
frame_state.
|
||
|
(next_stack_level): Remember the address in the stack frame of all
|
||
|
saved registers.
|
||
|
Use the saved register pointer array as the source of the CFA.
|
||
|
(throw_helper): Rewrite. Unwind once rather than twice and keep
|
||
|
track of saved registers as we go.
|
||
|
|
||
|
2001-01-23 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
|
||
|
|
||
|
* c4x-protos.h (c4x_legitimize_reload_address): Remove.
|
||
|
* c4x.c (c4x_legitimize_reload_address): Remove.
|
||
|
* c4x.h (LEGITIMIZE_RELOAD_ADDRESS): Rewrite to generate correct
|
||
|
reload address for ldp(k) insn.
|
||
|
|
||
|
Mon Jan 22 20:53:47 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* pa.md (return_internal): Add a USE of the PIC register to ensure
|
||
|
it is restored after each call.
|
||
|
(return expander): Corresponding changes.
|
||
|
|
||
|
2001-01-22 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
|
||
|
|
||
|
* rs6000.h (INIT_EXPANDERS): Delete.
|
||
|
(RETURN_ADDR_RTX): Call rs6000_return_addr().
|
||
|
* rs6000.c (rs6000_override_options): Call *_machine_status from
|
||
|
here...
|
||
|
(rs6000_init_expanders): ...instead of here. Delete.
|
||
|
(rs6000_mark_machine_status): New function.
|
||
|
(rs6000_init_machine_status): Use xcalloc.
|
||
|
(rs6000_return_addr): Generate RTX for the return address.
|
||
|
(rs6000_ra_ever_killed): New, check if LR was ever destroyed.
|
||
|
(rs6000_stack_info): Use it.
|
||
|
|
||
|
2001-01-22 Thomas Pfaff <tpfaff@gmx.net>
|
||
|
|
||
|
* gthr-win32.h: Include errno.h to get a declaration for
|
||
|
EINVAL and _mingw.h if the target is mingw32.
|
||
|
|
||
|
2001-01-22 Andres Felipe Vargas <avargas@teletulua.com.co>
|
||
|
|
||
|
* cpp.texi: Correct typos.
|
||
|
|
||
|
Mon Jan 22 13:59:09 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* explow.c (probe_stack_range): Ensure value passed to
|
||
|
stack_check_libfunc is ptr_mode, not Pmode.
|
||
|
|
||
|
Mon Jan 22 16:53:06 2001 J"orn Rennecke <amylaar@redhat.com>
|
||
|
|
||
|
* recog.c (validate_replace_rtx_1): In ZERO_EXTEND / SIGN_EXTEND
|
||
|
case, don't use operand_subword to calculate a SUBREG that is
|
||
|
wider than a word.
|
||
|
|
||
|
* rtl.texi: Comparisons yield 0 or STORE_FLAG_VALUE.
|
||
|
|
||
|
2001-01-22 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
|
||
|
|
||
|
* c4x.c (c4x_valid_rptb_p, c4x_label_ref_used_p): New functions.
|
||
|
(c4x_rptb_insert): Call c4x_valid_rptb_p to check if repeat block is
|
||
|
valid. If not replace it by equivalent insns.
|
||
|
|
||
|
2001-01-22 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
|
||
|
|
||
|
* c4x.c (c4x_check_legit_addr): Only check CONST. Not if CONST
|
||
|
contains SYMBOL_REF, LABEL_REF and CONST_INT.
|
||
|
(c4x_U_constraint, symbolic_address_operand): Likewise.
|
||
|
(c4x_immed_float_constant): Do not check if CONST_DOUBLE is in
|
||
|
memory.
|
||
|
(c4x_r11_set_p, c4x_check_laj_p): New functions.
|
||
|
* c4x-protos.h (c4x_check_laj_p): Add prototype.
|
||
|
* c4x.md (in_annul_slot_3): Do not allow auto-increment in last
|
||
|
anulling slot because of silicon bug.
|
||
|
(laj, lajv): Call c4x_check_laj_p to check for silicon bug.
|
||
|
|
||
|
2001-01-22 Alan Modra <alan@linuxcare.com.au>
|
||
|
|
||
|
* cppexp.c (parse_charconst): Change `mask' type to agree
|
||
|
with parse_escape.
|
||
|
|
||
|
2001-01-21 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/i386/i386.c (ix86_asm_file_end): Disable putting
|
||
|
pic_label_name in a linkonce section.
|
||
|
|
||
|
2001-01-17 Philipp Thomas <pthomas@suse.de>
|
||
|
|
||
|
* aclocal.m4 (AM_WITH_NLS): Add -lintl to LIBS if gettext was
|
||
|
found in libintl.
|
||
|
* configure: Regenerate.
|
||
|
|
||
|
Sun Jan 21 02:38:56 2001 J"orn Rennecke <amylaar@redhat.com>
|
||
|
|
||
|
* expmed.c (synth_mult, expand_mult_highpart, expand_divmod): Guard
|
||
|
uses of shift_cost, shiftadd_cost and shiftsub_cost with bound checks.
|
||
|
|
||
|
Sun Jan 21 09:44:17 2001 Denis Chertykov <denisc@overta.ru>
|
||
|
|
||
|
* config/avr/avr.c (ret_cond_branch): New argument (reverse) added.
|
||
|
If REVERSE nonzero then condition code in X must be reversed.
|
||
|
(encode_section_info): Optimise if/else.
|
||
|
(avr_function_value): Fix formatting.
|
||
|
|
||
|
* config/avr/avr.md (branch): Call to ret_cond_branch changed.
|
||
|
(difficult_branch): Likewise.
|
||
|
(rvbranch): Likewise.
|
||
|
(difficult_rvbranch): Likewise.
|
||
|
|
||
|
* config/avr/avr-protos.h (ret_cond_branch): Prototype changed.
|
||
|
|
||
|
* config/avr/libgcc.S: Fix comment.
|
||
|
|
||
|
2001-01-20 Michael Sokolov <msokolov@ivan.Harhan.ORG>
|
||
|
|
||
|
* sdbout.c (PUT_SDB_DEF): Fix after last bogus change.
|
||
|
|
||
|
2001-01-20 Michael Sokolov <msokolov@ivan.Harhan.ORG>
|
||
|
|
||
|
* cppinit.c (INO_T_EQ): Don't use #elif, fix formatting.
|
||
|
|
||
|
2001-01-20 Michael Sokolov <msokolov@ivan.Harhan.ORG>
|
||
|
|
||
|
* aclocal.m4 (gcc_AC_FUNC_STRSTR): New macro.
|
||
|
* configure.in (gcc_AC_FUNC_STRSTR): Add invokation.
|
||
|
* configure, config.in: Regenerate.
|
||
|
* Makefile.in (STRSTR, HOST_STRSTR, USE_HOST_STRSTR): New variables.
|
||
|
(LIBDEPS, HOST_LIBDEPS, LIBS, HOST_LIBS): Add strstr handling.
|
||
|
(strstr.o, $(HOST_PREFIX_1)strstr.o): New rules.
|
||
|
(doprint.o): New rule.
|
||
|
|
||
|
2001-01-20 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* c-typeck.c (digest_init): Handle boolean types as scalars.
|
||
|
|
||
|
Sat Jan 20 12:46:57 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* stmt.c (expand_return): Don't return anything if size is zero.
|
||
|
Delete redundant assignment to BYTES.
|
||
|
* expr.c (move_block_from_reg): Do nothing if NREGS is zero.
|
||
|
|
||
|
2001-01-20 Marek Michalkiewicz <marekm@linux.org.pl>
|
||
|
|
||
|
* config/avr/avr.h (INIT_TARGET_OPTABS): Remove most of it, was
|
||
|
the same as the default library function names.
|
||
|
* config/avr/avr.md: Document special characters after '%'.
|
||
|
(mulqi3, mulhi3, mulsi3): Call libgcc.S functions ourselves,
|
||
|
knowing which of the call-used registers are really clobbered.
|
||
|
(divmodqi4, udivmodqi4, divmodhi4, udivmodhi4, divmodsi4, udivmodsi4):
|
||
|
New. Both quotient and remainder from one libgcc.S call.
|
||
|
* config/avr/libgcc.S: Optimize mul/divmod for the new insns above,
|
||
|
clobber as few registers as possible.
|
||
|
* config/avr/t-avr (LIB1ASMFUNCS): Adjust for the above changes.
|
||
|
|
||
|
2001-01-20 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppmacro.c (funlike_invocation_p): Don't move back up to the
|
||
|
context of the top of the stack.
|
||
|
|
||
|
2001-01-20 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* function.c (fixup_var_refs): Move CALL_PLACEHOLDER handling...
|
||
|
(fixup_var_refs_insns): ...here.
|
||
|
|
||
|
2001-01-20 Zack Weinberg <zack@wolery.stanford.edu>
|
||
|
|
||
|
* function.c (fixup_var_refs_insns): Break up into
|
||
|
fixup_var_refs_insn [body of loop], fixup_var_refs_insns
|
||
|
[loop over entire insn list], and fixup_var_refs_insns_with_hash
|
||
|
[loop over hash table entries].
|
||
|
(fixup_var_refs): Adjust calls to fixup_var_refs_insns and/or
|
||
|
fixup_var_refs_insns_with_hash, to match above changes.
|
||
|
|
||
|
2001-01-19 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||
|
|
||
|
* Makefile.in (ORDINARY_FLAGS_TO_PASS): Add MAKEOVERRIDES variable.
|
||
|
(libgcc.a): Likewise.
|
||
|
(stmp-multilib): Likewise.
|
||
|
(STAGE2_FLAGS_TO_PASS): Likewise.
|
||
|
|
||
|
2001-01-19 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/sh/sh.c (prepare_move_operands) [PIC]: Use operands[0] as
|
||
|
temporary if no_new_pseudos.
|
||
|
|
||
|
2001-01-19 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppinternals.texi: Update.
|
||
|
|
||
|
2001-01-19 Richard Earnshaw <rearnsha@arm.com>
|
||
|
|
||
|
* arm.c (arm_init_builtins): Re-enable builtins.
|
||
|
|
||
|
Fri Jan 19 13:02:56 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* rtl.texi (SET, CLOBBER): Document PARALLEL as SET_DEST possibility.
|
||
|
* flow.c (mark_set_1, case PARALLEL): Don't require BLKmode, allow
|
||
|
element to be null, and always expect an EXPR_LIST.
|
||
|
* rtlanal.c (reg_overlap_mentioned_p, note_stores): Likewise.
|
||
|
* sched-deps.c (sched_analyze_1): Likewise.
|
||
|
* sched-rgn.c (check_live_1, update_live_1): Likewise.
|
||
|
|
||
|
* regclass.c (max_set_parallel): New variable.
|
||
|
(reg_scan): Take it into account in computation of max_parallel.
|
||
|
(reg_scan_mark_refs, case SET): Compute it.
|
||
|
|
||
|
* alias.c (rtx_equal_for_memref_p, case ADDRESSOF): Don't assume
|
||
|
args are REG.
|
||
|
* expr.c (store_constructor): Don't look at MEM_ALIAS_SET unless MEM.
|
||
|
* function.c (assign_parms): Use INTVAL for a CONST_INT.
|
||
|
|
||
|
2001-01-19 Jason Merrill <jason@redhat.com>
|
||
|
|
||
|
* dwarf2out.c (gen_subprogram_die): Don't reuse the in-class decl
|
||
|
for the abstract instance of an inline function.
|
||
|
|
||
|
Fri Jan 19 14:31:35 2001 Alexandre Oliva <aoliva@redhat.com>
|
||
|
J"orn Rennecke <amylaar@redhat.com>
|
||
|
|
||
|
* reload1.c (move2add_note_store): Treat all registers directly or
|
||
|
indirectly derived from a base register as members of the same set
|
||
|
of values.
|
||
|
(reload_cse_move2add): Adjust accordingly. Take mode and offset
|
||
|
of base register into account.
|
||
|
|
||
|
Fri Jan 19 09:18:42 2001 J"orn Rennecke <amylaar@redhat.com>
|
||
|
|
||
|
* alias.c (find_base_value): Recognize TRUNCATE.
|
||
|
(record_set): In PLUS case, invalidate if other summand is also a
|
||
|
base value.
|
||
|
|
||
|
Thu Jan 18 06:43:04 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* flow.c (mark_set_1, case PARALLEL): New case; rework to allow
|
||
|
entry to be EXPR_LIST.
|
||
|
* rtlanal.c (reg_overlap_mentioned_p): Allow PARALLEL in SET to
|
||
|
be an EXPR_LIST (but not null, which other code doesn't allow).
|
||
|
(note_stores): Properly handle PARALLEL in SET.
|
||
|
Recursively call for top-level PARALLEL.
|
||
|
* sched-deps.c (sched_analyze_1): Handle EXPR_LIST in PARALLEL in SET.
|
||
|
* sched-rgn.c (check_live_1, update_live_1): Likewise.
|
||
|
|
||
|
* config.gcc (rs6000-ibm-aix*, rs6000-bull-bosx): Add rs6000/aix.h.
|
||
|
|
||
|
2001-01-18 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpplib.c (_cpp_handle_directive): Use buffer->was_skipping,
|
||
|
not pfile->skipping (== 0).
|
||
|
|
||
|
2001-01-17 Nick Clifton <nickc@redhat.com>
|
||
|
|
||
|
* config/rs6000/rs6000.c: Add prototypes for {init|free}_
|
||
|
machine_status.
|
||
|
|
||
|
2001-01-17 Jim Wilson <wilson@redhat.com>
|
||
|
|
||
|
* invoke.texi (IA-64 options): Improve.
|
||
|
|
||
|
2001-01-17 Tom Tromey <tromey@redhat.com>
|
||
|
|
||
|
* invoke.texi (Optimize Options): Use `{}' to around @samp
|
||
|
argument.
|
||
|
|
||
|
2001-01-17 Aldy Hernandez <aldyh@redhat.com>
|
||
|
|
||
|
* invoke.texi (-fno-guess-branch-probability): New option.
|
||
|
|
||
|
Wed Jan 17 13:26:34 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* combine.c (try_combine): Don't set i3_subst_into_i2 for
|
||
|
case of making new double-word constant.
|
||
|
Revert last change: instead just test i3_subst_into_i2.
|
||
|
|
||
|
2001-01-17 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* config/i386/i386.md (cmpqi_minus_1): Use {b} for QImode operation.
|
||
|
Use q constraints instead of r.
|
||
|
|
||
|
Tue Jan 16 22:23:04 2001 Alan Modra (alan@linuxcare.com.au)
|
||
|
|
||
|
* config/pa/pa.h (PIC_OFFSET_TABLE_REGNUM_SAVED): Remove.
|
||
|
(machine_function): Define.
|
||
|
(PIC_OFFSET_TABLE_SAVE_RTX) : Define.
|
||
|
* config/pa/pa.c (pa_init_machine_status, pa_mark_machine_status,
|
||
|
pa_free_machine_status): New functions.
|
||
|
(override_options): Set {init,mark,free}_machine_status to above.
|
||
|
(hppa_expand_prologue): Use PIC_OFFSET_TABLE_SAVE_RTX instead of
|
||
|
PIC_OFFSET_TABLE_REGNUM_SAVED.
|
||
|
* config/pa/pa.md: Use PIC_OFFSET_TABLE_SAVE_RTX instead of
|
||
|
PIC_OFFSET_TABLE_REGNUM_SAVED throughout.
|
||
|
* config/pa/pa32-regs.h (CONDITIONAL_REGISTER_USAGE): Remove
|
||
|
references to PIC_OFFSET_TABLE_REGNUM_SAVED.
|
||
|
* config/pa/pa64-regs.h (CONDITIONAL_REGISTER_USAGE): Likewise.
|
||
|
|
||
|
2001-01-15 DJ Delorie <dj@redhat.com>
|
||
|
|
||
|
* Makefile.in (gcov.1): Protect against texi2pod/pod2man failing.
|
||
|
(cpp.1): Ditto.
|
||
|
(gcc.1): Ditto.
|
||
|
|
||
|
Tue Jan 16 17:20:43 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* flow.c (propagate_one_insn): Make trying to delete a prologue
|
||
|
or epilogue insn an ICE, not a warning. Allow doing this if
|
||
|
the current function returns with stack pointer depressed.
|
||
|
|
||
|
* combine.c (try_combine): If i3_subst_into_i2, properly check for
|
||
|
I3 having more than one SET.
|
||
|
|
||
|
2001-01-16 Jim Wilson <wilson@redhat.com>
|
||
|
|
||
|
* invoke.texi: Document IA-64 options.
|
||
|
|
||
|
* config/ia64/ia64.c (ia64_print_operand_address): Delete 'B' support.
|
||
|
(fixup_errata): Delete TARGET_A_STEP use.
|
||
|
* config/ia64/ia64.h (MASK_A_STEP, TARGET_A_STEP): Delete.
|
||
|
(TARGET_SWITCHES): Delete -ma-step option.
|
||
|
* config/ia64/ia64.md (all FP patterns): Delete %B0.
|
||
|
(movqicc_astep, movqi_internal_astep, movhicc_astep,
|
||
|
movhi_internal_astep, movsicc_astep, movsi_internal_astep, movdi+1,
|
||
|
movdi_internal_astep, movsfcc_astep, movsf_internal_astep,
|
||
|
movdfcc_astep, movdf_internal_astep, movtfcc_astep,
|
||
|
movtf_internal_astep, cmovdi_internal_astep, cmovsi_internal_astep):
|
||
|
Delete.
|
||
|
(movqi_internal, movhi_internal, movsi_internal, movdi_internal,
|
||
|
movsf_internal, movdf_internal, movtf_internal, cmovdi_internal,
|
||
|
cmovsi_internal): Delete ! TARGET_A_STEP check.
|
||
|
|
||
|
2001-01-16 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
|
||
|
|
||
|
* gcc.texi (Bug Lists): Do not mention newsgroups nor the
|
||
|
possibility to report bugs via postal mail. Change a URL and
|
||
|
merge in a nearly duplicate statement...
|
||
|
(Bug Reporting): ...from here.
|
||
|
(Service): Refer to the Bug Reporting section instead of
|
||
|
duplicating an URL.
|
||
|
(Contributing): Remove trivial explanations concerning snapshots.
|
||
|
|
||
|
2001-01-16 Alan Modra <alan@linuxcare.com.au>
|
||
|
|
||
|
* cppmain.c (general_init): Don't use ANSI prototype.
|
||
|
|
||
|
2001-01-16 Tom Tromey <tromey@redhat.com>
|
||
|
|
||
|
* gcc.c (cpp_options): Added `*' to specs for -MF, -MQ, and -MT.
|
||
|
|
||
|
2001-01-16 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/i386/i386.h: Fix comment typo.
|
||
|
* config/i386/i386.md (shift+compare pattern names): s/cmpno/cmp/
|
||
|
(ashr+compare patterns): Match CCGOCmode not CCNOmode.
|
||
|
|
||
|
2001-01-16 Phil Edwards <pme@sources.redhat.com>
|
||
|
|
||
|
* gcc.c: Revert previous -fsyntax-only-related change; move
|
||
|
to cp/g++spec.c.
|
||
|
|
||
|
2001-01-16 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* config/i386/i386.c (fcmov_comparison_operator): Only initialize
|
||
|
inmode after checking GET_CODE (op).
|
||
|
|
||
|
2001-01-16 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* flow.c (struct propagate_block_info): Add mem_set_list_len.
|
||
|
(MAX_MEM_SET_LIST_LEN): New.
|
||
|
(propagate_one_insn): Update mem_set_list_len.
|
||
|
(invalidate_mems_from_autoinc): Likewise.
|
||
|
(invalidate_mems_from_set): Likewise.
|
||
|
(mark_used_regs): Likewise.
|
||
|
(init_propagate_block_info): Likewise. Stop collecting memories
|
||
|
when we reach MAX_MEM_SET_LIST_LEN.
|
||
|
(mark_set_1): Likewise.
|
||
|
|
||
|
2001-01-16 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* unroll.c (precondition_loop_p): Fail if no iteration
|
||
|
variable found.
|
||
|
|
||
|
2001-01-16 Phil Edwards <pme@sources.redhat.com>
|
||
|
|
||
|
* gcc.c: When -fsyntax-only is given, do not complain about
|
||
|
unused libraries.
|
||
|
|
||
|
2001-01-15 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/i386/i386.c (asm_output_function_prefix): Remove.
|
||
|
(ix86_asm_file_end): New.
|
||
|
(load_pic_register): Generate pic_label_name into a
|
||
|
statically allocated buffer.
|
||
|
* config/i386/i386-protos.h: Update.
|
||
|
* config/i386/i386.h (ASM_OUTPUT_FUNCTION_PREFIX): Remove.
|
||
|
(ASM_FILE_END): New.
|
||
|
* config/i386/i386afe.h: New file.
|
||
|
* config.gcc (i?86-*-elf) [tm_file]: Use it.
|
||
|
(i?86-*-{freebsd,linux*,moss*}): Likewise.
|
||
|
* config/elfos.h (ASM_FILE_END): Undef before redefinition.
|
||
|
* config/i386/cygwin.h (ASM_FILE_END): Likewise.
|
||
|
* config/i386/osfrose.h (ASM_FILE_END): Invoke ix86_asm_file_end.
|
||
|
* config/i386/sco5.h (ASM_FILE_END): Likewise.
|
||
|
* config/i386/winnt.c (i386_pe_asm_file_end): Likewise.
|
||
|
|
||
|
2001-01-15 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* Makefile.in (install-man): Remove explicit dependency on
|
||
|
$(srcdir)/gcc.1.
|
||
|
|
||
|
* configure.in, configure: Revert previous patch requiring perl
|
||
|
5.6.0.
|
||
|
|
||
|
2001-01-12 Aldy Hernandez <aldyh@redhat.com>
|
||
|
|
||
|
* toplev.c (flag_guess_branch_prob): New.
|
||
|
(f_options): Add guess-branch-probability option.
|
||
|
(rest_of_decl_compilation): Only estimate branch probability if
|
||
|
flag set.
|
||
|
(main): set flag_guess_branch_prob.
|
||
|
|
||
|
* flags.h (flag_guess_branch_prob): New.
|
||
|
|
||
|
2001-01-15 DJ Delorie <dj@redhat.com>
|
||
|
|
||
|
* gcc.texi (Makefile): Add documentation for Makefile targets.
|
||
|
|
||
|
2001-01-15 Philip Blundell <philb@gnu.org>
|
||
|
|
||
|
* config/arm/arm.c (arm_finalize_pic): New arg "prologue".
|
||
|
(is_pic): Delete.
|
||
|
* config/arm/arm-protos.h (arm_finalize_pic): Update prototype.
|
||
|
(is_pic): Delete declaration.
|
||
|
* config/arm/arm.h (FINALIZE_PIC): Update call to arm_finalize_pic.
|
||
|
(OUTPUT_INT_ADDR_CONST): Remove special handling of PIC address.
|
||
|
* config/arm/arm.md (builtin_setjmp_receiver): New.
|
||
|
|
||
|
2001-01-15 Richard Earnshaw <rearnsha@arm.com>
|
||
|
|
||
|
* arm.c (use_return_insn): Don't try to determine the function type
|
||
|
until after reload has completed.
|
||
|
(arm_output_epilogue): Don't adjust the sp value recovered from the
|
||
|
stack.
|
||
|
(emit_multi_reg_push): Don't record dwarf information for the pc.
|
||
|
* arm.md (eh_epilogue): The function type may have changed, so it
|
||
|
needs to be recalculated.
|
||
|
* arm/netbsd.h (DWARF2_UNWIND_INFO): Delete. Can now use dwarf2
|
||
|
unwind tables on arm/netbsd.
|
||
|
|
||
|
2001-01-15 Richard Earnshaw <rearnsha@arm.com>
|
||
|
|
||
|
* arm.md (cbranchsi4): Correct calculation of branch ranges.
|
||
|
(negated_cbranchsi4): Likewise.
|
||
|
|
||
|
2001-01-15 Richard Earnshaw <rearnsha@arm.com>
|
||
|
|
||
|
* config/arm/semi.h (SUBTARGET_EXTRA_SPECS): Define.
|
||
|
(SUBTARGET_EXTRA_ASM_SPEC): Define to empty string.
|
||
|
(ASM_SPEC): Call subtarget_extra_asm_spec. Don't
|
||
|
pass -mapcs-* options to assembler.
|
||
|
* config/arm/elf.h (SUBTARGET_EXTRA_SPECS): Define.
|
||
|
(SUBTARGET_EXTRA_ASM_SPEC): Define to empty string.
|
||
|
(ASM_SPEC): Call subtarget_extra_asm_spec.
|
||
|
|
||
|
2001-01-15 Andreas Jaeger <aj@suse.de>
|
||
|
|
||
|
* config/i386/i386.c (ix86_init_builtins): Make i size_t to remove
|
||
|
warnings.
|
||
|
(ix86_expand_builtin): Likewise.
|
||
|
|
||
|
* gencodes.c (output_predicate_decls): Make i size_t to avoid
|
||
|
warning about comparison between signed and unsigned.
|
||
|
|
||
|
2001-01-14 Geoffrey Keating <geoffk@redhat.com>
|
||
|
|
||
|
* expr.c (do_jump): Treat VOIDmode CONST_DOUBLEs like CONST_INTs.
|
||
|
|
||
|
2001-01-14 Ralf Baechle <ralf@gnu.org>
|
||
|
|
||
|
* config/mips/linux.h (SUBTARGET_CPP_SPEC): Default ABI is 32; change
|
||
|
SUBTARGET_CPP_SPEC appropriately.
|
||
|
|
||
|
2001-01-12 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* varasm.c (make_decl_rtl): Fix typo in last change.
|
||
|
|
||
|
2001-01-14 Jeffrey Oldham <oldham@codesourcery.com>
|
||
|
|
||
|
* defaults.h (SUPPORTS_INIT_PRIORITY): New macro to indicate the
|
||
|
linker supports the init_priority C++ attribute.
|
||
|
* tm.texi (SUPPORTS_INIT_PRIORITY): Documentation for new macro.
|
||
|
* config/mips/iris6.h (SUPPORTS_INIT_PRIORITY): Indicate Irix
|
||
|
linker does not support init_priority C++ attribute.
|
||
|
|
||
|
Sun Jan 14 22:31:30 2001 J"orn Rennecke <amylaar@redhat.com>
|
||
|
|
||
|
* Makefile.in (libgcc1-test.o): Depends on stmp-int-hdrs.
|
||
|
|
||
|
2001-01-14 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* c-parse.in (finish_parse): Add comment about cpp_destroy.
|
||
|
* cp/lex.c (finish_parse): Similarly.
|
||
|
* cppinit.c (cpp_cleanup): Rename cpp_destroy for clarity.
|
||
|
Return the number of errors encountered.
|
||
|
* cpplib.h (cpp_cleanup): Rename cpp_destroy, return int.
|
||
|
* cppmain.c (main): Don't call cpp_destroy.
|
||
|
|
||
|
2001-01-14 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* configure.in: Require at least perl 5.6.0 to regenerate
|
||
|
manpages.
|
||
|
* configure: Regenerate.
|
||
|
|
||
|
2001-01-14 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* genrecog.c (DT_veclen_ge): New.
|
||
|
(add_to_sequence) [MATCH_PARALLEL]: Generate one.
|
||
|
(maybe_both_true_2): Simplify DT_veclen vs DT_veclen_ge.
|
||
|
(nodes_identical_1): Handle DT_veclen_ge.
|
||
|
(write_cond, debug_decision_2): Likewise.
|
||
|
|
||
|
2001-01-14 Richard Earnshaw <rearnsha@arm.com>
|
||
|
|
||
|
* arm.md (ldmsi_postinc, ldmsi, stmsi_postinc, smsi): Delete. Replace
|
||
|
with ...
|
||
|
(ldmsi_postinc[432], ldmsi[432], stmsi_postinc[432], stmsi[432]): New.
|
||
|
|
||
|
2001-01-14 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppmain.c (do_preprocessing): New function; most of the old
|
||
|
main.
|
||
|
(main): Call it to do most of the work.
|
||
|
(cb): Move from global scope to set_callbacks ().
|
||
|
(setup_callbacks): Get the callback pointer.
|
||
|
(general_init, printer_init): Clean up code and comments.
|
||
|
|
||
|
2001-01-14 Richard Earnshaw <rearnsha@arm.com>
|
||
|
|
||
|
* config/arm/semi.h (ASM_SPEC): Pass -k to the assembler when
|
||
|
compiling PIC.
|
||
|
|
||
|
2001-01-14 Kazu Hirata <kazu@hxi.com>
|
||
|
|
||
|
* config/h8300/h8300.c (get_shift_alg): Update comments.
|
||
|
|
||
|
Sun Jan 14 06:20:49 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* ggc-page.c (alloc_annon): Call perror and correctly call exit.
|
||
|
(alloc_page, ggc_alloc): Add casts to remove warnings.
|
||
|
|
||
|
2001-01-14 Geoffrey Keating <geoffk@redhat.com>
|
||
|
|
||
|
* combine.c (simplify_comparison): Don't change `code' when
|
||
|
can't reverse comparison.
|
||
|
|
||
|
2001-01-14 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* rtlanal.c (computed_jump_p_1): Rename from jmp_uses_reg_or_mem;
|
||
|
update all call sites. Return true for all non-label constants.
|
||
|
|
||
|
Sun Jan 14 10:09:48 MET 2001 Jan hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (ix86_expand_compare): Add bypass_test and second_test
|
||
|
parameters.
|
||
|
(ix86_expand_branch): Update.
|
||
|
(ix86_expand_setcc): Update to handle multiple test conditions.
|
||
|
(expand_int_movcc): Likewise.
|
||
|
(expand_fp_movcc): Likewise.
|
||
|
* i386-protos.h (ix86_expand_compare): New.
|
||
|
* i386.md (andqi_?_slp, orqi_?_slp): New.
|
||
|
(conditional trap expander): Update call to ix86_expand_compare.
|
||
|
|
||
|
2001-01-14 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/vax/vax.md: Use nonimmediate_operand instead of
|
||
|
general_operand in destinations.
|
||
|
|
||
|
* config/vax/vax.md (indirect_jump): Use register_operand.
|
||
|
|
||
|
* config/vax/vax.h (RETURN_POPS_ARGS): Max at 255 arguments.
|
||
|
* config/vax/vax.md (call_pop): Turn into an expander.
|
||
|
(call_value_pop): Likewise.
|
||
|
(call, call_value): New.
|
||
|
|
||
|
2001-01-14 Andreas Jaeger <aj@suse.de>
|
||
|
|
||
|
* config/i386/i386.c (ix86_split_fp_branch): Remove unused
|
||
|
variables.
|
||
|
(ix86_fp_compare_mode): Add unused attribute.
|
||
|
(ix86_expand_fp_movcc): Remove unused variable.
|
||
|
(ix86_expand_builtin): Make fcode unsigned.
|
||
|
|
||
|
* expr.c (MOVE_BY_PIECES_P): Cast MOVE_RATIO to unsigned.
|
||
|
(expand_expr): Add cast to avoid signed warning.
|
||
|
(store_field): Likewise.
|
||
|
(store_constructor_field): Likewise.
|
||
|
(store_constructor): Likewise.
|
||
|
(store_expr): Likewise.
|
||
|
(clear_storage): Likewise.
|
||
|
(emit_group_store): Likewise.
|
||
|
(emit_group_load): Likewise.
|
||
|
|
||
|
2001-01-13 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* c-common.c: Move format checking code to ...
|
||
|
* c-format.c: ... here. New file. Reorder some functions and
|
||
|
declarations.
|
||
|
(decl_handle_format_attribute, decl_handle_format_arg_attribute):
|
||
|
New functions.
|
||
|
* c-common.h (decl_handle_format_attribute,
|
||
|
decl_handle_format_arg_attribute): Declare.
|
||
|
* Makefile.in (C_AND_OBJC_OBJS): Add c-format.o.
|
||
|
(c-common.o): Adjust dependencies.
|
||
|
(c-format.o): New list of dependencies.
|
||
|
|
||
|
2001-01-13 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* unroll.c (loop_iterations): If we cannot prove iteration variable
|
||
|
is set once in each iteration, punt.
|
||
|
|
||
|
Sun Jan 14 00:23:15 2001 Denis Chertykov <denisc@overta.ru>
|
||
|
|
||
|
* config/avr/avr.md ("strlenhi"): Remove clobber of input address.
|
||
|
(*strlenhi): Remove clobber (which was buggy) of output address.
|
||
|
|
||
|
2001-01-13 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* Makefile.in (generated-manpages): Add gcc.1
|
||
|
($(srcdir)/gcc.1): New target.
|
||
|
(maintainer-clean): Delete $(srcdir)/gcc.1.
|
||
|
* gcc.texi: Add macros @gccoptlist and @gol.
|
||
|
* invoke.texi: Include option summary in manpage. Mark up option
|
||
|
summary with @gccoptlist and @gol. Use @r in one place where
|
||
|
appropriate.
|
||
|
* texinfo.tex: Update to version 2000-12-11.07 from ftp.gnu.org.
|
||
|
* gcc.1: Generate from invoke.texi.
|
||
|
|
||
|
2001-01-13 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* ggc-page.c (USING_MALLOC_PAGE_GROUPS): New; set if not using mmap.
|
||
|
(struct page_entry): Add group member.
|
||
|
(struct page_group): New.
|
||
|
(struct globals): Add page_groups member.
|
||
|
(alloc_anon): Only define for using mmap; remove valloc call.
|
||
|
(page_group_index): New.
|
||
|
(set_page_group_in_use): New.
|
||
|
(clear_page_group_in_use): New.
|
||
|
(alloc_page): Implement USING_MALLOC_PAGE_GROUPS.
|
||
|
(free_page, release_pages): Likewise.
|
||
|
* configure.in (with-gc): Default to ggc-page always.
|
||
|
|
||
|
2001-01-13 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* reload1.c (replace_pseudos_in_call_usage): Use
|
||
|
reg_equiv_constant and reg_equiv_address, and don't try
|
||
|
regno_reg_rtx first.
|
||
|
|
||
|
2001-01-13 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* ggc-page.c (alloc_page): Round up allocation size to one page.
|
||
|
Set e->order on extra pages.
|
||
|
|
||
|
2001-01-13 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* genrecog.c (nodes_identical): Expand commentary.
|
||
|
(write_switch): Watch out for identical nodes.
|
||
|
|
||
|
2001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppfiles.c (_cpp_fake_include): New function.
|
||
|
* cpphash.h (_cpp_fake_include): New.
|
||
|
* cpplib.c (do_line): Call _cpp_fake_include when entering
|
||
|
header files in preprocessed input.
|
||
|
* cppmain.c (cb_pragma_implementation): Remove handling.
|
||
|
(setup_callbacks): Don't register pragmas.
|
||
|
|
||
|
2001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* extend.texi: Udate for CPP.
|
||
|
|
||
|
2001-01-13 Andreas Jaeger <aj@suse.de>
|
||
|
|
||
|
* reload1.c: Add prototype for replace_pseudos_in_call_usage.
|
||
|
|
||
|
* regmove.c: Add prototype for replace_in_call_usage.
|
||
|
|
||
|
2001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpplib.h (cpp_pool, mi_state, mi_ind, struct cpp_macro,
|
||
|
struct cpp_chunk, struct htab, struct toklist,
|
||
|
struct cpp_context, CPP_STACK_MAX, struct lexer_state,
|
||
|
struct spec_nodes, struct cpp_reader, CPP_OPTION, CPP_BUFFER,
|
||
|
CPP_BUF_LINE, CPP_BUF_COL, CPP_BUF_COLUMN, U, ustrcmp, ustrncmp,
|
||
|
ustrlen, uxstrdup, ustrchr, ufputs): Move to cpphash.h.
|
||
|
(struct macro_args): Delete.
|
||
|
* cpphash.h: See above.
|
||
|
|
||
|
2001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppmain.c (struct printer): Remove no_line_dirs.
|
||
|
(options, cb): New.
|
||
|
(main, setup_callbacks, scan_buffer, printer_init, cb_define)
|
||
|
: Use options rather than CPP_OPTION.
|
||
|
(setup_callbacks): Use cb rather than pfile->cb.
|
||
|
(main): No need to check for a buffer. Use cpp_errors.
|
||
|
(printer_init): Don't set no_line_dirs.
|
||
|
(maybe_print_line): Use options not no_line_dirs.
|
||
|
(cb_file_change): Don't call print_line if -P.
|
||
|
|
||
|
2001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* c-lex.c (init_c_lex): Use cpp_get_callbacks to set
|
||
|
callbacks.
|
||
|
* c-parse.in (finish_parse): Use cpp_errors.
|
||
|
(__yylex): Use return value of cpp_pop_buffer.
|
||
|
* cp/lex.c (finish_parse): Use cpp_errors.
|
||
|
* cp/spew.c (read_token): Use return value of cpp_pop_buffer.
|
||
|
|
||
|
Sat Jan 13 16:57:40 2001 Denis Chertykov <denisc@overta.ru>
|
||
|
|
||
|
* README.AVR: URLs corrected.
|
||
|
|
||
|
Sat Jan 13 07:30:02 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* c-decl.c (start_function): Don't warn if old prototype is builtin
|
||
|
that's not in C's namespace.
|
||
|
* libgcc2.c (_varargs): Update definition of __builtin_saveregs.
|
||
|
(_bb): Add prototype for ctime.
|
||
|
* config/alpha/osf.h (TRANSFER_FROM_TRAMPOLINE): Add missing protos.
|
||
|
|
||
|
Sat Jan 13 09:53:32 MET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (ix86_fp_comparison_arithmetics_cost,
|
||
|
ix86_fp_comparison_fcomi_cost, ix86_fp_comparison_sahf_cost,
|
||
|
ix86_fp_comparison_cost): New functions.
|
||
|
(ix86_expand_fp_compare): Use the costs to choose best bethod; add
|
||
|
two new parameters SECOND_TEST and BYPASS_TEST; allow generating
|
||
|
two-branch sequences; make static.
|
||
|
(ix86_use_fcomi_compare): Do decision according to the costs.
|
||
|
(split_fp_branch): New.
|
||
|
* i386.md (compare-and-branch patterns): Use split_fp_branch.
|
||
|
* i386-protos.h (ix86_expand_fp_compare): Remove
|
||
|
(ix86_split_fp_branch): Declare.
|
||
|
|
||
|
* i386.h (PREDICATE_CODES): Update codes from fcmov_comparison_operand
|
||
|
and ix86_comparison_operator.
|
||
|
|
||
|
* i386.c (ix86_prepare_fp_compare_args): Try to rearange the comparison
|
||
|
to make it cheaper.
|
||
|
|
||
|
* i386.c (put_condition_code): Output properly the unordered/ordered
|
||
|
compares in fp case.
|
||
|
(ix86_expand_fp_movcc): Use ix86_expand_compare infrastructure.
|
||
|
|
||
|
* tm.texi (REVERSE_CONDITION): Document.
|
||
|
* i386.c (ix86_fp_compare_mode): Simplify; return always CCFPmode
|
||
|
in -ffast-math mode.
|
||
|
* i386.h (REVERSE_CONDITION, REVERSIBLE_CC_MODE): New macro.
|
||
|
|
||
|
2001-01-13 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/sh/sh.c (sh_expand_epilogue): Use PR explicitly.
|
||
|
|
||
|
* config/sh/sh.c (sh_expand_prologue): Let the second toggle_sz be
|
||
|
optimized away.
|
||
|
|
||
|
* config/sh/sh.c (mova_p): Fix test for mova_const.
|
||
|
|
||
|
2001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* fix-header.c (read_scan_file): Use cpp_get_callbacks and
|
||
|
cpp_get_options rather than dereferencing pfile and using
|
||
|
CPP_OPTION.
|
||
|
* scan-decls.c (scan_decls): Use return value of
|
||
|
cpp_pop_buffer rather than CPP_BUFFER.
|
||
|
|
||
|
2001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppinit.c (cpp_handle_option): help_only is now part of the
|
||
|
cpp_options structure.
|
||
|
* cpplib.c (cpp_errors, cpp_get_options, cpp_get_callbacks,
|
||
|
cpp_set_callbacks): New functions.
|
||
|
* cpplib.h (cpp_callbacks): Break out as a named structure.
|
||
|
(cpp_options): Move help_only here from cpp_reader.
|
||
|
(CPP_FATAL_ERRORS): Update to use cpp_errors.
|
||
|
(cpp_errors, cpp_get_options, cpp_get_callbacks,
|
||
|
cpp_set_callbacks): New prototypes.
|
||
|
* cppmain.c (main): Update for help_only.
|
||
|
|
||
|
2001-01-13 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* Makefile.in (info, maintainer-clean, install-info, uninstall):
|
||
|
Also build and remove and install and uninstall c-tree.info and
|
||
|
cppinternals.info.
|
||
|
($(srcdir)/gcc.info): Add dependency on contrib.texi.
|
||
|
($(srcdir)/cppinternals.info): New target.
|
||
|
* c-tree.texi: Change file name used when makeinfo used without -o
|
||
|
from ir.info to c-tree.info. Add info directory entry.
|
||
|
* cppinternals.texi: Add info directory entry.
|
||
|
* .cvsignore: Update.
|
||
|
|
||
|
2001-01-12 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* c-typeck.c (store_init_value): Don't require constant initializer
|
||
|
elements with -pedantic -std=c99.
|
||
|
(digest_init): Change error about non-constant initializer elements
|
||
|
into pedwarn.
|
||
|
(constructor_range_end): Remove.
|
||
|
(constructor_incremental, designator_depth,
|
||
|
designator_errorneous): New variables.
|
||
|
(struct constructor_stack): Remove range_end, add incremental.
|
||
|
(struct constructor_range_stack, constructor_range_stack): New.
|
||
|
(struct initializer_stack): Add constructor_range_stack.
|
||
|
(finish_init): Set it.
|
||
|
(start_init): Likewise. require_constant_elements for non-static
|
||
|
trees only if not flag_isoc99.
|
||
|
(really_start_incremental_init): Remove constructor_range_end, add
|
||
|
constructor_incremental.
|
||
|
(pop_init_level): Likewise.
|
||
|
(push_init_level): Likewise. If implicit and the subobject had some
|
||
|
value set already, preinitialize the level with it.
|
||
|
Warn about missing braces only if not pushing due to designators.
|
||
|
(set_designator, push_range_stack): New functions.
|
||
|
(set_init_label): Use them.
|
||
|
(set_init_index): Likewise. Remove constructor_range_end.
|
||
|
Error if designator index is outside of array bounds.
|
||
|
(add_pending_init): Compare values of purpose index trees, not the
|
||
|
trees themselves. Allow overwriting of already initialized element.
|
||
|
Issue a warning if it had side-effects.
|
||
|
(set_nonincremental_init, set_nonincremental_init_from_string): New
|
||
|
functions.
|
||
|
(pending_init_member): Rename to...
|
||
|
(find_init_member): ...this function. Call set_nonincremental_init
|
||
|
if necessary. Compare values of purpose index trees, not the trees
|
||
|
themselves. Return the actual value, not just non-zero if something
|
||
|
is found.
|
||
|
(output_init_element): Remove checks for duplicates.
|
||
|
If field has zero size, only check the initializer for correctness.
|
||
|
Call set_nonincremental_init if necessary. Push RECORD/ARRAY into AVL
|
||
|
if constructor_incremental is zero. Change error about initializers
|
||
|
not computable at load time into pedwarn.
|
||
|
(output_pending_init_elements): Compare bit positions, not
|
||
|
FIELD_DECLs to take into account zero-sized fields.
|
||
|
(process_init_element): Use constructor_range_stack to fill all
|
||
|
ranges in the designator lists from current level up.
|
||
|
* extend.texi: Update documentation for labeled elements.
|
||
|
|
||
|
2001-01-12 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* calls.c (emit_library_call_value_1): Add USEs and CLOBBERs
|
||
|
to function usage for arguments passed by reference. Optimize
|
||
|
callee-copied arguments.
|
||
|
* regmove.c (replace_in_call_usage): New function.
|
||
|
(fixup_match_1): Call it.
|
||
|
* cse.c (cse_insn): Canonicalize registers in function usage.
|
||
|
* reload1.c (replace_pseudos_in_call_usage): New function.
|
||
|
(reload): Call it.
|
||
|
|
||
|
* Makefile.in: Reverted yesterday's wrong patch. Installed the
|
||
|
right version.
|
||
|
|
||
|
2001-01-12 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* config/alpha/alpha.c (alpha_expand_block_move): GET_MODE of tmp,
|
||
|
not XEXP (tmp, 0).
|
||
|
|
||
|
2001-01-12 DJ Delorie <dj@redhat.com>
|
||
|
|
||
|
* Makefile.in (bootstrap): rename stages to be mnemonic. Add
|
||
|
restageN, unstageN, bubblestrap, quickstrap, and cleanstrap
|
||
|
targets.
|
||
|
|
||
|
2001-01-12 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* cpp.texi, extend.texi, gcc.texi, install.texi, invoke.texi,
|
||
|
tm.texi: Consistently refer to ISO C instead of ANSI C. Refer to
|
||
|
-std options alongside references to -ansi. Update some
|
||
|
documentation for C99.
|
||
|
* cpp.1: Regenerate.
|
||
|
|
||
|
2001-01-12 Andreas Jaeger <aj@suse.de>
|
||
|
|
||
|
* haifa-sched.c (restore_line_notes): Remove argument block B
|
||
|
since it's unused.
|
||
|
* sched-ebb.c (schedule_ebb): Change caller.
|
||
|
* sched-rgn.c (schedule_region): Likewise.
|
||
|
* sched-int.h (restore_line_notes): Adjust prototype.
|
||
|
|
||
|
* loop.h: Remove wrong declaration of doloop_condition_get.
|
||
|
|
||
|
2001-01-12 Phil Edwards <pme@sources.redhat.com>
|
||
|
|
||
|
* extend.texi: Move C++-extension-related node from the C section
|
||
|
into the C++ section.
|
||
|
|
||
|
2001-01-12 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* extend.texi: Refer to an array of pointers to functions instead
|
||
|
of one of functions.
|
||
|
|
||
|
Fri Jan 12 12:08:12 MET 2001 Andreas Jaeger <aj@suse.de>
|
||
|
Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* combine.c (reversed_comparison): Fix typo in last patch.
|
||
|
Check X for NULL.
|
||
|
(combine_reversed_comparison_code): Make static to follow
|
||
|
prototype declaration.
|
||
|
|
||
|
2001-01-12 Phil Edwards <pme@sources.redhat.com>
|
||
|
|
||
|
* install.texi: Remove misplaced duplicate entry.
|
||
|
|
||
|
2001-01-11 Ulrich Drepper <drepper@redhat.com>
|
||
|
|
||
|
* config/float-i386.h: Define FLT_EVAL_METHOD and DECIMAL_DIG for C99.
|
||
|
|
||
|
Thu Jan 11 17:06:30 EST 2001 John Wehle (john@feith.com)
|
||
|
|
||
|
* final.c: (leaf_function_p): Fix typo.
|
||
|
|
||
|
2001-01-11 Zack Weinberg <zack@wolery.stanford.edu>
|
||
|
|
||
|
* aclocal.m4 (AC_FUNC_MMAP_ANYWHERE): Completely rewritten.
|
||
|
Now defines HAVE_MMAP_DEV_ZERO and/or HAVE_MMAP_ANON depending
|
||
|
which you have.
|
||
|
(AC_FUNC_MMAP_FILE): Don't AC_REQUIRE AC_FUNC_MMAP_ANYWHERE.
|
||
|
* configure.in: Set GGC to ggc-page if any of mmap_dev_zero,
|
||
|
mmap_anon, and valloc is available.
|
||
|
* ggc-page.c: Restructure ifdef logic to match new autoconf
|
||
|
spec. Don't throw away the test page in init_ggc.
|
||
|
|
||
|
* configure, config.in: Regenerate.
|
||
|
|
||
|
2001-01-12 Michael Hayes <mhayes@redhat.com>
|
||
|
|
||
|
* loop.h (total_biv_increment): Constify iv_class pointer.
|
||
|
(struct induction): Replace `mem_mode' with `mem' rtx.
|
||
|
* unroll.c (total_biv_increment): Constify iv_class pointer.
|
||
|
* loop.c (loop_giv_reduce_benefit): Derive mem mode from mem rtx.
|
||
|
(find_mem_givs, combine_givs_p): Likewise.
|
||
|
(debug_ivs, debug_iv_class, loop_ivs_dump, loop_iv_class_dump): New.
|
||
|
|
||
|
2001-01-10 Thomas Pfaff <tpfaff@gmx.net>
|
||
|
|
||
|
* gthr-win32.h (__gthread_objc_thread_get_data): Save and restore Win32
|
||
|
LastError.
|
||
|
(__gthread_getspecific): Ditto.
|
||
|
|
||
|
Fri Jan 12 00:04:00 MET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (ix86_comparison_operator, fcmov_comparison_operator,
|
||
|
put_condition_code): Convert fp comparison codes to integer
|
||
|
before handling.
|
||
|
(ix86_expand_fp_compare): Postnote the fp comparison code conversion
|
||
|
to final.
|
||
|
|
||
|
* i386.c (unsigned_comparison, no_comparison_operator): Kill.
|
||
|
* i386-protos.h (no_comparison_operator): Kill.
|
||
|
|
||
|
* i386.c (ix86_expand_fp_compare): Fix ordered/unordered confussion.
|
||
|
|
||
|
* combine.c (REVERSIBLE_CC_MODE): Remove.
|
||
|
(reversible_comparison_p): Remove.
|
||
|
(combine_reversed_comparison_code): New.
|
||
|
(reversed_comparison): New.
|
||
|
(combine_simplify_rtx): Use
|
||
|
combine_reversed_comparison_code/reversed_comparison instead
|
||
|
of reversible_comparison_p.
|
||
|
(simplify_if_then_else): Likewise.
|
||
|
(simplify_set): Likewise.
|
||
|
(simplify_logical): Likewise.
|
||
|
(if_then_else_cond): Likewise.
|
||
|
(known_cond): Likewise.
|
||
|
(simplify_comparison): Likewise.
|
||
|
|
||
|
2001-01-11 Alan Lehotsky <lehotsky@tiac.net>
|
||
|
|
||
|
* builtins.c (std_expand_builtin_va_start): Handle varargs when
|
||
|
sizeof (int) is larger than sizeof(__word__).
|
||
|
|
||
|
2001-01-11 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppinit.c (do_includes): Fix typo.
|
||
|
|
||
|
2001-01-11 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/m68hc11.md (cmphi_1): Make sure reloading
|
||
|
in S_REGS does not occur because not all sources are possible
|
||
|
when a S_REGS is a destination (sometimes needs a clobber).
|
||
|
(movqi_const0, zero_extendhisi2, zero_extendqisi2): Likewise.
|
||
|
(zero_extendhidi2, extendqisi2, extendqihi2, extendhisi2): Likewise.
|
||
|
(anddi3, iordi3, xordi3, negqi2, one_cmplhi2, one_cmplqi2: Likewise.
|
||
|
(ashldi3_const32, ashldi3_const1, ashlsi3_const16): Likewise.
|
||
|
(ashlsi3_const1, ashlhi3_2, ashlqi3_const1, ashrhi3): Likewise.
|
||
|
(ashrqi3_const1, lshrdi3_const32, lshrdi3_const63): Likewise.
|
||
|
(lshrdi_const1, lshrsi3_const16): Likewise.
|
||
|
(*addhi3, lshrsi3_const1, lshrqi3_const1): Likewise.
|
||
|
(*movhi_68hc12, *movqi_68hc12): Likewise.
|
||
|
(movstrictqi): Make sure reloading in D_REGS as a destination
|
||
|
does not happen.
|
||
|
|
||
|
2001-01-11 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppspec.c (DEFAULT_WORD_SWITCH_TAKES_ARG): Add -MQ.
|
||
|
|
||
|
2001-01-11 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppinit.c (cpp_start_read): If -fpreprocessed, ignore
|
||
|
-D, -U and -A, and don't initialize the builtins.
|
||
|
(do_includes): Error if -include or -imacros with -fpreprocessed.
|
||
|
* cppmain.c (cb_define, cb_undef): Unconditionally process
|
||
|
the callback.
|
||
|
* tradcpp.c (main): Fix typo.
|
||
|
|
||
|
2000-01-11 Mark Elbrecht <snowball3@bigfoot.com>
|
||
|
|
||
|
* cppfiles.c (cpp_included, find_include_file, _cpp_execute_include)
|
||
|
(read_name_map): Use IS_ABSOLUTE_PATH.
|
||
|
* tradcpp.c (get_filename): Likewise.
|
||
|
|
||
|
2001-01-11 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||
|
|
||
|
* config/m68hc11/m68hc11.md (*adcq, *subcq): Fix operand numbers.
|
||
|
(*ashlsi3_const16_zexthi, *ashlsi3_const1): Likewise.
|
||
|
(*lshrsi3_const, *lshrsi3_const1, *lshrsi3_const16): Likewise.
|
||
|
(*ashrsi3, *ashrsi3_const, *ashlsi3, *ashlsi3_const): Likewise.
|
||
|
(*ashlsi3_const1, *lshrsi3, *ashlsi3_const16): Likewise.
|
||
|
(cmphi_z_used): Don't use '@' for the output.
|
||
|
(tstqi_z_used): Likewise.
|
||
|
(cmpqi_z_used): Likewise.
|
||
|
(one_cmplsi2): Likewise.
|
||
|
|
||
|
2001-01-11 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/sh/sh.c (barrier_align): Recognize branch around far
|
||
|
branch and redundant insn.
|
||
|
|
||
|
2001-01-11 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* invoke.texi: Restore documentation of the drivers' switches -MD
|
||
|
and -MMD.
|
||
|
|
||
|
2001-01-11 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/sh/sh.h (LABEL_ALIGN): Use UNSPECV_ALIGN instead of 1.
|
||
|
|
||
|
* Makefile.in (check-gcc//%, check-g++//%, check-g77//%,
|
||
|
check-objc//%): Support parallel testing of multilibs.
|
||
|
(TESTSUITEDIR): Set to testsuite by default, but override for
|
||
|
parallel testing.
|
||
|
(check-gcc, check-g++, check-g77, check-objc): Enter
|
||
|
$(TESTSUITEDIR).
|
||
|
|
||
|
2001-01-11 Bernd Schmidt <bernds@redhat.com>
|
||
|
|
||
|
* alias.c (throughout): Use REGNO, rather than ORIGINAL_REGNO.
|
||
|
* sched-deps.c (deps_may_trap_p): Likewise.
|
||
|
* basic-block.h: Remove a comment.
|
||
|
* flow.c (PROP_POSTRELOAD): Remove.
|
||
|
(update_life_info): Don't add it to prop_flags.
|
||
|
(mark_set_1): Lose the code that was enabled by it.
|
||
|
|
||
|
2001-01-11 Michael Hayes <mhayes@redhat.com>
|
||
|
|
||
|
* flow.c (flow_call_edges_add): New.
|
||
|
* basic_block.h (flow_call_edges_add): New.
|
||
|
|
||
|
2001-01-11 J"orn Rennecke <amylaar@redhat.com>
|
||
|
|
||
|
* reload1.c (move2add_note_store): Update reg_set_luid even if
|
||
|
base reg remains the same.
|
||
|
|
||
|
2001-01-10 Nick Clifton <nickc@redhat.com>
|
||
|
|
||
|
* config/d30v/d30v.c (d30v_init_machine_status): Initialise
|
||
|
machine_function structure to zero.
|
||
|
Add prototypes for machine_status functions.
|
||
|
|
||
|
2001-01-10 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* c-common.h (CTI_VOID_LIST): Remove.
|
||
|
(void_list_node): Likewise.
|
||
|
* tree.h (TI_VOID_LIST_NODE): New enumeral.
|
||
|
(void_list_node): New macro.
|
||
|
* config/arm/arm.c (arm_init_builtins): Use void_list_node.
|
||
|
* config/i386/i386.c (ix86_init_builtins): Likewise.
|
||
|
* config/ia64a/ia64.c (ia64_init_builtins): Likewise.
|
||
|
|
||
|
2001-01-10 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* Makefile.in (tradcpp0): Depend on mkdeps.h. Link mkdeps.o
|
||
|
* cppinit.c (cpp_start_read): Update comment, remove unneeded
|
||
|
if statement.
|
||
|
* tradcpp.c: Include mkdeps.h.
|
||
|
(deps, print_deps_phony_targets, deps_append, output_deps,
|
||
|
init_dependency_output, output_deps): New.
|
||
|
(deps_buffer, deps_allocated_size, deps_size, deps_column,
|
||
|
deps_output): Delete.
|
||
|
(print_deps_missing_files): Rename deps_missing_files.
|
||
|
(inhibit_output): Make global.
|
||
|
(main): Delete inhibit_output, deps_stream, deps_target.
|
||
|
Use mkdeps functionality in the same way as cpplib. Remove
|
||
|
-g3 handling. Handle -MF, -MP, -MQ, -MT. Update handling of
|
||
|
-M and -MM. Remove old handling of deps via deps_out, and
|
||
|
old reading of environment variables.
|
||
|
(get_filename): Update to use deps_add_dep.
|
||
|
|
||
|
2001-01-10 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* output.h (make_function_rtl): Remove prototype.
|
||
|
(make_decl_rtl): Likewise.
|
||
|
* varasm.c (make_function_rtl): Remove.
|
||
|
(make_decl_rtl): Determine top-levelness from DECL_CONTEXT, rather
|
||
|
than from a third parameter.
|
||
|
* tree.h (make_decl_rtl): Remove last parameter.
|
||
|
* c-decl.c (builtin_function): Remove last argument in call to
|
||
|
make_decl_rtl; use make_function_rtl instead of make_decl_rtl.
|
||
|
(start_function): Likewise.
|
||
|
* except.c (call_get_eh_context): Likewise.
|
||
|
* expr.c (emit_block_move): Likewise.
|
||
|
(clear_storage): Likewise.
|
||
|
* profile.c (output_func_start_profiler): Likewise.
|
||
|
* toplev.c (rest_of_decl_compilation): Likewise.
|
||
|
* objc/objc-act.c (create_builtin_decl): Likewise.
|
||
|
(synth_module_prologue): Likewise.
|
||
|
(generate_static_reference): Likewise.
|
||
|
(build_selector_reference_decl): Likewise.
|
||
|
(build_class_reference_decl): Likewise.
|
||
|
(build_objc_string_decl): Likewise.
|
||
|
(build_protocol_reference): Likewise.
|
||
|
|
||
|
2001-01-10 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* hwint.h: Revert yesterday's change.
|
||
|
|
||
|
2001-01-10 Nick Clifton <nickc@redhat.com>
|
||
|
|
||
|
* function.h (save_machine_status): Delete.
|
||
|
(restore_machine_status): Delete.
|
||
|
Amend comment describing {init|mark|free}_machine_status.
|
||
|
|
||
|
* function.c (save_machine_status): Delete.
|
||
|
(restore_machine_status): Delete.
|
||
|
Amend comment describing {init|mark|free}_machine_status.
|
||
|
(push_function_context_to): Remove invocation of
|
||
|
save_machine_status.
|
||
|
(pop_function_context_from): Remove invocation of
|
||
|
restore_machine_status.
|
||
|
|
||
|
* emit-rtl.c (init_emit_once): Amend comment describing
|
||
|
{init|mark|free}_machine_status.
|
||
|
|
||
|
* tm.texi (Per-Function Data): New node. Describe the
|
||
|
INIT_EXPANDERS macro and the {init|mark|free}_machine_status
|
||
|
function pointers.
|
||
|
|
||
|
2001-01-10 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppinit.c (OPT_g): Remove.
|
||
|
(cpp_handle_option): Update for removed -g3.
|
||
|
(print_help): Update.
|
||
|
* cpplib.h (struct cpp_options): Remove debug_output.
|
||
|
* cppmain.c (setup_callbacks, cb_define): Update.
|
||
|
* gcc.c (cpp_options): Translate -g3 to -dD.
|
||
|
|
||
|
2001-01-10 Aldy Hernandez <aldyh@redhat.com>
|
||
|
|
||
|
* config/i960/i960.md: Change modifier to + on the zero_extract
|
||
|
pattern after the (rotate -2 reg) canonicalization pattern.
|
||
|
|
||
|
2001-01-10 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/alpha/alpha.c (alpha_free_machine_status): New.
|
||
|
(override_options): Install it.
|
||
|
(alpha_mark_machine_status): Verify machine non-null.
|
||
|
* config/i386/i386.c (ix86_free_machine_status): New.
|
||
|
(override_options): Install it.
|
||
|
(ix86_init_machine_status): Use xcalloc.
|
||
|
(ix86_mark_machine_status): Verify machine non-null.
|
||
|
* config/ia64/ia64.c (ia64_free_machine_status): New.
|
||
|
(ia64_override_options): Install it.
|
||
|
(ia64_mark_machine_status): Verify machine non-null.
|
||
|
|
||
|
Wed Jan 10 11:34:39 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* function.c (instantiate_virtual_regs): Instantiate virtual
|
||
|
registers found in CALL_INSN_FUNCTION_USAGE.
|
||
|
|
||
|
2001-01-10 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* i386.h (CPP_CPU_SPEC): Allow for -std=c* and -std=i* as
|
||
|
equivalent to -ansi in disabling -Di386.
|
||
|
|
||
|
Wed Jan 10 16:38:31 MET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (ix86_fp_compare_code_to_integer, ix86_fp_comparison_codes):
|
||
|
new functions.
|
||
|
(ix86_expand_fp_compare): Make trivial use of new infrastructure.
|
||
|
|
||
|
2001-01-10 Richard Earnshaw <rearnsha@arm.com>
|
||
|
|
||
|
* arm.c (arm_init_builtins): Temporarily disable xscale builtins.
|
||
|
|
||
|
2001-01-10 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* invoke.texi: Document that -fcond-mismatch isn't supported for
|
||
|
C++.
|
||
|
|
||
|
2001-01-10 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* gcc.texi: Define macro gcctabopt.
|
||
|
* invoke.texi: Add manpage sections BUGS and AUTHOR. Use
|
||
|
@command, @env and @option in some places where appropriate. Use
|
||
|
@gcctabopt where appropriate. Put URLs and email addresses inside
|
||
|
@w.
|
||
|
|
||
|
2001-01-10 Nathan Sidwell <nathan@codesourcery.com>
|
||
|
|
||
|
* gcc.c (cpp_options): Set MD file name from output
|
||
|
filename, if specified.
|
||
|
(suffix_subst): New static variable.
|
||
|
(do_spec): Clear it.
|
||
|
(do_spec_1, case '.'): Handle new `%.suffix' spec.
|
||
|
Clear it.
|
||
|
(give_switch): Handle suffix_subst.
|
||
|
|
||
|
2001-01-10 Phil Edwards <pme@sources.redhat.com>
|
||
|
|
||
|
* invoke.texi: Fix another typo.
|
||
|
|
||
|
2001-01-10 Phil Edwards <pme@sources.redhat.com>
|
||
|
|
||
|
* invoke.texi: Fix typo.
|
||
|
|
||
|
2001-01-10 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* c-lang.c (lang_hooks): Update.
|
||
|
(lang_decode_option): Remove.
|
||
|
(lang_init_options): Rename c_init_options.
|
||
|
* toplev.c (main): Use lang_hooks for lang_init_options
|
||
|
and lang_decode_option.
|
||
|
* toplev.h (lang_hooks): Add 2 new hooks.
|
||
|
* tree.h: Remove lang_init_options and lang_decode_option.
|
||
|
* cp/cp-tree.h (lang_decode_option): Rename cxx_decode_option.
|
||
|
* cp/decl2.c: Similarly.
|
||
|
* cp/lex.c (lang_init_options): Rename cxx_init_options.
|
||
|
(lang_hooks): Update.
|
||
|
* f/com.c (f_init, f_finish): Rename ffe_init, ffe_finish
|
||
|
for consistency.
|
||
|
(lang_init_options): Rename ffe_init_options.
|
||
|
(lang_hooks): Update.
|
||
|
(lang_decode_option): Remove.
|
||
|
* java/lang.c (lang_init_options): Rename java_init_options.
|
||
|
(lang_decode_option): Rename java_decode_option.
|
||
|
(lang_hooks): Update.
|
||
|
* objc/objc-act.c (lang_init_options): Rename objc_init_options.
|
||
|
(lang_decode_option): Rename objc_decode_option.
|
||
|
(lang_hooks): Update.
|
||
|
|
||
|
2001-01-09 Nick Clifton <nickc@redhat.com>
|
||
|
|
||
|
* config/d30v/d30v.c (d30v_eh_epilogue_sp_ofs): Delete.
|
||
|
(d30v_return_addr_rtx): Delete.
|
||
|
(d30v_expand_epilogue): Use eh_epilogue_sp_ofs field in the
|
||
|
cfun->machine structure.
|
||
|
(struct machine_function): Move to d30v.h
|
||
|
(d30v_save_machine_status): Delete.
|
||
|
(d30v_restore_machine_status): Delete.
|
||
|
(d30v_init_machine_status): New Function.
|
||
|
(d30v_mark_machine_status): New Function.
|
||
|
(d30v_free_machine_status): New Function.
|
||
|
(d30v_init_expanders): Use new functions.
|
||
|
(d30v_return_addr): Use ra_rtx field in cfun->machine.
|
||
|
(d30v_add_gc_roots): Remove d30v_eh_epilogue_sp_ofs and
|
||
|
d30v_return_addr_rtx.
|
||
|
|
||
|
* config/d30v/d30v.h (struct_machine): Move here.
|
||
|
Add eh_epilogue_sp_ofs field.
|
||
|
|
||
|
*config/d30v/d30v.md (epilogue): Initialise eh_epilogue_sp_ofs
|
||
|
field in cfun->machine structure.
|
||
|
|
||
|
Tue Jan 9 21:34:57 2001 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||
|
|
||
|
* pa32-regs.h (CONDITIONAL_REGISTER_USAGE): When generating pic code,
|
||
|
PIC_OFFSET_TABLE_REGNUM_SAVED is a call_used register.
|
||
|
* pa64-regs.h (CONDITIONAL_REGISTER_USAGE): Likewise.
|
||
|
|
||
|
Tue Jan 9 21:25:19 2001 Jeffrey A Law (law@cygnus.com)
|
||
|
|
||
|
* objc/lang-options.h: Remove bogus reference to
|
||
|
Java trademark.
|
||
|
|
||
|
2001-01-09 Kazu Hirata <kazu@hxi.com>
|
||
|
|
||
|
* config/h8300/h8300.c (get_shift_alg): Use a struct shift_info to
|
||
|
return the result.
|
||
|
|
||
|
2001-01-09 Alan Lehotsky <lehotsky@tiac.net>
|
||
|
|
||
|
* reload.c (find_reloads_address): Check for eliminable registers
|
||
|
when substituting a constant expression for a pseudo.
|
||
|
|
||
|
2001-01-09 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* c-common.c (enum format_type): Add format_type_error.
|
||
|
(decode_format_type): New function.
|
||
|
(decl_attributes): Use it.
|
||
|
(format_kind_info): Adjust comment.
|
||
|
|
||
|
2001-01-09 David O'Brien <obrien@BSDi.com>
|
||
|
|
||
|
* config.gcc (*-*-gnu*, i[34567]86-*-elf*, i[34567]86-*-linux*libc1,
|
||
|
i[34567]86-*-linux*, i[34567]86-*-moss*): Specify needed platform specific
|
||
|
files in tm_file.
|
||
|
* config/i386/gnu.h: Don't include required platform specific .h files,
|
||
|
tm.h will do it instead.
|
||
|
* config/i386/i386elf.h: Likewise.
|
||
|
* config/i386/linux.h: Likewise.
|
||
|
* config/i386/moss.h: Likewise.
|
||
|
* config/mips/gnu.h: Likewise.
|
||
|
|
||
|
2001-01-09 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
|
||
|
|
||
|
* config.gcc (powerpc-*-beos*): Include ${tm_file} and rs6000/aix.h.
|
||
|
(rs6000-ibm-aix3.[01]*): Likewise.
|
||
|
(rs6000-ibm-aix3.2.[456789]*, powerpc-ibm-aix3.2.[456789]*): Likewise.
|
||
|
(rs6000-ibm-aix4.[12]*, powerpc-ibm-aix4.[12]*): Likewise.
|
||
|
(rs6000-ibm-aix4.[3456789]*, powerpc-ibm-aix4.[3456789]*): Likewise.
|
||
|
(rs6000-ibm-aix[56789].*, powerpc-ibm-aix[56789].*): Likewise.
|
||
|
(powerpc-*-sysv*): Include {tm_file}. svr4.h and rs6000/sysv4.h.
|
||
|
(powerpc-*-eabiaix*): Likewise.
|
||
|
(powerpc-*-eabisim*): Likewise.
|
||
|
(powerpc-*-elf*): Likewise.
|
||
|
(powerpc-*-eabi*): Likewise.
|
||
|
(powerpc-*-rtems*): Likewise.
|
||
|
(powerpc-*-linux*libc1): Likewise.
|
||
|
(powerpc-*-linux*): Likewise.
|
||
|
(powerpc-wrs-vxworks*): Likewise.
|
||
|
(powerpcle-wrs-vxworks*): Likewise.
|
||
|
(powerpcle-*-sysv*): Likewise.
|
||
|
(powerpcle-*-elf*): Likewise.
|
||
|
(powerpcle-*-eabisim*): Likewise.
|
||
|
(powerpcle-*-eabi*): Likewise.
|
||
|
(powerpcle-*-solaris2*): Likewise.
|
||
|
* config/rs6000/aix31.h: Delete includes.
|
||
|
* config/rs6000/aix3newas.h: Likewise.
|
||
|
* config/rs6000/aix41.h: Likewise.
|
||
|
* config/rs6000/aix43.h: Likewise.
|
||
|
* config/rs6000/beos.h: Likewise.
|
||
|
* config/rs6000/rtems.h: Likewise.
|
||
|
* config/rs6000/sysv4.h: Likewise.
|
||
|
|
||
|
2001-01-09 Kazu Hirata <kazu@hxi.com>
|
||
|
|
||
|
* config/h8300/h8300.c (get_shift_alg): Remove an argument cpu.
|
||
|
Change an argument mode of machine_mode to shift_mode of
|
||
|
shift_mode. Remove an extra error check.
|
||
|
(emit_a_shift): Adopt to the new calling prototype of
|
||
|
get_shift_alg.
|
||
|
(function_prologue): Fix code for a monitor
|
||
|
function. Support H8/S.
|
||
|
(function_epilogue): Do not output pop for a monitor function.
|
||
|
|
||
|
2001-01-09 Nick Clifton <nickc@redhat.com>
|
||
|
|
||
|
* config/rs6000/rs6000.c (rs6000_sysv_varargs_p): Delete.
|
||
|
(setup_incoming_varargs): Use sysv_varargs_p field of the
|
||
|
cfun->machine structure.
|
||
|
(struct machine_function): Move to rs6000.h
|
||
|
(rs6000_save_machine_status): Delete.
|
||
|
(rs6000_restore_machine_status): Delete.
|
||
|
(rs6000_init_machine_status): New Function.
|
||
|
(rs6000_free_machine_status): New Function.
|
||
|
(rs6000_init_expanders): Use new functions.
|
||
|
|
||
|
* config/rs6000/rs6000.h (rs6000_sysv_varargs_p): Delete
|
||
|
export.
|
||
|
(struct machine_function): Move here.
|
||
|
|
||
|
* config/rs6000/sysv4.h (RS6000_VARARGS_AREA): Use
|
||
|
sysv_varargs_p field of the cfun->machine structure.
|
||
|
|
||
|
* config/rs6000/rs6000-protos.h (rs6000_save_machine_status):
|
||
|
Remove prototype.
|
||
|
(rs6000_restore_machine_status): Remove prototype.
|
||
|
|
||
|
2001-01-09 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* sched-int.h (struct deps): Add max_reg, reg_last_in_use; merge
|
||
|
reg_last_uses, reg_last_sets, reg_last_clobbers into struct deps_reg.
|
||
|
* sched-deps.c (sched_analyze_1): Update uses of struct deps.
|
||
|
(sched_analyze_2, sched_analyze_insn): Likewise.
|
||
|
(sched_analyze, init_deps): Likewise.
|
||
|
(free_deps): Likewise. Iterate with EXECUTE_IF_SET_IN_REG_SET.
|
||
|
* sched-rgn.c (propagate_deps): Likewise. Remove max_reg argument.
|
||
|
(compute_block_backward_dependences): Update propagate_deps call.
|
||
|
|
||
|
2001-01-09 Mark Elbrecht <snowball3@bigfoot.com>
|
||
|
|
||
|
* gcc.c (process_command): Set switches[n_switches].ordering to 0.
|
||
|
|
||
|
2001-01-09 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppinit.c (OPT_MD, OPT_MMD): Restore.
|
||
|
(cpp_handle_option): Handle them.
|
||
|
(cpp_post_options): Ensure one of -M or -MM is specified with
|
||
|
any other -M? option.
|
||
|
(init_dependency_output): Suppress output with -MG.
|
||
|
|
||
|
2001-01-09 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpp.texi: Update.
|
||
|
* invoke.texi: Update.
|
||
|
|
||
|
2001-01-09 Bernd Schmidt <bernds@redhat.com>
|
||
|
|
||
|
* sh.md (reload_outsf): Generate recognizable patterns for
|
||
|
TARGET_SH3E.
|
||
|
|
||
|
2001-01-09 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* c-lang.c (lang_hooks): Update.
|
||
|
(lang_init): Rename c_init.
|
||
|
(lang_finish): Remove.
|
||
|
* toplev.c (compile_file): Use lang_hooks for lang_init ()
|
||
|
and lang_finish ().
|
||
|
* toplev.h (lang_hooks): Add init () and finish ().
|
||
|
* tree.h (lang_init, lang_finish): Remove.
|
||
|
* cp/tree.h (lang_init, lang_finish): Remove.
|
||
|
* cp/decl2.c (cxx_post_options, lang_hooks): Move to cp/lex.c.
|
||
|
* cp/lex.c (cxx_init, cxx_finish, cxx_post_options,
|
||
|
lang_hooks): New.
|
||
|
(lang_init, lang_finish): Remove.
|
||
|
* f/com.c (lang_init, lang_finish): Rename f_init, f_finish.
|
||
|
(lang_hooks): Update.
|
||
|
* java/lang.c (lang_init): Rename java_init.
|
||
|
(lang_finish): Remove.
|
||
|
(lang_hooks): Update.
|
||
|
* objc/objc-act.c (lang_init): Rename objc_init.
|
||
|
(lang_finish): Remove.
|
||
|
(lang_hoooks): Update.
|
||
|
|
||
|
20001-01-09 Graham Stott <grahams@redhat.com>
|
||
|
|
||
|
* cppfiles.c (_cpp_execute_include): Move `len` initialisation
|
||
|
after `ptr` is initialised.
|
||
|
|
||
|
2001-01-09 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/sh/sh.h (STATIC_CHAIN_REGNUM): Change from r13 to r3.
|
||
|
(INITIALIZE_TRAMPOLINE): Adjust accordingly.
|
||
|
* config/sh/sh.c (sh_expand_prologue): Use r1 as temporary for
|
||
|
stack adjusts, instead of r3.
|
||
|
|
||
|
2001-01-09 Michael Hayes <mhayes@redhat.com>
|
||
|
|
||
|
* flow.c (flow_loop_scan): Break out of ...
|
||
|
(flow_loops_find) ... here.
|
||
|
* basic-block.h (flow_loop_scan): New.
|
||
|
(LOOP_ENTRY_EDGES, LOOP_EXIT_EDGES): Add.
|
||
|
(LOOP_EDGES, LOOP_EXITS_DOMS, LOOP_ALL): Redefine.
|
||
|
|
||
|
2001-01-09 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* cppinit.c (cpp_cleanup): NULLify macro_buffer and zero
|
||
|
macro_buffer_len.
|
||
|
* cppmacro.c (cpp_macro_definition): Reset macro_buffer_len when
|
||
|
realloc()ing macro_buffer.
|
||
|
|
||
|
* hwint.h (HOST_BITS_PER_WIDE_INT, HOST_WIDE_INT): Use long long
|
||
|
if it's wider than long and the target's long is wider than the
|
||
|
host's.
|
||
|
|
||
|
2001-01-09 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
Remove support for using UWIN as a host machine.
|
||
|
* configure.in: Issue an error message.
|
||
|
* configure: Regenerated.
|
||
|
* config.gcc: Remove xm_* UWIN configury.
|
||
|
* config/i386/xm-uwin.h: Remove.
|
||
|
|
||
|
2001-01-08 Nick Clifton <nickc@redhat.com>
|
||
|
|
||
|
* config/v850/v850.c (ra_rtx): Delete.
|
||
|
(v850_save_machine_status): Delete.
|
||
|
(v850_restore_machine_status): Delete.
|
||
|
(v850_init_machine_status): New function.
|
||
|
(v850_mark_machine_status): New function.
|
||
|
(v850_free_machine_status): New function.
|
||
|
(v850_return_addr): Use ra_rtx field in machine structure.
|
||
|
(v850_init_expanders): Use new functions.
|
||
|
|
||
|
* config/v850/v850-protos.h: Fix prototypes for v850_output_*
|
||
|
* config/v850/v850.c: Change arguments to v850_output+* functions
|
||
|
to take a const char *, to avoid compile time warning.
|
||
|
* config/v850/v850.h (ASM_OUTPUT_LABELREF): Undefine, not needed.
|
||
|
(USER_LABEL_PREFIX): Redefine.
|
||
|
|
||
|
2000-01-08 Jim Wilson <wilson@redhat.com>
|
||
|
|
||
|
* sched-rgn.c (BITSET_ADD, BITSET_REMOVE, bitset_member): Cast
|
||
|
1 to unsigned HOST_WIDE_INT before left shift.
|
||
|
|
||
|
2001-01-08 Nick Clifton <nickc@redhat.com>
|
||
|
|
||
|
* config/arm/arm.c (arm_mark_machine_status): Check to see if
|
||
|
the machine structure has been allocated.
|
||
|
(arm_free_machine_status): New function: Free the machine
|
||
|
specific function structure.
|
||
|
|
||
|
2001-01-08 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* jump.c (simplejump_p): Revert last change.
|
||
|
|
||
|
2001-01-08 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cppinit.c (init): Rename init_library.
|
||
|
(cpp_create_reader): Update.
|
||
|
* gcc.c (cpp_options): If -o given, use it as the target of
|
||
|
any -M options.
|
||
|
|
||
|
2001-01-08 Richard Earnshaw <rearnsha@arm.com>
|
||
|
|
||
|
* arm.c (arm_arch5e): New variable.
|
||
|
(all_cores): XScale is a 5TE device.
|
||
|
(arm_override_options): Set arm_arch5e.
|
||
|
(arm_init_builtins): __builtin_prefetch is in arch5e.
|
||
|
* arm.h (arm_arch5e): Declare it.
|
||
|
|
||
|
* arm.h (PREDICATE_CODES): Add arm_hard_register_operand.
|
||
|
|
||
|
* arm.md (define_constants): Add defines for UNSPEC and
|
||
|
UNSPEC_VOLATILE insns. Update all users.
|
||
|
(define_constants): Add constants for IP_REGNUM, SP_REGNUM, PC_REGNUM.
|
||
|
* arm.c (multi_register_push, note_invalid_constants)
|
||
|
(emit_multi_reg_push, emit_sfm, expand_prologue): Use constants.
|
||
|
* arm.h (SP_REGNUM, IP_REGNUM, PC_REGNUM): Delete defines.
|
||
|
(STACK_POINTER_REGNUM): Define in terms of SP_REGNUM.
|
||
|
|
||
|
Mon Jan 8 16:14:56 MET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* jump.c (jump_optimize_1): Use reversed_comparison_code
|
||
|
instead of can_reverse_comparison_p.
|
||
|
(jump_back_p): Likewise.
|
||
|
(invert_exp_1): Likewise.
|
||
|
(thread_jumps): Likewise.
|
||
|
* simplify-rtx.c (simplify_unary_operation): Likewise.
|
||
|
(simplify_ternary_operation): Likewise.
|
||
|
* cse.c (find_comparison_args): Convert to use
|
||
|
can_reverse_comparison_p.
|
||
|
(record_jump_equiv): Likewise.
|
||
|
|
||
|
2001-01-08 Richard Earnshaw <rearnsha@arm.com>
|
||
|
|
||
|
* arm.h (HARD_REGNO_RENAME_OK): Delete.
|
||
|
(EPILOGUE_USES): Define.
|
||
|
(INITIAL_ELIMINATION_OFFSET): Current prologue code does not
|
||
|
automatically stack the LR if it isn't live.
|
||
|
|
||
|
Mon Jan 8 13:46:02 MET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (ix86_expand_int_movcc): Take care to reverse fp conditions
|
||
|
properly.
|
||
|
|
||
|
Sun Jan 7 18:37:43 2001 Mark P Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* ggc-page.c (max_alignment): New structure.
|
||
|
(MAX_ALIGNMENT): New macro.
|
||
|
(init_ggc): Use it to round up the sizes in the
|
||
|
extra_order_size_table.
|
||
|
|
||
|
2001-01-07 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
|
||
|
|
||
|
* config/rs6000/rs6000.h (EPILOGUE_USES): New, mark link register
|
||
|
after reload.
|
||
|
|
||
|
2001-01-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* builtins.def (BUILT_IN_FPRINTF): New entry.
|
||
|
|
||
|
* c-common.c (c_expand_builtin_fprintf): New function.
|
||
|
(init_function_format_info): Handle __builtin_fprintf.
|
||
|
(c_common_nodes_and_builtins): Declare fprintf/__builtin_fprintf.
|
||
|
(c_expand_builtin): Handle BUILT_IN_FPRINTF.
|
||
|
|
||
|
* c-decl.c (duplicate_decls): Adjust comment.
|
||
|
|
||
|
* extend.texi (fprintf): Document new builtin.
|
||
|
|
||
|
2001-01-07 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* jump.c (simplejump_p): Recognize any single_set jump
|
||
|
of the proper form.
|
||
|
|
||
|
2001-01-07 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* configure.in (slibdir): Accept an --with-slibdir option.
|
||
|
Use "test" not "[" in configure. Default to $(libdir).
|
||
|
|
||
|
* config/t-linux (SHLIB_INSTALL): Double quote slibdir;
|
||
|
fix typo in rm -f.
|
||
|
* config/t-aix43 (SHLIB_INSTALL): Likewise.
|
||
|
* config/alpha/t-osf4 (SHLIB_INSTALL): Likewise.
|
||
|
(SHLIB_LINK): Create links for the soname.
|
||
|
* config/mips/t-iris6: Likewise.
|
||
|
* config/sparc/t-slibgcc: Likewise.
|
||
|
* config/sparc/t-slibgcc-sld: Likewise.
|
||
|
|
||
|
2001-01-07 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* config/i386/i386.c (constant_call_address_operand): Accept
|
||
|
(const (plus (symbol_ref) (const_int))).
|
||
|
* config/i386/i386.h (PREDICATE_CODES): Add CONST for
|
||
|
constant_call_address_operand.
|
||
|
|
||
|
2001-01-08 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
|
||
|
|
||
|
* libgcc2.h (W_TYPE_SIZE): Fix case where MIN_UNITS_PER_WORD == 1
|
||
|
and LONG_LONG_TYPE_SIZE > 32.
|
||
|
|
||
|
2001-01-07 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
|
||
|
|
||
|
* jump.c (reversed_comparison_code_parts): Fix typo introduced by
|
||
|
the previous change.
|
||
|
|
||
|
Sun Jan 7 19:37:48 MET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* jump.c (reversed_comparison_code_parts, reversed_comparison_code):
|
||
|
New.
|
||
|
(can_reverse_comparison_p): Rewrite to use reversed_comparison_code.
|
||
|
(reverse_condition_maybe_unordered): Abort on unsigned comparisons.
|
||
|
* rtl.h (reversed_comparison_code_parts, reversed_comparison_code):
|
||
|
Declare.
|
||
|
|
||
|
2001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* fix-header.c (read_scan_file): s/pfile/scan_in/.
|
||
|
|
||
|
2001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* c-lang.c (c_post_options): Call cpp_post_options.
|
||
|
* objc/objc-act.c (objc_post_options): Similarly.
|
||
|
* cppmain.c (main): Similarly.
|
||
|
* fix-header.c (read_scan_file): Similarly.
|
||
|
* cppinit.c (cpp_start_read): Move option consistency checks
|
||
|
to cpp_post_options. Don't call init_dependency_output.
|
||
|
If needed, add default target and main file dependency.
|
||
|
(OPT_MD, OPT_MMD): Remove.
|
||
|
(OPT_MF): New.
|
||
|
(cpp_handle_option): Update for OPT_* changes.
|
||
|
(cpp_post_options): New.
|
||
|
(init_dependency_output): Command line -MF overrides environment
|
||
|
variables. Don't set default target etc. Suppress output
|
||
|
if dependencies are going to stdout.
|
||
|
(print_help): Update.
|
||
|
* cpplib.h (cpp_post_options): New.
|
||
|
* gcc.c (cpp_options): Update for -MD, -MMD, -MF.
|
||
|
|
||
|
Sun Jan 7 14:44:19 MET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* jump.c (comparison_dominates_p): Support unordered compares.
|
||
|
|
||
|
Sun Jan 7 14:39:07 MET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* simplify-rtx.c (simplify_relational_operation): Always simplify
|
||
|
ORDERED and UNORDERED when FLAG_FAST_MATH. Handle properly UNLE
|
||
|
and UNGE.
|
||
|
|
||
|
Sun Jan 7 14:35:13 MET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* combine.c (combine_simplify_rtx): Recognize the unordered compares.
|
||
|
(nonzero_bits): Likewise.
|
||
|
(simplify_comparison): Likewise.
|
||
|
(num_sign_bit_copies): Likewise; return more sane value depending
|
||
|
on STORE_FLAG_VALUE.
|
||
|
(known_cond): Do not assume EQ to be always true for equivalent
|
||
|
operands.
|
||
|
|
||
|
Sun Jan 7 14:31:57 MET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* cse.c (fold_rtx): Handle unordered comparisons.
|
||
|
|
||
|
Sun Jan 7 13:49:19 MET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* rtlanal.c (set_of_1): New static function.
|
||
|
(reg_set_last_1, reg_set_p_1, reg_set_reg, reg_set_flag,
|
||
|
reg_set_last_unknown, reg_set_last_value, reg_set_last_first_regno,
|
||
|
reg_set_last_last_regno): Remove.
|
||
|
(set_of): New global function.
|
||
|
(set_of_data): New structure.
|
||
|
(reg_set_p, reg_set_last): Revamp for set_of.
|
||
|
* rtl.h (set_of): New.
|
||
|
|
||
|
2001-01-07 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* c-common.c (c_common_nodes_and_builtins): Add _Exit builtin.
|
||
|
* extend.texi: Document _Exit builtin.
|
||
|
|
||
|
2001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* (initialize, initialize_builtins,
|
||
|
initialize_dependency_output, initialize_standard_includes):
|
||
|
Rename s/initialize/init. Update.
|
||
|
(init_dependency_output): Move to after
|
||
|
cpp_handle_options, the correct location temporally at least.
|
||
|
(opt_comp): Move next to init (), its caller. Fix prototype.
|
||
|
(init): Make "initialized" local scope.
|
||
|
(cpp_create_reader): Always call init ().
|
||
|
(cpp_start_read): Update.
|
||
|
(output_deps): New function, broken out of cpp_finish.
|
||
|
(cpp_finish): Break out output_deps.
|
||
|
|
||
|
2001-01-07 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* collect2.c (COFF specific stuff): Revert 12-06 patch
|
||
|
to prototype system functions.
|
||
|
|
||
|
2001-01-07 Michael Hayes <mhayes@redhat.com>
|
||
|
|
||
|
* hard-reg-set.h: Add multiple include guard.
|
||
|
* basic-block.h (struct loop): Add `sink' field.
|
||
|
* loop.h: Include sbitmap.h, hard-reg-set.h, and basic-block.h.
|
||
|
(emit_iv_add_mult): Delete.
|
||
|
(loop_iv_add_mult_hoist, loop_iv_add_mult_sink): Define.
|
||
|
(loop_iv_add_mult_emit_before, loop_insn_sink): Define.
|
||
|
(unroll_loop): Remove end_insert_before argument.
|
||
|
* loop.c (loop_givs_rescan): Remove end_insert_before argument.
|
||
|
(maybe_eliminate_biv_1): Likewise.
|
||
|
(emit_iv_add_mult): Delete.
|
||
|
(gen_add_mult, loop_regs_update): New.
|
||
|
(loop_insn_emit_after, loop_insn_emit_before): New.
|
||
|
(loop_insn_sink, loop_insn_sink_or_swim): New.
|
||
|
(emit_iv_add_mult): Delete.
|
||
|
(scan_loop): Set loop->sink.
|
||
|
(loop_givs_reduce): Use loop_insn_sink and its ilk.
|
||
|
(loop_givs_rescan, strength_reduce, check_dbra_loop): Likewise.
|
||
|
(maybe_eliminate_biv_1): Likewise.
|
||
|
(maybe_eliminate_biv_1): Add basic block argument.
|
||
|
* unroll.c (unroll_loop): Remove end_insert_before argument.
|
||
|
(find_splittable_regs): Likewise.
|
||
|
(find_splittable_regs): Use loop_insn_sink and its ilk.
|
||
|
(find_splittable_givs, final_biv_value, final_giv_value): Likewise.
|
||
|
|
||
|
2001-01-07 Michael Hayes <mhayes@redhat.com>
|
||
|
|
||
|
* loop.h (loop_insn_hoist): New prototype.
|
||
|
* loop.c (loop_insn_hoist, loop_insn_emit_before): New.
|
||
|
(move_movables, loop_givs_rescan): Use loop_insn_hoist.
|
||
|
(check_dbra_loop, load_mems): Likewise.
|
||
|
* unroll.c (unroll_loop, find_splittable_regs): Likewise.
|
||
|
(find_splittable_givs): Likewise.
|
||
|
|
||
|
2001-01-07 Michael Hayes <mhayes@redhat.com>
|
||
|
|
||
|
* loop.c (emit_iv_add_mult): Use single_set to examine new insn.
|
||
|
|
||
|
2001-01-07 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* sched-rgn.c (is_cfg_nonregular): Fix thinko's last change.
|
||
|
|
||
|
2001-01-07 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* Makefile.in (DRIVER_DEFINES): Define ENABLE_SHARED_LIBGCC and
|
||
|
NO_SHARED_LIBGCC_MULTILIB as required for the target.
|
||
|
* gcc.c (init_spec): Massage the existing libgcc_spec into a
|
||
|
variant that handles a shared libgcc.
|
||
|
(process_command): Always validate -{static,shared}-libgcc.
|
||
|
(do_spec_1): New 'M' case.
|
||
|
* invoke.text (Link Options): Document -{static,shared}-libgcc.
|
||
|
|
||
|
2001-01-07 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* Makefile.in (slibdir): New variable.
|
||
|
(libgcc.mk): Pass SHLIB_INSTALL to mklibgcc.
|
||
|
(installdirs): Create slibdir.
|
||
|
(install-libgcc, install-multilib): Defer to libgcc.mk.
|
||
|
* configure.in (slibdir): Substitute.
|
||
|
* mklibgcc.in (install): New target.
|
||
|
|
||
|
* config/t-linux (SHLIB_LINK): Create links for the soname.
|
||
|
(SHLIB_INSTALL): New.
|
||
|
* config/alpha/t-osf4 (SHLIB_INSTALL): New.
|
||
|
* config/mips/t-iris6 (SHLIB_INSTALL): New.
|
||
|
* config/rs6000/t-aix43 (SHLIB_INSTALL): New.
|
||
|
* config/sparc/t-slibgcc (SHLIB_INSTALL): New.
|
||
|
* config/sparc/t-slibgcc-sld (SHLIB_INSTALL): New.
|
||
|
|
||
|
2001-01-07 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/rs6000/aix.h (LINK_LIBGCC_SPECIAL_1): New.
|
||
|
* config/rs6000/rs6000.h (LIBGCC_SPEC): Remove.
|
||
|
* config/rs6000/sysv4.h (LIBGCC_SPEC): Remove.
|
||
|
|
||
|
2001-01-07 Michael Hayes <mhayes@redhat.com>
|
||
|
|
||
|
* loop.c (count_loop_regs_set): Delete.
|
||
|
(load_mems_and_recount_loop_regs_set): Delete.
|
||
|
(loop_regs_scan): Merge common code from count_loop_regs_set,
|
||
|
scan_loop, and load_mems_and_recount_loop_regs_set.
|
||
|
(scan_loop): Call load_mems directly and loop_regs_scan
|
||
|
again if new registers created.
|
||
|
|
||
|
2001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* toplev.c (main): Call the front-end specific post_options
|
||
|
hook if one is given.
|
||
|
* toplev.h (struct_lang_hooks, lang_hooks): New.
|
||
|
* c-lang.c (c_post_options, lang_hooks): Implement lang_hooks
|
||
|
for the C front end.
|
||
|
* cp/decl2.c (cxx_post_options, lang_hooks): Implement
|
||
|
lang_hooks for the C++ front end.
|
||
|
* objc/objc-act.c (objc_post_options, lang_hooks): Implement
|
||
|
lang_hooks for the ObjC front end.
|
||
|
* f/com.c (lang_hooks): Hooks for the Fortran front end.
|
||
|
* java/lang.c (lang_hooks): Hooks for the Java front end.
|
||
|
|
||
|
2001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* c-lex.c (init_c_lex): Request #define / #undef callbacks
|
||
|
for verbose DWARF[2] debugging.
|
||
|
(cb_define, cb_undef): The new callbacks.
|
||
|
* toplev.h (debug_define, debug_undef): Make const correct.
|
||
|
* toplev.c (debug_define, debug_undef): Similarly. Do not
|
||
|
perform the verbosity tests here anymore.
|
||
|
|
||
|
2001-01-07 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* reload.c (subst_reloads): Take INSN argument. When
|
||
|
replacing a LABEL_REF in a JUMP_INSN, add a REG_LABEL note.
|
||
|
* reload.h (subst_reloads): Adjust prototype.
|
||
|
* reload1.c (reload_as_needed): Pass INSN to subst_reloads.
|
||
|
* jump.c (mark_all_labels): Canonicalize any REG_LABEL notes
|
||
|
present in JUMP_INSNs and copy them to JUMP_LABEL.
|
||
|
* flow.c (find_label_refs, find_basic_blocks_1): Skip
|
||
|
JUMP_INSNs and insns with REG_LABELs that are followed by
|
||
|
JUMP_INSNs with the same REG_LABEL.
|
||
|
* sched-rgn.c (is_cfg_nonregular): Likewise.
|
||
|
* rtlanal.c (computed_jump_p): Make it false if a REG_LABEL
|
||
|
note is available.
|
||
|
* unroll.c (unroll_loop): Look for REG_LABEL notes in
|
||
|
JUMP_INSNs too.
|
||
|
* rtl.texi (REG_LABEL): Document usage in JUMP_INSNs.
|
||
|
|
||
|
2001-01-06 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* loop.c (scan_loop): Use xcalloc for the regs array.
|
||
|
(load_mems_and_recount_loop_regs_set): Zero the new memory
|
||
|
received from xrealloc.
|
||
|
|
||
|
2001-01-06 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* mkdeps.c (deps_add_dep): Fix vector re-allocation.
|
||
|
|
||
|
Sat Jan 6 00:09:34 2001 J"orn Rennecke <amylaar@redhat.com>
|
||
|
|
||
|
* integrate.c (copy_rtx_and_substitute): When copying
|
||
|
an ignored return value, strip REG_FUNCTION_VALUE_P.
|
||
|
|
||
|
2001-01-06 Michael Hayes <mhayes@redhat.com>
|
||
|
|
||
|
* loop.c (debug_biv, debug_giv): New.
|
||
|
(loop_biv_dump): Break out from ...
|
||
|
(record_biv): ... here.
|
||
|
(loop_giv_dump): Break out from ...
|
||
|
(record_giv): ... here.
|
||
|
(loop_bivs_check): Use print_simple_rtl.
|
||
|
* unroll.c (loop_iterations): Use print_simple_rtl.
|
||
|
|
||
|
2000-01-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||
|
|
||
|
* pa.md (return, return_internal): Modify patterns to prevent regrename
|
||
|
mucking with the return pointer.
|
||
|
|
||
|
2001-01-05 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* dwarf2out.c (mem_loc_descriptor) [case MEM]: Revert 10-31 change.
|
||
|
|
||
|
Fri Jan 5 16:34:18 2001 Nick Clifton <nickc@redhat.com>
|
||
|
|
||
|
* config/v850/lib1funcs.asm: Replace __mulsi3 routine with faster
|
||
|
version supplied by Matteo Frigo.
|
||
|
|
||
|
2001-01-05 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpp.texi: Update for -MQ.
|
||
|
* cppinit.c (cpp_create_reader): Always create pfile->deps.
|
||
|
(cpp_cleanup): Always free pfile->deps.
|
||
|
(initialize_dependency_output): Don't create pfile->deps.
|
||
|
(cpp_handle_option): Similarly.
|
||
|
(OPT_MQ): New.
|
||
|
* gcc.c (cpp_options): Handle -MQ.
|
||
|
(DEFAULT_WORD_SWITCH_TAKES_ARG): Add -MQ.
|
||
|
* mkdeps.c (base_name): Remove.
|
||
|
(deps_init): Don't allocate vector space until it's needed.
|
||
|
(deps_free): Only free vectors if allocated.
|
||
|
(deps_add_target, deps_add_dep): Update for initial allocation.
|
||
|
(deps_add_default_target): Don't strip to the base_name.
|
||
|
|
||
|
2001-01-05 DJ Delorie <dj@redhat.com>
|
||
|
|
||
|
* config/v850/v850.h (RETURN_ADDR_RTX): Define.
|
||
|
(INIT_EXPANDERS): Define.
|
||
|
|
||
|
* config/v850/v850.c (struct machine_function): Define.
|
||
|
(v850_save_machine_status): New function.
|
||
|
(v850_restore_machine_status): New function.
|
||
|
(v850_return_addr): New function.
|
||
|
(v850_init_expanders): New function.
|
||
|
|
||
|
* config/v850/v850-protos.h: Add prototypes for v850_return_addr
|
||
|
and v850_init_expanders.
|
||
|
|
||
|
2001-01-05 Zack Weinberg <zack@wolery.stanford.edu>
|
||
|
|
||
|
* cpplib.h (struct cpp_reader): Add help_only field.
|
||
|
* cppinit.c (COMMAND_LINE_OPTIONS): Add OPT_version.
|
||
|
(cpp_handle_option): Set pfile->help_only if we see -h,
|
||
|
--help, -target-help, or --version. Print version string but
|
||
|
do not set help_only if we see -v or -version. Make text
|
||
|
printed by -v match that printed by (-)-version.
|
||
|
|
||
|
* cppmain.c (main): Exit after option parsing if
|
||
|
pfile->help_only is true.
|
||
|
|
||
|
* toplev.c (independent_decode_option): Call print_version,
|
||
|
then exit, if we see --version (but not -version).
|
||
|
(print_version): Split lengthy message into two lines.
|
||
|
|
||
|
2001-01-05 Nick Clifton <nickc@redhat.com>
|
||
|
|
||
|
* config/v850/v850.c (v850_encode_data_area): Use alloca to create
|
||
|
temporary string for initialisation before calling ggc_alloc_string.
|
||
|
|
||
|
2001-01-06 Michael Hayes <mhayes@redhat.com>
|
||
|
|
||
|
* rtl.h (print_simple_rtl): New.
|
||
|
* print-rtl.c (print_simple_rtl): New.
|
||
|
(flag_simple): New.
|
||
|
(print_rtx): Disable printing of flags and modes, etc.,
|
||
|
if `flag_simple` nonzero.
|
||
|
|
||
|
2001-01-05 Zack Weinberg <zack@wolery.stanford.edu>
|
||
|
|
||
|
* function.c (fixup_var_refs): Use push_to_full_sequence where
|
||
|
possible.
|
||
|
|
||
|
2001-01-05 Michael Meissner <meissner@redhat.com>
|
||
|
|
||
|
* flags.h (flag_reorder_blocks): Add declaration.
|
||
|
(flag_rename_block): Ditto.
|
||
|
|
||
|
2001-01-05 DJ Delorie <dj@redhat.com>
|
||
|
|
||
|
* function.c (reorder_blocks): Make sure the flags are all reset
|
||
|
before using them to mark blocks, else a second invocation will
|
||
|
corrupt the block chain.
|
||
|
(reorder_blocks_0): New, resets the flags.
|
||
|
|
||
|
Fri Jan 5 20:34:06 2001 J"orn Rennecke <amylaar@redhat.com>
|
||
|
|
||
|
* cse.c (find_comparison_args): Stop if the argument is known to
|
||
|
be constant.
|
||
|
|
||
|
2001-01-05 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/sh/sh.md (movdf): When splitting load into pair of
|
||
|
registers, don't clobber the register used in the address too
|
||
|
early.
|
||
|
|
||
|
2001-01-05 Jeffrey Oldham <oldham@codesourcery.com>
|
||
|
|
||
|
* varasm.c (mark_constant_pool): Improve initial comments.
|
||
|
(mark_constants): Move marking of constants to mark_constant.
|
||
|
(mark_constant): New function to recursively mark all constants
|
||
|
referred to by a constant.
|
||
|
|
||
|
2001-01-05 Catherine Moore <clm@redhat.com>
|
||
|
|
||
|
* dbxout.c ((dbxout_parms): Handle invisible ref where decl is a REG.
|
||
|
|
||
|
2001-01-05 Phil Edwards <pme@sources.redhat.com>
|
||
|
|
||
|
* cp/lang-options.h: Bring comment in line with reality.
|
||
|
* f/lang-options.h: Likewise.
|
||
|
* java/lang-options.h: Likewise.
|
||
|
* objc/lang-options.h: Likewise.
|
||
|
* ch/lang-options.h: Likewise.
|
||
|
* f/g77.texi: And update the manual.
|
||
|
|
||
|
2001-01-05 Marek Michalkiewicz <marekm@linux.org.pl>
|
||
|
Denis Chertykov <denisc@overta.ru>
|
||
|
|
||
|
* config/avr/avr-protos.h (avr_peep2_scratch_safe): Prototype.
|
||
|
* config/avr/avr.c (avr_peep2_scratch_safe): New function.
|
||
|
* config/avr/avr.md (all peepholes that request a scratch register):
|
||
|
Call it, FAIL the peephole if not safe (in interrupt functions).
|
||
|
|
||
|
2001-01-05 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* ggc-page.c (NUM_EXTRA_ORDERS): Hardwire to zero for now.
|
||
|
|
||
|
2001-01-05 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* builtins.def (BUILT_IN_CONJ, BUILT_IN_CREAL, BUILT_IN_CIMAG):
|
||
|
Define.
|
||
|
* builtins.c (expand_builtin): Abort on BUILT_IN_CONJ,
|
||
|
BUILT_IN_CREAL and BUILT_IN_CIMAG.
|
||
|
* c-common.c (c_common_nodes_and_builtins): Create builtin conjf,
|
||
|
conj, conjl, crealf, creal, creall, cimagf, cimag and cimagl.
|
||
|
(expand_tree_builtin): Handle BUILT_IN_CONJ, BUILT_IN_CREAL and
|
||
|
BUILT_IN_CIMAG.
|
||
|
* extend.texi: Document these builtins.
|
||
|
|
||
|
2001-01-05 Daniel Berlin <dberlin@redhat.com>
|
||
|
|
||
|
* c-common.c (lang_get_alias_set): Say we know nothing of
|
||
|
VECTOR_TYPE aliasing.
|
||
|
|
||
|
* dwarf2out.c (is_base_type): Handle VECTOR_TYPE properly.
|
||
|
|
||
|
2001-01-05 Bruce Korb <bkorb@gnu.org>
|
||
|
|
||
|
* fixinc/mkfixinc.sh(vax-*-bsd): convert exit and atexit calls to
|
||
|
their x* equivalent versions for atexit-less systems
|
||
|
* fixinc/fixincl.c(main): do not return from main() on atexit-less
|
||
|
systems (or any other system any more).
|
||
|
|
||
|
2001-01-05 Richard Earnshaw <rearnsha@arm.com>
|
||
|
|
||
|
* arm.md (ldmsi_postinc): Avoid use of match_dup between input and
|
||
|
output operands. Use arm_hard_register_operand for operand 4.
|
||
|
(stmsi_postinc): Similarly.
|
||
|
(ldmsi): Use arm_hard_register_operand for opernand 2.
|
||
|
(stmsi): Similarly.
|
||
|
* arm.c (arm_hard_register_operand): New function.
|
||
|
* arm-protos.h (arm_hard_register_operand): Prototype it.
|
||
|
|
||
|
* arm.h (HARD_REGNO_RENAME_OK): Define.
|
||
|
|
||
|
Fri Jan 5 16:29:49 MET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* simplify-rtx.c (cfc_args): add "unordered" field.
|
||
|
(check_fold_consts): Set unordered field.
|
||
|
(simplify_relational_operation): Simplify the unordered
|
||
|
comparisons.
|
||
|
|
||
|
* reg-stack.c (swap_rtx_condition): Ensure that the transformation
|
||
|
is valid.
|
||
|
|
||
|
* emit-rtl.c (try_split): Fix code to mark labels.
|
||
|
* jump.c (mark_jump_label): Make global.
|
||
|
* rtl.h (mark_jump_label): Declare.
|
||
|
|
||
|
* predict.c (estimate_probability): Handle unordred comparisons.
|
||
|
|
||
|
2001-01-05 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpp.texi: Update for -MP. Clarify behaviour of -MT.
|
||
|
* cppinit.c (initialize_dependency_output): Update.
|
||
|
(cpp_finish): Output dummy targets for -MP.
|
||
|
(OPT_MP): New.
|
||
|
(cpp_handle_option): Handle -MP. Don't quote -MT options.
|
||
|
* cpplib.h (struct cpp_options): Add deps_phony_targets.
|
||
|
* gcc.c (cpp_options): Update to handle -MP.
|
||
|
* mkdeps.c (deps_add_target, deps_add_default_target): Update
|
||
|
to quote only the default target.
|
||
|
(deps_phony_targets): Insert a preceding newline. Rename from
|
||
|
deps_dummy_targets for consistency.
|
||
|
* mkdeps.h: Update
|
||
|
|
||
|
2001-01-05 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* calls.c (emit_library_call_value_1): Support
|
||
|
INIT_CUMULATIVE_LIBCALL_ARGS.
|
||
|
* tm.texi (INIT_CUMULATIVE_LIBCALL_ARGS): Document it.
|
||
|
|
||
|
2001-01-04 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* c-decl.c (finish_struct): Detect flexible array members
|
||
|
used in an inappropriate context.
|
||
|
* c-typeck.c (really_start_incremental_init): Special case
|
||
|
constructor_max_index for zero length arrays.
|
||
|
(pop_init_level): Allow initialization of flexible array
|
||
|
members. Deprecate initialization of zero length arrays.
|
||
|
Don't issue missing initializer warning for flexible array
|
||
|
members or zero length arrays.
|
||
|
(process_init_element): Don't dereference null DECL_SIZE.
|
||
|
* varasm.c (array_size_for_constructor): Return a HOST_WIDE_INT.
|
||
|
Don't abort for empty constructors. Use size_binop
|
||
|
(output_constructor): Add commentary regarding zero length
|
||
|
array futures. Abort if we try to initialize an array of
|
||
|
unspecified length with a non-empty constructor in the middle
|
||
|
of a structure.
|
||
|
|
||
|
* extend.texi (Zero Length): Update and clarify documentation
|
||
|
on static initialization.
|
||
|
|
||
|
2001-01-05 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
|
||
|
|
||
|
* config/c4x/c4x.c (c4x_expand_prologue): Don't compile an ISR
|
||
|
with more than 32767 words of local storage.
|
||
|
|
||
|
2001-01-05 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
|
||
|
|
||
|
* config/c4x/c4x.c (c4x_init_builtins): Remove builtin support
|
||
|
for 'abs', 'labs', and 'fabs'.
|
||
|
(c4x_expand_builtin): Likewise.
|
||
|
* config/c4x/c4x.h (enum c4x_builtins): Likewise.
|
||
|
|
||
|
2001-01-05 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* config/sh/sh.md (prget, prset): New insn types.
|
||
|
(return delay slot): Don't allow prset.
|
||
|
(call, sfunc delay slot): Don't allow prget.
|
||
|
(movsi_i, movsi_ie, movsi_i_lowpart): Create separate alternatives
|
||
|
for prset and prget.
|
||
|
|
||
|
2001-01-05 Michael Hayes <mhayes@redhat.com>
|
||
|
|
||
|
* loop.h (struct loop_reg): New.
|
||
|
(struct loop_regs): Change to use array of `struct loop_reg'.
|
||
|
* loop.c: Replace assortment of varrays with single regs array.
|
||
|
(count_one_set): Delete may_not_move array argument
|
||
|
and use regs array instead. All caller's changed.
|
||
|
(count_loop_regs_set): Delete may_not_move and single_usage
|
||
|
arguments and use regs array instead. All caller's changed.
|
||
|
(find_single_use_in_loop): Replace usage array argument with pointer
|
||
|
to regs structure. All caller's changed.
|
||
|
(loop_optimize): Delete `moved_once' array.
|
||
|
|
||
|
2001-01-05 Michael Hayes <mhayes@redhat.com>
|
||
|
|
||
|
* loop.c (prescan_loop): Set loop_info->has_nonconst_call.
|
||
|
Use it instead of loop_info->has_call for scanning loop mems.
|
||
|
(check_dbra_loop): Replace loop_info->has_call test with
|
||
|
loop_info->has_nonconst_call.
|
||
|
|
||
|
2000-01-04 Matthew Hiller <hiller@redhat.com>
|
||
|
|
||
|
* config/sh/sh.h (EPILOGUE_USES): Recognize fpscr as epilogue-used
|
||
|
for TARGET_SH3E.
|
||
|
|
||
|
2001-01-04 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* fold-const.c (fold): When folding a CONJ_EXPR of a COMPLEX_CST,
|
||
|
use TREE_REALPART and TREE_IMAGPART instead of TREE_OPERAND.
|
||
|
|
||
|
2001-01-04 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* c-common.c (SIZE_TYPE, WCHAR_TYPE): Define.
|
||
|
(flag_short_double, flag_short_wchar): Define.
|
||
|
(c_common_nodes_and_builtins): Create many tree nodes shared
|
||
|
between C and C++ here instead of in cp/decl.c and ...
|
||
|
* c-decl.c (init_decl_processing): ... here.
|
||
|
(SIZE_TYPE, WCHAR_TYPE): Don't define.
|
||
|
(flag_short_double, flag_short_wchar): Don't define.
|
||
|
(record_builtin_type): New function.
|
||
|
(build_void_list_node): New function.
|
||
|
* c-common.h (flag_short_double, flag_short_wchar,
|
||
|
record_builtin_type, build_void_list_node): Declare.
|
||
|
|
||
|
Thu Jan 4 21:09:47 2001 J"orn Rennecke <amylaar@redhat.com>
|
||
|
|
||
|
* integrate.c (expand_inline_function): Don't put a virtual
|
||
|
register into the reg map.
|
||
|
|
||
|
* function.c (fixup_var_refs_1): If force_operand didn't put
|
||
|
the address into the target, move it there.
|
||
|
|
||
|
2001-01-04 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
Special-case tree_decl/tree_list allocations.
|
||
|
* ggc-page.c (OBJECT_PER_PAGE): Reimplement.
|
||
|
(OBJECT_SIZE): New macro.
|
||
|
(NUM_EXTRA_ORDER): Likewise.
|
||
|
(extra_order_size_table): New variable.
|
||
|
(NUM_ORDERS): New macro.
|
||
|
(objects_per_page_table): New variable.
|
||
|
(object_size_table): New variable.
|
||
|
(G.pages): Use NUM_ORDERS to bound the array.
|
||
|
(G.page_tails): Likewise.
|
||
|
(DIV_ROUND_UP): Remove.
|
||
|
(BITMAP_SIZE): Use CEIL, instead of DIV_ROUND_UP.
|
||
|
(alloc_page): Use OBJECT_SIZE.
|
||
|
(size_lookup): Don't make it const.
|
||
|
(ggc_alloc): Use OBJECT_SIZE.
|
||
|
(ggc_set_mark): Likewise.
|
||
|
(ggc_get_size): Likewise.
|
||
|
(init_ggc): Set up the object_size_table, objects_per_page_table,
|
||
|
and adjust size_lookup.
|
||
|
(ggc_recalculate_in_use_p): Use CEIL, not DIV_ROUND_UP.
|
||
|
(ggc_pop_context): Use NUM_ORDERS.
|
||
|
(clear_marks): Likewise.
|
||
|
(sweep_pages): Likewise.
|
||
|
(poison_pages): Likewise.
|
||
|
(ggc_print_statistics): Use OBJECT_SIZE.
|
||
|
|
||
|
Thu Jan 4 15:54:05 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* varasm.c (output_constructor): Use HOST_WIDE_INT for sizes.
|
||
|
Only call array_size_for_constructor if last field and array type
|
||
|
with no upper bound.
|
||
|
|
||
|
2001-01-04 Philip Blundell <philb@gnu.org>
|
||
|
|
||
|
* config/arm/arm.c (arm_gen_constant): Prefer to emit constants
|
||
|
from bit 31 downwards, if this requires no more insns.
|
||
|
(count_insns_for_constant): New helper function for above.
|
||
|
|
||
|
2001-01-04 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* gencodes.c (output_predicate_decls): Remove empty initializer.
|
||
|
|
||
|
2001-01-04 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* tree.c (copy_node): Remove documentation about obstacks.
|
||
|
(buidl1): Check that nobody tries to build 2-argument nodes this
|
||
|
way.
|
||
|
|
||
|
2001-01-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* sparc.h (PREDICATE_CODES): Delete fp_sethi_p, fp_mov_p and
|
||
|
fp_high_losum_p.
|
||
|
|
||
|
* gencodes.c (output_predicate_decls): Fill empty initializer
|
||
|
braces.
|
||
|
|
||
|
2001-01-04 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* tradcpp.c (deps_file, print_deps_missing_files): New variables.
|
||
|
(main): Handle -MG, -MD, -MMD. Bail out if -MG is given without -M
|
||
|
or -MM.
|
||
|
(do_include): Handle missing headers like cpp0.
|
||
|
* cppfiles.c (_cpp_execute_include): Don't prefix absolute header
|
||
|
paths with first include pathname. Don't strcat to uninitialized
|
||
|
string.
|
||
|
|
||
|
2001-01-04 Bernd Schmidt <bernds@redhat.com>
|
||
|
|
||
|
* regrename.c (regrename_optimize): Don't rename from frame pointer
|
||
|
if frame_pointer_needed.
|
||
|
(do_replace): Don't set ORIGINAL_REGNO to a hard register number.
|
||
|
* config/ia64/ia64.c (emit_all_group_insn_barriers): New function.
|
||
|
(ia64_reorg): Use it instead of scheduling if ! optimize.
|
||
|
(errata_emit_nops): Properly call asm_noperands.
|
||
|
(ia64_sched_reorder): Finish cycle if we see an asm.
|
||
|
(ia64_variable_issue): Clear scheduling state after asms.
|
||
|
|
||
|
2001-01-04 Neil Booth <neil@daikokuya.demon.co.uk>
|
||
|
|
||
|
* cpp.texi: Update for -MT.
|
||
|
* cppinit.c (initialize_dependency_output): Add a default
|
||
|
target if none has been given already.
|
||
|
(no_tgt, OPT_MT): New.
|
||
|
(cpp_handle_option): Handle -MT. Update -M etc.
|
||
|
* cpplib.h (struct cpp_options): Remove deps_target.
|
||
|
* gcc.c (cpp_options): Handle -MT.
|
||
|
* mkdeps.c (struct deps): Move from mkdeps.h.
|
||
|
(deps_calc_target): Rename deps_add_default_target. Add a
|
||
|
default target if none has been specified already.
|
||
|
* mkdeps.h (struct deps): Move to mkdeps.c.
|
||
|
(deps_calc_target): Rename deps_add_default_target.
|
||
|
|
||
|
2000-01-03 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* c-decl.c (grokdeclarator): Give zero-length arrays size zero.
|
||
|
Remove dead code.
|
||
|
* c-typeck.c (push_init_level): Move checks for flexible array
|
||
|
members and zero length arrays ...
|
||
|
(pop_init_level): ... here. Silently discard empty initializations.
|
||
|
Remove dead code.
|
||
|
* varasm.c (output_constructor): Update for sizeof change to
|
||
|
zero-length arrays.
|
||
|
|
||
|
* extend.texi (Zero Length): Clarify semantics.
|
||
|
|
||
|
2001-01-03 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* configure.in (tm.h): Include isns-codes.h last.
|
||
|
* configure: Rebuilt.
|
||
|
|
||
|
2001-01-03 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* config/alpha/alpha.md (addvsi3, addvdi3): New.
|
||
|
(negvsi2, negvdi2, subvsi3, subvdi3, mulvsi3, mulvdi3): New.
|
||
|
|
||
|
2001-01-03 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
|
||
|
|
||
|
* tradcpp.c (main): Make sure finclude() is called with a valid
|
||
|
indepth value while handling -include.
|
||
|
|
||
|
2001-01-03 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* gencodes.c (output_predicate_decls): New function.
|
||
|
(main): Call it.
|
||
|
* machmode.h (GET_MODE_MASK): Arrange for it to be defined
|
||
|
even if it is not the first time machmode.h is #included.
|
||
|
* config/sh/sh.c (fpul_operand): Declare MODE argument.
|
||
|
* tm.texi (PREDICATE_CODES): Document predicate declarations.
|
||
|
* gcc.texi (Copyright): Added 2001.
|
||
|
|
||
|
2001-01-03 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* c-common.c (c_common_lang_init): New function. Warn if format
|
||
|
warning options which only have effects when used with -Wformat
|
||
|
are used without -Wformat.
|
||
|
* c-common.h (c_common_lang_init): Declare.
|
||
|
* c-lang.c (lang_init): Call c_common_lang_init.
|
||
|
* objc/objc-act.c (lang_init): Call c_common_lang_init.
|
||
|
|
||
|
2001-01-03 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* configure.in: Check for the mktemp command.
|
||
|
* configure: Regenerate.
|
||
|
* gccbug.in: Use a separate temporary file $TEMP0 for one use of
|
||
|
$TEMP. Create temporary files with mktemp, if available at
|
||
|
configure time; otherwise use set -C. Remove temporary files
|
||
|
before exit.
|
||
|
|
||
|
2001-01-03 Joseph S. Myers <jsm28@cam.ac.uk>
|
||
|
|
||
|
* configure.in: Require at least texinfo 4.0. Check for whether
|
||
|
Pod::Man is sufficiently recent to regenerate GCC manpages.
|
||
|
* configure: Regenerate.
|
||
|
* Makefile.in (TEXI2POD): Call perl explicitly rather than relying
|
||
|
on #!.
|
||
|
(GENERATED_MANPAGES): Define.
|
||
|
(generated-manpages): New target. Depend on cpp.1 as well as
|
||
|
gcov.1.
|
||
|
(install-man): Depend on $(GENERATED_MANPAGES) (defined by
|
||
|
configure to generated-manpages or empty) rather than on the
|
||
|
manpages directly. Remove execute permission from installed
|
||
|
gcov.1 as well as cpp.1.
|
||
|
* cpp.1, gcov.1: Regenerate.
|
||
|
|
||
|
2001-01-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* builtins.c (expand_builtin_strncmp): Use host_integerp and
|
||
|
tree_low_cst. Allow using cmpstrsi in more cases.
|
||
|
|
||
|
Wed Jan 3 10:48:43 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* config/sparc/sparc.h (RETURN_IN_MEMORY): Return 0 for variable
|
||
|
sized types.
|
||
|
|
||
|
Wed Jan 3 12:22:32 2001 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* build-make (HOST_CFLAGS): Added `-DGENERATOR_FILE'.
|
||
|
* Makefile.in (HOST_CFLAGS): Mention build-make.
|
||
|
|
||
|
Wed Jan 3 08:53:50 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* config/sparc/sparc.md (nonlocal_goto): Emit goto_handler_and_restore
|
||
|
as JUMP_INSN.
|
||
|
|
||
|
2001-01-01 Bernd Schmidt <bernds@redhat.com>
|
||
|
|
||
|
* builtins.c (expand_builtin_return_addr): Don't use MEM_ALIAS_SET on
|
||
|
a REG rtx.
|
||
|
|
||
|
* cse.c (cse_rtx_varies_p): Accept additional FROM_ALIAS arg. All
|
||
|
callers changed.
|
||
|
|
||
|
* alias.c (throughout): Use ORIGINAL_REGNO when accessing
|
||
|
reg_base_value and reg_known_value arrays.
|
||
|
(init_alias_analysis): Add more cases to detect known values.
|
||
|
* sched-deps.c (deps_may_trap_p): New function.
|
||
|
(sched_analyze_2): Use it.
|
||
|
|
||
|
2001-01-03 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* combine.c (simplify_shift_const): Even if we're sign-extracting,
|
||
|
don't discard an ASHIFTRT if we're shifting in a wider mode.
|
||
|
|
||
|
2000-01-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||
|
|
||
|
* toplev.c (rest_of_compilation): Don't print basic block information
|
||
|
when CFG isn't up to date.
|
||
|
|
||
|
2001-01-02 Mark Elbrecht <snowball3@bigfoot.com>
|
||
|
|
||
|
* config/i386/djgpp.h (DWARF2_DEBUGGING_INFO): Define.
|
||
|
(UNALIGNED_INT_ASM_OP, UNALIGNED_DOUBLE_ASM_OP): Define.
|
||
|
(UNALIGNED_SHORT_ASM_OP): Define.
|
||
|
(CPP_PREDEFINES): Remove defines for GO32 and DJGPP.
|
||
|
|
||
|
2001-01-02 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* fold-const.c (fold_convert): Fix typo.
|
||
|
|
||
|
2001-01-02 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* c-common.h (ASM_INPUT_P): New.
|
||
|
* c-parse.in (asm): Set it when needed.
|
||
|
* c-semantics.c (genrtl_asm_stmt): Test it instead of the
|
||
|
existence of an operand.
|
||
|
|
||
|
Tue Jan 2 20:27:07 MET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* dwarf2out.c (stack_adjust_offset): Handle PRE_MODIFY.
|
||
|
(dwarf2out_frame_debug_expr): Likewise.
|
||
|
(mem_loc_descriptor): Handle PRE and POST_MODIFY.
|
||
|
|
||
|
Tue Jan 2 20:21:31 MET 2001 Jan Hubicka <jh@suse.cz>
|
||
|
|
||
|
* i386.c (ix86_split_to_parts): Return number of part required;
|
||
|
handle TFmodes.
|
||
|
(print_operand, ix86_expand_branch, ix86_expand_fp_movcc): Handle
|
||
|
TFmodes.
|
||
|
(ix86_split_long_move): Use number of part returned
|
||
|
by ix86_split_to_parts
|
||
|
* i386.h (MASK_128BIT_LONG_DOUBLE, TARGET_128BIT_LONG_DOUBLE):
|
||
|
New macros.
|
||
|
(TARGET_SWITCHES): Add 128bit-long-double and 96bit-long-double
|
||
|
(LONG_DOUBLE_TYPE_SIZE): Change from constant.
|
||
|
(MAX_LONG_DOUBLE_TYPE_SIZE): New macro.
|
||
|
(INTEL_EXTENDED_IEEE_FORMAT): Likewise.
|
||
|
(ALIGN_MODE_128): Add TFmode.
|
||
|
(IS_STACK_MODE): Likewise.
|
||
|
(HARD_REGNO_NREGS): TFmode needs 3 registers.
|
||
|
(HARD_REGNO_OK): Support TFmodes.
|
||
|
(ASM_OUTPUT_LONG_DOUBLE): Handle TFmodes.
|
||
|
* i386.md (scheduler definitions): Use memory operand to determine
|
||
|
fst/fld instructions; use mode attribute to determine real mode of
|
||
|
the instruction.
|
||
|
(*tf): New patterns, expanders and splitters; based on XFmode patterns.
|
||
|
* invoke.texi (128bit-long-double, 96bit-long-double): Document.
|
||
|
|
||
|
2001-01-02 Mark Mitchell <mark@codesourcery.com>
|
||
|
|
||
|
* tree.def (TRUTH_NOT_EXPR): Improve documentation.
|
||
|
|
||
|
Tue Jan 2 10:47:38 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.
|
||
|
|
||
|
* expr.c (store_constructor_field): Update ALIGN before calling
|
||
|
store_constructor.
|
||
|
|
||
|
2001-01-02 Jeffrey Oldham <oldham@codesourcery.com>
|
||
|
|
||
|
* config/mips/mips.c (function_arg): Don't pass NULL_TREE to
|
||
|
host_integerp.
|
||
|
|
||
|
2001-01-02 Jeffrey Oldham <oldham@codesourcery.com>
|
||
|
|
||
|
* tm.texi (FUNCTION_ARG): Document that @var{type} can be an
|
||
|
incomplete type.
|
||
|
|
||
|
Tue Jan 2 10:47:38 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.
|
||
|
|
||
|
* c-decl.c (start_function): Don't warn on third parameter to main.
|
||
|
|
||
|
2001-01-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* tsystem.h: Define HAVE_DECL_GETOPT.
|
||
|
|
||
|
2001-01-02 Philip Blundell <pb@futuretv.com>
|
||
|
|
||
|
* config/arm/linux-gas.h (CLEAR_INSN_CACHE): Avoid illegal clobber
|
||
|
of input operand.
|
||
|
|
||
|
2001-01-02 Richard Henderson <rth@redhat.com>
|
||
|
|
||
|
* alpha.md (*ze_and_ne): Duplicate insn condition to split.
|
||
|
|
||
|
2001-01-02 Andreas Jaeger <aj@suse.de>
|
||
|
|
||
|
* c-decl.c (c_decode_option): Remove support of
|
||
|
-Wmissing-noreturn.
|
||
|
|
||
|
* toplev.c (documented_lang_options): Remove -Wmissing-noreturn.
|
||
|
(W_options): Add -Wmissing-noreturn here.
|
||
|
|
||
|
* flow.c: Define lang_missing_noreturn_ok_p.
|
||
|
(check_function_return_warnings): Use it.
|
||
|
|
||
|
* c-common.h: Declare lang_missing_noreturn_ok_p.
|
||
|
|
||
|
* c-lang.c (c_missing_noreturn_ok_p): New function.
|
||
|
(lang_init): Set lang_missing_noreturn_ok_p.
|
||
|
|
||
|
* invoke.texi (Warning Options): Document this.
|
||
|
|
||
|
2000-12-27 Phil Edwards <pme@sources.redhat.com>
|
||
|
|
||
|
* extend.texi (C++ Extensions): New node for C++ attributes;
|
||
|
describe init_priority and com_interface.
|
||
|
* invoke.texi: Remove -finit-priority as it now has zero effect.
|
||
|
* install.texi: Fix xref syntax.
|
||
|
* md.texi: Likewise.
|
||
|
|
||
|
Mon Jan 1 21:28:29 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* config.gcc (sparc64-wrs-vxworks*): New case.
|
||
|
* config/sparc/vxsparc64.h, config/sparc/t-vxsparc64: New files.
|
||
|
|
||
|
* config/sparc/sparc.c (sparc_override_options): Do support different
|
||
|
pointer and architecture size.
|
||
|
* config/sparc/sparc.h (MIN_UNITS_PER_WORD): Always 4.
|
||
|
(POINTERS_EXTEND_UNSIGNED): Define.
|
||
|
(Pmode): Test TARGET_ARCH64, not TARGET_PTR64.
|
||
|
(FUNCTION_MODE): Define to be Pmode.
|
||
|
* config/sparc/sparc.md (64-bit call patterns): FUNCTION_MODE now DI.
|
||
|
|
||
|
* function.c (expand_function_end): Properly handle DECL_RESULT
|
||
|
and copy when ptr_mode != Pmode.
|
||
|
* expmed.c (make_tree): Convert X from Pmode to ptr_mode, if needed.
|
||
|
|
||
|
2001-01-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||
|
|
||
|
* c-common.c (c_common_nodes_and_builtins): Set prototype
|
||
|
parameters for __builtin_fputs, __builtin_fputc and
|
||
|
__builtin_fwrite. Don't declare plain fputc as a builtin.
|
||
|
|
||
|
2001-01-01 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||
|
|
||
|
* loop.c (add_label_notes): Increment the label usage count when
|
||
|
a note is added to an insn which refers to a CODE_LABEL.
|
||
|
* gcse.c (add_label_notes): Likewise.
|
||
|
|
||
|
2001-01-01 Andreas Jaeger <aj@suse.de>
|
||
|
|
||
|
* loop.c (scan_loop): Use xmalloc to allocate movables.
|
||
|
|
||
|
2001-01-01 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* tm.texi (REGISTER_MOVE_COST): Add a mode argument.
|
||
|
* reload.c (REGISTER_MOVE_COST): Likewise. Adjust all callers.
|
||
|
* reload1.c (REGISTER_MOVE_COST): Likewise.
|
||
|
* regclass.c (REGISTER_MOVE_COST): Likewise.
|
||
|
(move_cost, may_move_in_cost, may_move_out_cost): Add mode
|
||
|
dimension. Adjust all users.
|
||
|
(init_reg_sets_1): Iterate on all modes.
|
||
|
* config/1750a/1750a.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/a29k/a29k.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/alpha/alpha.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/arc/arc.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/arm/arm.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/avr/avr.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/c4x/c4x.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/d30v/d30v.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/dsp16xx/dsp16xx.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/h8300/h8300.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/i386/i386.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/ia64/ia64.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/m32r/m32r.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/m68hc11/m68hc11.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/m68k/m68k.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/mcore/mcore.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/mips/mips.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/mn10200/mn10200.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/mn10300/mn10300.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/ns32k/ns32k.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/pa/pa.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/pdp11/pdp11.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/pj/pj.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/romp/romp.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/rs6000/rs6000.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/sh/sh.h (REGISTER_MOVE_COST): Adjust.
|
||
|
* config/sparc/sparc.h (REGISTER_MOVE_COST): Adjust.
|
||
|
|
||
|
2001-01-01 Bernd Schmidt <bernds@redhat.com>
|
||
|
|
||
|
* alias.c (fixed_scalar_and_varying_struct): Adjust prototype of
|
||
|
arg VARIES_P. Call it with extra arg.
|
||
|
(true_dependence): Likewise.
|
||
|
* rtl.h (rtx_addr_can_trap_p): Declare.
|
||
|
(rtx_varies_p, rtx_addr_varies_p, true_dependence): Update
|
||
|
prototypes.
|
||
|
* rtlanal.c (rtx_addr_can_trap_p): No longer static.
|
||
|
(rtx_varies_p): Accept extra arg FOR_ALIAS; only disallow
|
||
|
pic offset table register if it's zero. All callers changed.
|
||
|
(rtx_addr_varies_p): Accept extra arg FOR_ALIAS; all callers changed.
|
||
|
|
||
|
Mon Jan 1 07:38:33 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
|
||
|
|
||
|
* explow.c (convert_memory_address, case SYMBOL_REF): Copy
|
||
|
STRING_POOL_ADDRESS_P.
|
||
|
|
||
|
* config/sparc/sparc.c (input_operand): Properly test for short op.
|
||
|
|
||
|
* config.gcc (sparc-*-elf): Include sparc/sol2.h.
|
||
|
(sparc-*-rtems*): Include sparc/sol2.h and sparc/elf.h.
|
||
|
(sparclite-*-elf*, sparc86x-*-elf*): Likewise.
|
||
|
* config/sparc/elf.h: No longer include sol2.h.
|
||
|
* config/sparc/lifeelf.h: No longer include sparc/elf.h.
|
||
|
* config/sparc/rtemself.h, config/sparc/sp86x-elf.h: Likewise.
|
||
|
|
||
|
* config/sparc/sparc.md: Test TARGET_ARCH64 instead of TARGET_PTR64.
|
||
|
|
||
|
2001-01-01 Michael Hayes <mhayes@redhat.com>
|
||
|
|
||
|
* loop.c (check_insn_for_bivs): Use ivs->n_regs to check array bounds.
|
||
|
(find_mem_givs, record_biv, maybe_eliminate_biv): Likewise.
|
||
|
(record_initial): Likewise.
|
||
|
* unroll.c (copy_loop_body, loop_iterations): Likewise.
|
||
|
(remap_split_bivs): Likewise.
|
||
|
|
||
|
2001-01-01 Michael Hayes <mhayes@redhat.com>
|
||
|
|
||
|
* loop.c (loop_ivs_free): New function.
|
||
|
(strength_reduce): Break out from...
|
||
|
|
||
|
2001-01-01 Michael Hayes <mhayes@redhat.com>
|
||
|
|
||
|
* loop.h (struct iv): New.
|
||
|
(REG_IV_TYPE, REG_IV_CLASS, REG_INFO): Modify to use 'struct iv'.
|
||
|
(struct loop_ivs): Replace 'reg_iv_type', 'reg_iv_info',
|
||
|
'reg_biv_class' fields with 'regs' and 'n_regs'.
|
||
|
(struct ivs): Rename 'loop_iv_list' field to 'list'.
|
||
|
* loop.c (loop_bivs_find, strength_reduce): Use ivs->regs array.
|
||
|
* unroll.c (loop_iterations): Check array bounds with ivs->n_regs.
|
||
|
|
||
|
2000-12-31 Alexandre Oliva <aoliva@redhat.com>
|
||
|
|
||
|
* resource.c (mark_referenced_resources): Abort() before
|
||
|
attempting to mark a pseudo register.
|
||
|
(mark_set_resources): Likewise.
|
||
|
|
||
|
2001-01-01 Michael Hayes <mhayes@redhat.com>
|
||
|
|
||
|
* loop.h (REG_IV_CLASS): New accessor macro.
|
||
|
* loop.c (REG_IV_CLASS): Use it instead of reg_iv_class array.
|
||
|
* unroll.c (REG_IV_CLASS): Likewise.
|
||
|
|
||
|
See ChangeLog.4 for earlier changes.
|