Commit Graph

25549 Commits

Author SHA1 Message Date
Richard Kenner
b701041288 expr.c (store_constructor): New argument SIZE; pass to clear_storage.
* expr.c (store_constructor): New argument SIZE; pass to clear_storage.
	(store_constructor_field, expand_expr): Pass new arg.

From-SVN: r31037
1999-12-20 15:29:36 -05:00
Mark Mitchell
11a6092b63 Makefile.in (explow.o): Depend on function.h.
* Makefile.in (explow.o): Depend on function.h.

	* stor-layout.c (set_sizetype): Fix typo.

From-SVN: r31036
1999-12-20 19:47:58 +00:00
Nathan Sidwell
2d447b1e3b * g++.old-deja/g++.other/cast3.C: New test.
From-SVN: r31035
1999-12-20 15:54:19 +00:00
Nathan Sidwell
6816f04063 typeck.c (strip_all_pointer_quals): New static function.
* typeck.c (strip_all_pointer_quals): New static function.
(build_static_cast): Use it. Don't use at_least_as_qualified_p.

From-SVN: r31034
1999-12-20 15:53:43 +00:00
Bernd Schmidt
01d939e8fb current_function -> cfun
From-SVN: r31033
1999-12-20 13:18:17 +00:00
Bernd Schmidt
239a0f5ba5 Change some regsets to regset_heads
From-SVN: r31032
1999-12-20 12:13:01 +00:00
Jeff Law
1af373f65c Daily bump.
From-SVN: r31031
1999-12-20 01:45:06 -07:00
Anthony Green
d352598f80 Alpha Linux changes.
From-SVN: r31030
1999-12-20 05:55:34 +00:00
Michael Hayes
4c0c8ee1f2 * config/c4x/rtems.h: New file.
From-SVN: r31029
1999-12-20 04:40:37 +00:00
Anthony Green
abd995697d gcconfig.h: Use libgcj hack for Alpha Linux.
* gcconfig.h: Use libgcj hack for Alpha Linux.
       Undefine MPROTEXT_VDB (from Jeff Sturm).
       * os_dep.c: Remove Alpha Linux hacks.
       * misc.c: Ditto.

From-SVN: r31028
1999-12-20 02:34:52 +00:00
Anthony Green
7013e7cda9 libgcjdata.c: New file.
1999-12-19  Anthony Green  <green@cygnus.com>

        * libgcjdata.c: New file.
        * libgcj.spec.in: Use @LIBDATASTARTSPEC@ in startfile.
        * configure: Rebuilt.
        * configure.in (LIBDATASTARTSPEC): Force data with a known name
        into the program.
        * Makefile.in: Rebuilt.
        * Makefile.am: Build libgcjdata.a.

        * libgcj.spec.in: Use @FORCELIBGCCSPEC@ in startfile.
        * configure: Rebuilt.
        * configure.in (FORCELIBGCCSPEC): Force important parts of libgcc
        into every program.

From-SVN: r31027
1999-12-20 02:18:11 +00:00
Bernd Schmidt
ecf3151a7b Better spill failure messages.
From-SVN: r31026
1999-12-19 17:39:15 +00:00
Richard Kenner
7cfc1daaf8 rs6000.h (SUBTARGET_DEFAULT): New macro.
* rs6000.h (SUBTARGET_DEFAULT): New macro.
	(TARGET_SWITCHES): Allow subtargets to default switches.
	* rs6000/vxppc.h (SUBTARGET_DEFAULT): New macro.

From-SVN: r31025
1999-12-19 07:45:21 -05:00
Jeff Law
227d9fb43c Daily bump.
From-SVN: r31024
1999-12-19 01:45:07 -07:00
Mark Mitchell
2a14e2147b crtstuff.c (__do_global_ctors_aux): Do not call __cxa_finalize in a main program.
* crtstuff.c (__do_global_ctors_aux): Do not call __cxa_finalize
	in a main program.

From-SVN: r31023
1999-12-19 05:36:13 +00:00
Richard Henderson
e05eb76168 cccp.c (main): Define __STDC_VERSION__ as necessary.
* cccp.c (main): Define __STDC_VERSION__ as necessary.
        * cppinit.c (cpp_handle_option): Likewise.

        * ginclude/stdarg.h (va_copy): Use __STDC_VERSION__ to
        determine when to define.

From-SVN: r31022
1999-12-18 20:43:20 -08:00
Richard Henderson
09fe1c496d alpha.c (alpha_emit_conditional_move): If TARGET_FIX, handle cmove with mismatched test and data modes.
* alpha.c (alpha_emit_conditional_move): If TARGET_FIX, handle
        cmove with mismatched test and data modes.

