Geoff Keating [Mon, 23 Oct 2000 18:45:15 +0000 (18:45 +0000)]
reload1.c (reload_reg_reaches_end_p): A RELOAD_OTHER can overwrite the value in a RELOAD_FOR_INPUT and other kinds of...
* reload1.c (reload_reg_reaches_end_p): A RELOAD_OTHER can
overwrite the value in a RELOAD_FOR_INPUT and other kinds of
reloads just like an RELOAD_FOR_OUTPUT would.
Mark Mitchell [Sun, 22 Oct 2000 17:50:28 +0000 (17:50 +0000)]
tree.h (TYPE_IS_SIZETYPE): Add more documentation.
* tree.h (TYPE_IS_SIZETYPE): Add more documentation.
* typeck.c (c_sizeof): Return an expression of `size_t' type,
not one with TYPE_IS_SIZETYPE set.
(dubious_conversion_warnings): Remove special-case code.
* Makefile.am: Added rules for libgcjx library.
* Makefile.in: Rebuilt.
* configure.in: Added check for X.
* configure: Rebuilt.
* gnu/awt/LightweightRedirector.java: New file.
* gnu/awt/j2d/AbstractGraphicsState.java: New file.
* gnu/awt/j2d/DirectRasterGraphics.java: New file.
* gnu/awt/j2d/Graphics2DImpl.java: New file.
* gnu/awt/j2d/IntegerGraphicsState.java: New file.
* gnu/awt/j2d/MappedRaster.java: New file.
* gnu/awt/xlib/XCanvasPeer.java: New file.
* gnu/awt/xlib/XEventLoop.java: New file.
* gnu/awt/xlib/XEventQueue.java: New file.
* gnu/awt/xlib/XFontMetrics.java: New file.
* gnu/awt/xlib/XFramePeer.java: New file.
* gnu/awt/xlib/XGraphics.java: New file.
* gnu/awt/xlib/XGraphicsConfiguration.java: New file.
* gnu/awt/xlib/XPanelPeer.java: New file.
* gnu/awt/xlib/XToolkit.java: New file.
* gnu/gcj/xlib/Clip.java: New file.
* gnu/gcj/xlib/Colormap.java: New file.
* gnu/gcj/xlib/Display.java: New file.
* gnu/gcj/xlib/Drawable.java: New file.
* gnu/gcj/xlib/Font.java: New file.
* gnu/gcj/xlib/GC.java: New file.
* gnu/gcj/xlib/Pixmap.java: New file.
* gnu/gcj/xlib/Screen.java: New file.
* gnu/gcj/xlib/Visual.java: New file.
* gnu/gcj/xlib/WMSizeHints.java: New file.
* gnu/gcj/xlib/Window.java: New file.
* gnu/gcj/xlib/WindowAttributes.java: New file.
* gnu/gcj/xlib/XAnyEvent.java: New file.
* gnu/gcj/xlib/XButtonEvent.java: New file.
* gnu/gcj/xlib/XColor.java: New file.
* gnu/gcj/xlib/XConfigureEvent.java: New file.
* gnu/gcj/xlib/XConnectException.java: New file.
* gnu/gcj/xlib/XEvent.java: New file.
* gnu/gcj/xlib/XException.java: New file.
* gnu/gcj/xlib/XExposeEvent.java: New file.
* gnu/gcj/xlib/XID.java: New file.
* gnu/gcj/xlib/XImage.java: New file.
* gnu/gcj/xlib/XUnmapEvent.java: New file.
* gnu/gcj/xlib/natClip.cc: New file.
* gnu/gcj/xlib/natColormap.cc: New file.
* gnu/gcj/xlib/natDisplay.cc: New file.
* gnu/gcj/xlib/natDrawable.cc: New file.
* gnu/gcj/xlib/natFont.cc: New file.
* gnu/gcj/xlib/natGC.cc: New file.
* gnu/gcj/xlib/natPixmap.cc: New file.
* gnu/gcj/xlib/natScreen.cc: New file.
* gnu/gcj/xlib/natVisual.cc: New file.
* gnu/gcj/xlib/natWMSizeHints.cc: New file.
* gnu/gcj/xlib/natWindow.cc: New file.
* gnu/gcj/xlib/natWindowAttributes.cc: New file.
* gnu/gcj/xlib/natXAnyEvent.cc: New file.
* gnu/gcj/xlib/natXButtonEvent.cc: New file.
* gnu/gcj/xlib/natXColor.cc: New file.
* gnu/gcj/xlib/natXConfigureEvent.cc: New file.
* gnu/gcj/xlib/natXException.cc: New file.
* gnu/gcj/xlib/natXExposeEvent.cc: New file.
* gnu/gcj/xlib/natXImage.cc: New file.
* gnu/gcj/xlib/natXUnmapEvent.cc: New file.
* java/awt/EventDispatchThread.java: Start thead on creation.
Jason Merrill [Sat, 21 Oct 2000 21:44:04 +0000 (17:44 -0400)]
parse.y (operator): Set got_object from got_scope.
* parse.y (operator): Set got_object from got_scope.
Set looking_for_typename.
* decl.c (lookup_name_real): Clear val after setting from_obj.
Reorganize diagnostic.
Philipp Thomas [Sat, 21 Oct 2000 19:04:38 +0000 (19:04 +0000)]
POTFILES.in: Remove config/rs6000/netware.h.
2000-10-21 Philipp Thomas <pthomas@suse.de>
* POTFILES.in: Remove config/rs6000/netware.h.
Remove the files moved out of libgcc and over
to libsupc++.
* Makefile.in.in (stamp-check-pot): Rename to stamp-check-po.
(check-po): New, more intuitive target to check POTFILES.in
for consistency.
Joseph Myers [Sat, 21 Oct 2000 00:51:50 +0000 (01:51 +0100)]
configopts.html, [...]: Remove many EGCS references...
* docs/configopts.html, docs/install.html, docs/17_intro/BADNAMES,
docs/17_intro/howto.html, docs/18_support/howto.html,
docs/19_diagnostics/howto.html, docs/20_util/howto.html,
docs/21_strings/howto.html, docs/22_locale/howto.html,
docs/23_containers/howto.html, docs/24_iterators/howto.html,
docs/25_algorithms/howto.html, docs/26_numerics/howto.html,
docs/27_io/howto.html, docs/ext/howto.html, docs/faq/index.html:
Remove many EGCS references; use current absolute URLs on
gcc.gnu.org or sources.redhat.com for messages in list archives.
* docs/faq/index.txt: Regenerate.
Tom Tromey [Fri, 20 Oct 2000 21:21:37 +0000 (21:21 +0000)]
Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
* Makefile.am: Include deps.mk.
(GCJCOMPILE): Added -MD, -MT, and -MF.
($(javao_files)): Don't depend on libgcj.zip.
(all-recursive): New target.
(%.lo:%.cc): Do dependency tracking.
($(nat_headers)): Don't depend on libgcj.zip.
* configure: Rebuilt.
* configure.in: Make .d files and deps.mk.
Richard Kenner [Fri, 20 Oct 2000 20:57:21 +0000 (20:57 +0000)]
expr.c (expand_expr, [...]): Set RTX_UNCHANGING_P on returned MEM.
* expr.c (expand_expr, case SAVE_EXPR): Set RTX_UNCHANGING_P on
returned MEM.
(expand_expr_unaligned, case ARRAY_REF): Check that index is
a constant before comparing it; use tree_low_cst.
* tree.c (save_expr): Set TREE_READONLY.
(substitute_expr): Return inside of NON_LVALUE_EXPR.
(build, build1): Set TREE_READONLY if all operands are.
(build_index_type): If upper bound is a negative number, lower
bound is zero and sizetype is unsigned, use upper bound of one and
lower of zero.
Richard Kenner [Fri, 20 Oct 2000 19:42:40 +0000 (19:42 +0000)]
stor-layout.c (compute_record_mode): Use tree_low_cst.
* stor-layout.c (compute_record_mode): Use tree_low_cst.
Don't use mode of field for record unless sizes are the same.
(layout_type, case ARRAY_TYPE): Remove special bounds handling
previously added for Ada; also change to using host_integerp
and tree_low_cst.
Richard Kenner [Fri, 20 Oct 2000 19:37:14 +0000 (19:37 +0000)]
loop.c (strength_reduce): Show when new register made for giv is known to be a pointer and its aligment if...
* loop.c (strength_reduce): Show when new register made for
giv is known to be a pointer and its aligment if so and known.
(loop_dump_aux): Show VERBOSE parameter unused.
Richard Kenner [Fri, 20 Oct 2000 17:51:52 +0000 (17:51 +0000)]
fold-const.c (force_fit_type): Unsigned values can overflow if they are sizetype.
* fold-const.c (force_fit_type): Unsigned values can overflow
if they are sizetype.
(int_const_binop): Don't use cache if overflows.
* cp/typeck.c (dubious_conversion_warning): Suppress if
TYPE_IS_SIZETYPE.
Richard Kenner [Fri, 20 Oct 2000 17:28:28 +0000 (17:28 +0000)]
combine.c (struct undo): Change int to unsigned int.
* combine.c (struct undo): Change int to unsigned int.
(do_SUBST_INT): Args are unsigned int.
(make_extraction, force_to_mode): Use proper type when forming mask.
(make_field_assignment): Likewise.
* c-common.c (check_format_info_recurse): Extract string constant
initializers from non-volatile constant arrays and check them as
formats.
* c-typeck.c (decl_constant_value): Don't check pedantic or check
for DECL_MODE (decl) != BLKmode.
(decl_constant_value_for_broken_optimization): New function which
includes these checks.
(default_conversion, convert_for_assignment, digest_init): Use
decl_constant_value_for_broken_optimization instead of
decl_constant_value.
* config/avr/avr-protos.h (avr_output_bld): New.
(out_shift_with_cnt): Add t_len argument.
* config/avr/avr.c (avr_num_arg_regs): Remove -mpack-args.
(output_movqi, output_movhi, output_movsisf): Optimize loading
any constant with exactly one bit set to NO_LD_REGS.
(out_shift_with_cnt): Optimize output code for size or speed,
depending on optimize_size. Handle small shift counts as well
(if not hand-optimized in ?sh??i3_out). Shifts can be done
with or without a scratch register, with help of __tmp_reg__
or __zero_reg__ if necessary. Add T_LEN argument to pass the
length of TEMPLATE in words, return total insn length in *LEN.
(ashlqi3_out, ashrqi3_out, lshrqi3_out): Change all calls to
out_shift_with_cnt to work with the above change.
(ashlhi3_out, ashlsi3_out, ashrhi3_out, ashrsi3_out, lshrhi3_out,
lshrsi3_out): Likewise. Optimize more known shift count cases.
Remove cases already well optimized in out_shift_with_cnt.
(avr_output_bld): New function.
* config/avr/avr.h (MASK_PACK_ARGS, TARGET_PACK_ARGS): Remove.
(TARGET_SWITCHES): Remove -mpack-args backward compatibility.
* config/avr/avr.md (*reload_inqi, *reload_inhi, *reload_insi):
Add reload_completed to insn condition - only for peepholes.
(ashlqi3, ashrqi3, lshrqi3): Correct insn length for shift counts
in a register or memory.
(ashlhi3, ashlsi3, ashrhi3, ashrsi3, lshrhi3, lshrsi3): Likewise.
Do not require a scratch register.
(*ashlhi3_const, *ashlsi3_const, *ashrhi3_const, *ashrsi3_const,
*lshrhi3_const, *lshrsi3_const): New insns and matching peepholes.
Optimize shifts by known count using a scratch register, but only
if one is still available after register allocation.
Benjamin Kosnik [Fri, 20 Oct 2000 06:52:00 +0000 (06:52 +0000)]
codecvt_unicode_char.cc (test01): Adjust creation of state_type for unicode_codecvt to take into account the byte...
2000-10-19 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
* testsuite/22_locale/codecvt_unicode_char.cc (test01): Adjust
creation of state_type for unicode_codecvt to take into account
the byte order markings. Add distinct tests for UCS-2BE and UCS-2LE.
* testsuite/22_locale/codecvt_unicode_wchar_t.cc (test01): Same.
* include/bits/codecvt.h (__enc_traits): Add support for encodings
that need a byte order marker. Needed for correct unicode support.
* src/locale.cc: Remove explicit qualification std::.
(locale::locale(const char* __name)): Revert, as named locale
support not finished.
* src/localename.cc (locale::_Impl:: _Impl(size_t __numfacets,
size_t __refs, bool __has_name = false, string __name): Move
default argument...
* include/bits/localefwd.h: Here.
Mark Mitchell [Fri, 20 Oct 2000 06:04:59 +0000 (06:04 +0000)]
class.c (subobject_offset_fn): New type.
* class.c (subobject_offset_fn): New type.
(dfs_record_base_offsets): Remove.
(record_base_offsets): Likewise.
(dfs_search_base_offsets): Likewise.
(record_subobject_offset): New function.
(check_subobject_offset): Likewise.
(walk_subobject_offsets): Likewise.
(record_subobject_offsets): Likewise.
(layout_conflict_p): Reimplement.
(layout_nonempty_base_or_field): Correct handling of type
conflicts during layout.
(layout_empty_base): Likewise.
(build_base_field): Adjust to handle new representation of empty
base offset table.
(build_base_fields): Likewise.
(layout_virtual_bases): Likewise.
(splay_tree_compare_integer_csts): New function.
(layout_class_type): Use a splay_tree, rather than a varray, to
represent the offsets of empty bases.
John Wehle [Fri, 20 Oct 2000 04:56:21 +0000 (04:56 +0000)]
alias.c: (mark_constant_function): Don't check pure functions.
* alias.c: (mark_constant_function): Don't check pure functions.
Initialize and end alias analysis.
(nonlocal_mentioned_p): Rename from nonlocal_reference_p.
Don't make a special exception for recursion. Handle
UNSPEC_VOLATILE. Don't assume ASM_OPERANDS is non-local
unless it's volatile.
* local-alloc.c (equivalence): New structure.
(reg_equiv): Define.
(contains_replace_regs): Remove array and use
field in reg_equiv.
(memref_referenced_p): Likewise.
(no_equiv): Likewise.
(update_equiv_regs): Likewise.
(equiv_init_varies_p,
equiv_init_movable_p): New functions.
(update_equiv_regs): Use them. Use rtx_varies_p
instead of function_invariant_p. Process insns
from end to beginning. Allow a REG_EQUIV insn
within the same loop as a use to be moved, also
allow it to be moved out of a loop. Update
REG_DEAD notes when substituting into an insn.
Jim Wilson [Fri, 20 Oct 2000 00:58:35 +0000 (00:58 +0000)]
Fix tree-checking abort on testcase with undefined macro as array size.
* c-decl.c (start_decl): Check for error_mark_node type before using
COMPLETE_TYPE_P.
(finish_decl): Likewise. Don't give an error if decl type is
already error_mark_node.
Jim Wilson [Thu, 19 Oct 2000 23:21:14 +0000 (23:21 +0000)]
Fix ICE on lex output file reported by Andreas Schwab.
* haifa-sched.c (compute_trg_info): Add explanatory comments.
New local update_blocks. Use update_blocks to remove duplicates
when computing update blocks. Check for bblst_table overflow.
(schedule_block): Add explanatory comment. Reduce bblst_size by
factor of 2.
* config/ia64/ia64.md (movdi_symbolic): Document loss of REG_LABEL
notes.
* gjavah.c (add_class_decl): Removed unused variables `tname',
`tlen' and `name_index'.
* java-tree.h (BUILD_FILENAME_IDENTIFIER_NODE): New macro.
* jcf-parse.c (jcf_parse_source): Use it and set EXPR_WFL_FILENAME
in `wfl_operator' with value.
(yyparse): Use BUILD_FILENAME_IDENTIFIER_NODE.
(jcf_figure_file_type): Fixed identation.
* lex.c (java_get_line_col): Use EOF. Tuned `^' placement.
* parse.y (analyze_clinit_body): New function.
(static_initializer:): Reset `current_static_block'.
(java_parser_context_restore_global): Set EXPR_WFL_FIILENAME_NODE in
`wfl_operator' with new value.
(lookup_cl): Use EXPR_WFL_FILENAME.
(maybe_yank_clinit): Handle bogus <clinit> bodies, call
analyze_clinit_body.
(build_outer_field_access): Access to this$<n> built from
current_class, not its outer context.
(build_access_to_thisn): Fixed leading comment. Tidied things up.
(resolve_qualified_expression_name): Handle `T.this' and `T.this.f()'.
(patch_method_invocation): Use `is_static_flag' when already
initialized.
(patch_newarray): Removed assignment in ternary operator.
Geoff Keating [Wed, 18 Oct 2000 19:57:54 +0000 (19:57 +0000)]
t-netware: Bring in from the Red Hat tree.
2000-10-18 Geoffrey Keating <geoffk@cygnus.com>
David V. Henkel-Wallace <gumby@cygnus.com>
* config/i386/t-netware: Bring in from the Red Hat tree.
* config/i386/netware.h: Likewise.
* config/netware.h: Likewise.
* config/rs6000/netware.h: Delete.
* configure.in: Add i[34567]86-*-netware.
* configure: Hand-edit to match configure.in change.
Co-Authored-By: David V. Henkel-Wallace <gumby@cygnus.com>
From-SVN: r36941
* cp-tree.h (cp_tree_index): Add CPTI_FAKE_STD.
(fake_std_node): New macro.
* decl.c (in_std): Rename to ...
(in_fake_std): ... this.
(flag_no_builtin): Remove.
(flag_no_nonansi_builtin): Likewise.
(walk_namespaces_r): Use fake_std_node.
(push_namespace): Use std_identifier.
(pop_namespace): Use in_fake_std.
(lookup_name_real): Use fake_std_node.
(init_decl_processing): When -fhonor-std, create the `std'
namespace. Don't create a dummy fake_std_node in that case.
Adjust call to c_common_nodes_and_builtins. Use std_identifier.
(builtin_function): Put builtins whose names don't begin
with `_' in the std namespace.
* decl2.c (flag_no_builtin): Remove.
(flag_no_nonansi_builtin): Likewise.
(set_decl_namespace): Use fake_std_node.
(validate_nonmember_using_decl): Likewise.
(do_using_directive): Likewise.
(handle_class_head): Likewise.
* dump.c (dequeue_and_dump): Likewise.
* except.c (init_exception_processing): Use std_identifier.
* init.c (build_member_call): Use fake_std_node.
* rtti.c (init_rtti_processing): Use std_identifier.
tm.texi (Exception Region Output): Document DWARF_CIE_DATA_ALIGNMENT.
* tm.texi (Exception Region Output): Document
DWARF_CIE_DATA_ALIGNMENT.
* dwarf2out.c (DWARF_CIE_DATA_ALIGNMENT): Wrap definition in
#ifndef.
[ENABLE_CHECKING] (reg_save): Abort if offset is not a multiple of
DWARF_CIE_DATA_ALIGNMENT.
Joseph Myers [Wed, 18 Oct 2000 07:33:04 +0000 (08:33 +0100)]
c-common.c (CPLUSPLUS_STD_VER, [...]): Define.
* c-common.c (CPLUSPLUS_STD_VER, C_STD_VER, C_STD_NAME): Define.
(maybe_read_dollar_number, check_format_info_main): Use them for
pedantic warning messages.
Joseph Myers [Wed, 18 Oct 2000 06:49:34 +0000 (07:49 +0100)]
c-common.c (check_format_info_main): Minor cleanup...
* c-common.c (check_format_info_main): Minor cleanup: move
variables into inner scopes; initialize declarations where
appropriate; don't hardcode "scanf" name on warning for zero
width.