From-SVN: r31021
1999-12-18 20:35:31 -08:00
Richard Henderson
b00c3006c8 c-typeck.c (c_expand_start_case): Don't warn for long switch in system headers.
* c-typeck.c (c_expand_start_case): Don't warn for long switch
        in system headers.

From-SVN: r31020
1999-12-18 20:31:06 -08:00
Richard Kenner
f49a78fcf7 Fix typo in last change
From-SVN: r31019
1999-12-18 21:01:51 -05:00
Richard Kenner
1f9a0ec21c Revert bogus patch
From-SVN: r31018
1999-12-18 20:19:33 -05:00
Richard Kenner
d4b60170fd alias.c: Minor reformatting.
* alias.c: Minor reformatting.
	* flow.c: Likewise.
	* regs.h: Likewise.
	* stor-layout.c: Likewise.
	* fold-const.c: Likewise.
 	(OVERFLOW_SUM_SIGN): Renamed from overflow_sum_sign.
	(struct cb_args, const_binop_1, const_binop): Pass type of arg,
	not arg itself.
	(size_int_wide): Cache nodes even if garbage collecting.
	(twoval_comparison_p): Reenable SAVE_EXPR case if operand
	of SAVE_EXPR has no side effects.
	* cse.c: Move a comment.
	* tree.c: Minor reformatting.
	(int_size_in_bytes): Return -1 if constant overflows.
	* reload.c (combine_reloads): Do nothing if no output reload

From-SVN: r31017
1999-12-18 16:33:23 -05:00
J"orn Rennecke
3f0aabf20a * unroll.c (copy_loop_body): Don't treat a REG like a PLUS.
From-SVN: r31016
1999-12-18 19:59:24 +00:00
Franz Sirl
0cc6d0ac18 * MAINTAINERS: Add myself to the write-after-approval list
From-SVN: r31015
1999-12-18 19:56:21 +00:00
Zack Weinberg
2bf8d22acb objc-parse.c: Regenerate.
1999-12-18 10:42 -0800  Zack Weinberg  <zack@wolery.cumb.org>

	* objc/objc-parse.c: Regenerate.  This file must be rebuilt
	after any change to c-parse.in, even if objc-parse.y didn't
	change.  Oops.

From-SVN: r31014
1999-12-18 18:44:24 +00:00
David S. Miller
e619323dbd toplev.c (rest_of_compilation): Restore BLOCK tree reconstruction and branch shortening changes lost in...
* toplev.c (rest_of_compilation): Restore BLOCK tree
	reconstruction and branch shortening changes lost in
	December 18th change.

From-SVN: r31013
1999-12-18 10:30:41 -08:00
Gerald Pfeifer
05e1739fcf newcvsroot: Add check on the number of command-line arguments.
* newcvsroot: Add check on the number of command-line arguments.
	Add usage.

From-SVN: r31012
1999-12-18 14:34:56 +00:00
Scott Bambrough
193a94fa39 linux-elf.h: Change all instances of ARM_FLAG_SHORT_BYTES to ARM_FLAG_MMU_TRAPS.
* config/arm/linux-elf.h: Change all instances of
ARM_FLAG_SHORT_BYTES to ARM_FLAG_MMU_TRAPS.
* config/arm/uclinux-elf.h: Likewise.

From-SVN: r31011
1999-12-18 13:34:21 +00:00
Jeff Law
029135f3a4 Daily bump.
From-SVN: r31009
1999-12-18 01:45:06 -07:00
Gabriel Dos Reis
6ed551b487 toplev.c (notice, [...]): Move to diagnostic.c
1999-12-18 Gabriel Dos Reis  <gdr@codesourcery.com>

        * toplev.c (notice, vmessage, v_message_with_file_and_line,
        v_message_with_decl, file_and_line_for_asm,
        v_error_with_file_and_line, v_error_with_decl, v_error_for_asm,
        verror, vfatal, v_warning_with_file_and_line, v_warning_with_decl,
        v_warning_for_asm, vwarning, vpedwarn, v_pedwarn_with_decl,
        v_pedwarn_with_file_and_line, vsorry, vnotice, count_error,
        pfatal_with_name, fatal_io_error, need_error_newline,
        last_error_function, last_error_tick, announce_function,
        default_print_error_function, print_error_function,
        report_error_function, fnotice, error_with_file_and_line,
        error_with_decl, error_for_asm, error, set_fatal_function, fatal,
        _fatal_insn, _fatal_insn_not_found, warning_with_file_and_line,
        warning_with_decl, warning_for_asm, warning, pedwarn,
        pedwarn_with_decl, pedwarn_with_file_and_line, sorry): Move to
        diagnostic.c
        (compile_file): Use fnotice instead of notice.  Adjust call.

        * diagnostic.c: New file.

        * Makefile.in (OBJS): Include diagnostic.o
        (diagnostic.o): Define dependence.

From-SVN: r31003
1999-12-18 01:45:40 +00:00
Tom Tromey
ccfe7d0a0d re GNATS libgcj/111 (bug in reflection code)
* java/lang/reflect/Method.java (toString): Call getType if
	required.  Partial fix for PR libgcj/111.  From Per Bothner.

From-SVN: r31002
1999-12-18 00:44:00 +00:00
Michael Hayes
4e6de5a90f c4x.h (ASM_OUTPUT_XXX): Wrap in do-while(0).
* config/c4x/c4x.h (ASM_OUTPUT_XXX): Wrap in do-while(0).
	Tweak formatting.

From-SVN: r31001
1999-12-17 23:17:43 +00:00
Michael Hayes
f475349b88 * config/c4x/c4x.md (rpts_top, rptb_top): Add clobbers for rs and re.
From-SVN: r31000
1999-12-17 22:43:43 +00:00
Zack Weinberg
d7eb5a45e2 fixtests.c (is_cxx_header): New fn, split out of double_slash_test.
1999-12-17 13:21 -0800  Zack Weinberg  <zack@rabi.columbia.edu>

	* fixtests.c (is_cxx_header): New fn, split out of
	double_slash_test.
	(else_endif_label): Allow "#endif // comment" in C++ headers,
	as determined by is_cxx_header.
	* fixfixes.c (else_endif_label_fix): Update comment.
	* fixincl.c: Don't output VERB_PROGRESS lines if stdout is not
	a tty.
	* genfixes: Correct double thinko in commandline parsing.
	* hackshell.tpl: Generate correct sh syntax for bypass
	entries.

	* inclhack.def (all): Whenever an inserted preprocessor
	conditional is split over multiple lines, use double
	backslashes in this file so the fixed header will be readable.

	(AAB_fd_zero_glibc_1_0): Rename to AAB_fd_zero_asm_posix_types_h
	and add bypass entry for correct version of this header.
	(AAB_fd_zero_glibc_1_x): Rename to AAB_fd_zero_gnu_types_h.
	(AAB_fd_zero_glibc_2_0): Rename to AAB_fd_zero_selectbits_h.

	(hpux8_bogus_inlines): New fix, split from...
	(ultrix_atof_param) ... here.
	(math_expression): Add bypass entry keyed to glibc comment
	indicating the problem has been dealt with; disable
	unnecessary sed operations; update commentary.
	(math_gcc_ifndefs): Rename to math_huge_val_from_dbl_max,
	add select and bypass entries, simplify shell operation.
	(math_huge_val_ifndef): Split from math_gcc_ifndefs.

	(ip_missing_semi, rs6000_param, tinfo_cplusplus,
	 ultrix_atof_param): Add select entry.
	(stdio_va_list, sunos_mather_decl): Add bypass entry.
	(systypes_for_aix, sysv86_string, tinfo_cplusplus): Put the
	comments with the fixes they describe.

	* fixincl.x, fixincl.sh, inclhack.sh: Regen.

From-SVN: r30999
1999-12-17 21:49:30 +00:00
Zack Weinberg
cdfff38e3d c-parse.in (string action): Do not warn about ANSI string concatenation in system headers.
1999-12-17 13:21 -0800  Zack Weinberg  <zack@rabi.columbia.edu>

	* c-parse.in (string action): Do not warn about ANSI string
	concatenation in system headers.  Affects C parser only.
	* c-parse.y, c-parse.c, c-parse.h: Rebuild.

From-SVN: r30998
1999-12-17 21:23:38 +00:00
Tom Tromey
6f19291ada re GNATS gcj/119 (gcjh needs to output space before leading "::" with JArray's)
* gjavah.c (decode_signature_piece): Print "::" in JArray<>.  This
	fixes PR gcj/119.
	(process_file): Use `\n\' at end of each line in string.

From-SVN: r30997
1999-12-17 20:25:59 +00:00
Tom Tromey
ce63fdce90 * java/lang/natPosixProcess.cc (startProcess): Don't use sprintf.
From-SVN: r30996
1999-12-17 16:06:17 +00:00
Jakub Jelinek
53f4a9f689 sparc.h (TARGET_ARCH32): Exchange ifdefs so that if compiling libgcc2 the macro depends always on arch...
* config/sparc/sparc.h (TARGET_ARCH32): Exchange ifdefs so that if
	compiling libgcc2 the macro depends always on arch cpp defines.

From-SVN: r30995
1999-12-17 16:49:32 +01:00
Richard Earnshaw
4ce580a254 loop.c (insert_loop_mem): Don't record MEMs from inside EXPR_LISTs.
* loop.c (insert_loop_mem): Don't record MEMs from inside
EXPR_LISTs.

From-SVN: r30994
1999-12-17 15:37:35 +00:00
Jan Hubicka
1f01879e43 * regclass.c (regclass): Do not use flowgraph when not optimizing.
From-SVN: r30993
1999-12-17 13:19:41 +00:00
Jan Hubicka
833fc3ad23 gcse.c (try_replace_reg): Do replacements in REG_EQUAL/REG_EQUIV notes too...
* gcse.c (try_replace_reg): Do replacements in REG_EQUAL/REG_EQUIV
	notes too, create one when replacement failed, attempt to simplify
	resulting notes.
	(cprop_insn): Propagate even to registers mentioned only in REG_EQUAL
	or REG_EQUIV notes.

From-SVN: r30992
1999-12-17 11:10:58 +00:00
Jeff Law
5928cc35db Daily bump.
From-SVN: r30991
1999-12-17 01:45:07 -07:00
Mark Mitchell
db4283a074 cp-tree.h (cp_tree_index): Add CPTI_DSO_HANDLE.
* cp-tree.h (cp_tree_index): Add CPTI_DSO_HANDLE.
	(dso_handle_node): New macro.
	(flag_use_cxa_atexit): New variable.
	(declare_global_var): New function.
	(start_anon_func): Remove declaration.
	(end_anon_func): Likewise.
	* decl.c (get_atexit_node): New function, split out from
	destroy_local_static.  Handle flag_use_cxa_atexit.
	(get_dso_handle_node): Likewise.
	(start_cleanup_fn): Renamed from start_anon_func.  Moved here from
	except.c.  Handle flag_use_cxa_atexit.
	(end_cleanup_fn): Renamed from end_anon_func.  Moved here from
	except.c.
	(declare_global_var): New variable.
	(destroy_local_static): Handle flag_use_cxa_atexit.
	* decl2.c (flag_use_cxa_atexit): New variable.
	(lang_f_options): Likewise.
	* except.c (start_anon_func): Remove.
	(end_anon_func): Liekwise.
	* lang-options.h: Add -fuse-cxa-atexit and -fno-use-cxa-atexit.
	* rtti.c (get_tinfo_var): Use declare_global_var.

From-SVN: r30990
1999-12-17 07:40:08 +00:00
Mark Mitchell
fc69382254 crtstuff.c (__dso_handle): Declare.
* crtstuff.c (__dso_handle): Declare.
	(__cxa_finalize): Likewise.
	(do_global_dtors_aux): Call __cxa_finalize if __dso_handle is
	non-NULL.

	* invoke.texi: Document -fuse-cxa-atexit.

	* tree.h (ptr_type_node): Document.
	(const_ptr_type_node): Likewise.

From-SVN: r30989
1999-12-17 07:39:13 +00:00
Bryce McKinlay
5ac99d9adc Boolean.java (Boolean(String)): Set Value' to false on a null String constructor parameter.
1999-12-16  Bryce McKinlay  <bryce@albatross.co.nz>

        * java/lang/Boolean.java (Boolean(String)): Set Value' to false on a
        null String constructor parameter.
        * java/net/natPlainSocketImpl.cc: Remove unneccessary sprintf calls
        for exception messages.
        BooleanClass: declare.
        (setOption): Use BooleanClass instead of Class.forName() for
        instanceof test.
        (bind): Cast 4th parameter of setsockopt to char *' for
        compatibility with older Solaris headers.
        * java/net/natPlainDatagramSocketImpl.cc: Remove unneccessary
        sprintf calls for exception messages.
        BooleanClass, IntegerClass: declare.
        (setOption): Use BooleanClass and IntegerClass, not Class.forName()
        for instanceof test.

From-SVN: r30988
1999-12-17 05:11:28 +00:00
Jan Hubicka
fe2e294c7e Oops. Used wrong changelog entry.
* regmove.c (optimize_reg_copy_1): Ignore LOOP notes.
	(optimize_reg_copy_2): Likewise.
	(optimize_reg_copy_3): Likewise.
	(fixup_match_2): Likewise.
	(regmove_optimize): Likewise.
	(fixup_match_1): Liekwise.

From-SVN: r30987
1999-12-17 00:49:22 +00:00
Jan Hubicka
07aaad94e7 regmove.c (copy_src_to_dest): Remove loop_depth parameter.
* regmove.c (copy_src_to_dest): Remove loop_depth parameter.
	(optimize_reg_copy_1): Remove REG_N_REFS updating code.
	(optimize_reg_copy_2, copy_src_to_dest, fixup_match_2): Likewise.
	(regmove_optimize, fixup_match_1): Likewise.

From-SVN: r30986
1999-12-17 00:47:46 +00:00
Jan Hubicka
e9e808584e i386.md (HI to SImode promoting splitters): Rewrite.
* i386.md (HI to SImode promoting splitters): Rewrite.
	(pushsf mem peep2): New.
	(testhi to andhi peep2): Remove.
	* i386.h (x86_promote_QImode): New.
	(TARGET_PROMOTE_QImode): New.
	(PREDICATE_CODES): Add promotable_binary_operator.
	* i386.c (x86_promote_QImode0: New.
	(promotable_binary_operator): New.
	* i386-protos.h (promotable_binary_operator): New.

From-SVN: r30985
1999-12-17 00:45:03 +00:00
Jan Hubicka
a1cbdd7f51 i386.md (test?i_1): Use "nonmemory_operand" predicate, simplify condition.
* i386.md (test?i_1): Use "nonmemory_operand" predicate, simplify
	condition.
	(one_cmpl?i*): Pass "NOT" to unary_operator_ok.

From-SVN: r30984
1999-12-17 00:35:39 +00:00
Mark Mitchell
607cf13135 class.c (check_field_decls): Don't return a value.
1999-12-16  Mark Mitchell  <mark@codesourcery.com>

	* class.c (check_field_decls): Don't return a value.
	(avoid_overlap): Moved here from tree.c.
	(build_base_fields): Likewise.
	(check_bases): New function, split out from finish_base_struct.
	(check_bases_and_members): New function, split out from finish_struct_1.
	(struct base_info): Remove cant_have_default_ctor,
	cant_have_const_ctor, cant_have_asn_ref.
	(finish_base_struct): Split semantic analysis into check_bases.
	(finish_struct_methods): Fix bogus assertion.
	(check_field_decls): Call finish_struct_anon here.
	(build_vbase_pointer_fields): Use CLASSTYPE_N_BASECLASSES.
	(finish_struct_1): Use check_bases_and_members.  Reorganize.
	* cp-tree.h (CLASSTYPE_VBASECLASSES): Improve documentation.
	(build_base_fields): Don't declare.
	* tree.c (avoid_overlap): Remove.
	(build_base_fields): Likewise.

From-SVN: r30983
1999-12-16 22:18:22 +00:00
Mark Mitchell
a97901e608 Makefile.in (INTREGRATE_H): Rename to INTEGRATE_H.
* Makefile.in (INTREGRATE_H): Rename to INTEGRATE_H.
	* function.c (insert_block_after_note): Remove.
	(retrofit_block): Likewise.
	(identify_blocks): Fix indentation.
	(reorder_blocks): Don't NULL out NOTE_SOURCE_FILE for a
	NOTE_INSN_BLOCK_BEG or NOTE_INSN_BLOCK_END.
	* function.h (insert_block_after_note): Remove prototype.
	(retrofit_block): Likewise.
	* integrate.c (expand_inline_function): Don't call
	find_loop_tree_blocks.  Use expand_start_bindings_and_block, not
	just expand_start_bindings.  Use the block_map to remap old
	NOTE_BLOCKs to new ones.
	(integrate_decl_tree): Keep track of remapped blocks.
	* integrate.h (struct inline_remap): Add block_map.
	* stmt.c (expand_fixup): Don't try to retrofit_blocks.  Just set
	NOTE_BLOCK on the notes.
	(expand_start_bindings): Rename to ...
	(expand_start_bindings_and_block): Add parameter.  Set NOTE_BLOCK.
	(expand_end_bindings): Set NOTE_BLOCK.
	* toplev.c (rest_of_compilation): In function-at-a-time-mode,
	reconstruct the BLOCK tree.
	* tree.h (expand_start_bindings): Macroize.  Call ...
	(expand_start_bindings_and_block): New function.

	* optimize.c (struct inline_data): Remove scope_stmt.
	(remap_block): Don't use insert_block_after_note.  Don't update
	scope_stmt.
	(expand_call_inline): Don't update scope_stmt.
	(optimize_function): Don't initialize scope_stmt.
	* semantics.c (expand_stmt): Set NOTE_BLOCK for newly emitted
	NOTE_INSN_BLOCK_BEG/NOTE_INSN_BLOCK_END notes.

From-SVN: r30982
1999-12-16 17:50:29 +00:00