Commit Graph

26747 Commits

Author SHA1 Message Date
Mark Mitchell
18c038b9ca emit-rtl.c (remove_unncessary_notes): Remove notes for empty blocks.
* emit-rtl.c (remove_unncessary_notes): Remove notes for empty
	blocks.
	* final.c (next_block_index): Remove.
	(max_block_depth): Likewise.
	(pending_blocks): Likewise.
	(init_final): Don't initialize them.
	(final_start_function): Don't set next_block_index.  Set up
	BLOCK_NUMBER.
	(final_scan_insn): Use BLOCK_NUMBER, not next_block_index.
	* function.h (number_blocks): New function.
	* function.c (get_block_vector): New function.
	(identify_blocks): Use it.
	(reorder_blocks): Set NOTE_BLOCK.
	(number_blocks): New function.
	* tree.def (BLOCK): Add documentation for TREE_ASM_WRITTEN flag.
	* tree.h (BLOCK_NUMBER): New macro.
	(tree_block): Add block_num field.
	* dbxout.c (next_block_number): Remove.
	(dbxout_init): Don't set it.
	(dbxout_block): Only output blocks that have TREE_ASM_WRITTEN
	set.  Use BLOCK_NUMBER, rather than next_block_num, to determine
	block numbers.
	* toplev.c (rest_of_compilation): Always call
	find_loop_tree_blocks.  Fix indentation.
	* dwarf2out.c (next_block_number): Remove.
	(gen_lexical_block_die): Use BLOCK_NUMBER, not next_block_number,
	to determine block numbers.
	(gen_inlined_subroutine_die): Likewise.
	(gen_block_die): Only output blocks that have TREE_ASM_WRITTEN set.
	(decls_for_scope): Don't increment next_block_number.
	* dwarfout.c (next_block_number): Remove.
	(output_lexical_block_die): Use BLOCK_NUMBER, not next_block_number,
	to determine block numbers.
	(output_inlined_subroutine_die): Likewise.
	(output_block): Only output blocks that have TREE_ASM_WRITTEN set.
	(output_decls_for_scope): Don't increment next_block_number.
	* sdbout.c (next_block_number): Remove.
	(sdbout_block): Use BLOCK_NUMBER.
	(sdbout_begin_block): Simplify.
	* xcoffout.c (next_block_number): Remove.
	(xcoffout_block): Use BLOCK_NUMBER, not next_block_number.
	(xcoffout_begin_block): Don't set next_block_number.
	(xcoffout_begin_function): Likewise. Use BLOCK_NUMBER, not
	next_block_number.

From-SVN: r32228
2000-02-28 09:51:42 +00:00
Jeff Law
8181bf427b Daily bump.
From-SVN: r32227
2000-02-28 01:45:06 -07:00
Tom Tromey
a51c1a1a0a noclass.c: New file.
* libjava.jni/noclass.c: New file.
	* libjava.jni/noclass.out: New file.
	* libjava.jni/noclass.java: New file.

From-SVN: r32226
2000-02-27 21:42:40 +00:00
Richard Kenner
fed3cef0db builtins.c (c_strlen): Use size_diffop and return ssizetype value.
* builtins.c (c_strlen): Use size_diffop and return ssizetype value.
	(expand_builtin_strcpy): Pass correct type to size_binop.
	(expand_builtin_strcmp): Likewise.
	Clean up conditional structure.
	* c-decl.c (init_decl_processing): Don't call set_sizetype twice.
	(complete_array_type): Don't use size_binop for MAXINDEX.
	* c-typeck.c (c_sizeof): Use size_one_node and TYPE_SIZE_UNIT.
	(c_sizeof_nowarn, c_size_in_bytes): Likewise.
	(c_alignof): Use size_one_node.
	(build_unary_op): Pass arg of proper type to size_binop.
	(really_start_incremental_init, push_init_level): Use sizetype for
	constructor{,_bit,_unfilled}_index.
	(pop_init_label, output_init_element): Likewise.
	(output_pending_init_elements, process_init_element): Likewise.
	* calls.c (compute_argument_block_size): Field VAR is ssizetype.
	* expr.c (store_expr): Use size_int.
	(store_constructor): Use proper types for size_binop args.
	(get_inner_reference, expand_expr, case ARRAY_REF): Likewise.
	(expand_expr_unaligned): Likewise.
	(string_contant): Return object of sizetype.
	* expr.h (SUB_PARM_SIZE): Call size_diffop and pass proper types.
	(ARGS_SIZE_RTX): Call ARGS_SIZE_TREE.
	(ARGS_SIZE_TREE): Pass proper types to size_binop.
	* fold-const.c (int_const_binop): Refine when size_int is called.
	(fold_convert): Likewise.
	(size_int_wide): Rework to take KIND as arg, only take low order
	bits, handle new sizetype_tab datatype, and chain entries in
	size_table.
	(size_int_type_wide): New function.
	(size_binop): Validate types of arguments.
	(ssize_binop): Deleted.
	(size_diffop): New function.
	(extract_muldiv): Only fold division into multiplication for sizetypes.
	* function.c (assign_parms): Use size_diffop and make sure
	VAR field is of ssizetype; also pass proper type to size_binop.
	(locate_and_pad_parm, pad_to_arg_alignment): Likewise.
	(round_down): Deleted from here.
	* store-layout.c (sizetype_tab): Now an array.
	(sizetype_set, early_root_list): New variables.
	(variable_size): Use size_one_node.
	(round_up): Pass proper type to size_binop.
	(round_down): Moved to here and corrected as above.
	(layout_record): Pass proper arg types to size_binop.
	(layout_type): Likewise.
	If sizetype_set is zero, record the type just laid out.
	(make_unsigned_type): Don't call set_sizetype;
	(make_signed_type): Likewise; also, call fixup_signed_type.
	(initialize_sizetypes): New function.
	(set_sizetype): Make copy of types, set TYPE_IS_SIZETYPE, and
	set name of bitsizetype to "bit_size_type".
	Fix up type of sizes of all types made before call.
	* tm.texi (ROUND_TYPE_SIZE_UNIT): New macro.
	* tree.c (fix_sizetype): Deleted.
	(build_common_tree_nodes): Call initialize_sizetypes.
	(build_common_tree_nodes_2): Don't call fix_sizetype.
	* tree.h (TYPE_IS_SIZETYPE): New macro.
	(initialize_sizetype): New declaration.
	(enum size_type_kind): New type.
	(struct sizetype_tab): Deleted.
	(sizetype_tab): Now array; adjust sizetype macros.
	(size_diffop, size_int_type_wide): New functions.
	(size_int_wide): Change number of args and type; access macros changed.
	(ssize_int, sbitsize_int): New macros.
	* config/i960/i960.h (ROUND_TYPE_SIZE): Use size_int.
	(ROUND_TYPE_SIZE_UNIT): New macro.
	* ch/actions.c (chill_convert_for_assignment): Don't use size_binop
	for things that aren't sizes.
	(expand_varying_length_assignment): Likewise.
	* ch/convert.c (digest_array_tuple, convert): Likewise.
	* ch/typeck.c (build_chill_slice, smash_dummy_type): Likewise.
	(build_chill_slice_with_range): Likewise.
	(build_chill_slice_with_length): Likewise.
	(build_array_from_set): Adjust types for size_binop.
	* ch/expr.c (build_concat_expr, build_chill_repetition_op): Likewise.
	(build_chill_sizeof): Use TYPE_SIZE_UNIT.
	* ch/tree.c (build_string_type): Pass proper type to size_binop.
	* cp/class.c (dfs_build_vtable_offset_vtbl_entries): Don't use
	size_binop on things that are not sizes; ssize_binop deleted.
	Call size_diffop when appropriate.
	(dfs_build_vcall_offset_vtbl_entries): Likewise.
	(build_primary_vtable, build_secondary_vtable): Likewise.
	(dfs_set_offset_for_unshared_vbases, dfs_modify_vtables): Likewise.
	Variable I is HOST_WIDE_INT.
	(get_vfield_offset): Pass proper types to size_binop.
	(size_extra_vtbl_entries, layout_virtual_bases): Likewise.
	(finish_struct_1): Likewise.
	(skip_rtti_stuff): Arg N is now pointer to signed.
	(layout_class_type): Use size_zero_node.
	* cp/cp-tree.h (skip_rtti_stuff): Arg N is pointer to signed.
	* cp/cvt.c (cp_convert_to_pointer): Pass proper types to size_binop.
	* cp/decl.c (complete_arry_type): Pass proper types to size_binop.
	(xref_basetypes): BINFO_OFFSET is sizetype.
	* cp/error.c (dump_expr): Don't use size_binop non-sizes.
	* cp/expr.c (cplus_expand_constant): Pass proper types to size_binop.
	* cp/init.c (construct_virtual_bases): Fix type error.
	(build_vec_delete_1): Pass proper type to size_binop and don't
	fold result.
	* cp/lex.c (cp_make_lang_type): BINFO_OFFSET is sizetype.
	* cp/rtti.c (get_base_offset): Pass proper type to size_binop.
	* cp/search.c (dfs_find_vbases): Fix type error.
	(expand_upcast_fixups): Arg to skip_rtti_stuff is pointer to signed.
	(dfs_get_vbase_types): BINFO_OFFSET is sizetype.
	* cp/tree.c (debug_binfo): Variable N is signed.
	Use HOST_WIDE_INT_PRINT_DEC.
	* cp/typeck.c (comptypes): sizetype is same as equivalent integer type.
	(c_sizeof, c_sizeof_nowarn, expr_sizeof): Use TYPE_SIZE_UNIT,
	size_one_node and size_zero_node.
	(c_alignof): Use size_one_node.
	(build_component_addr): Pass proper types to size_binop.
	(expand_ptrmemfunc_cst): Don't use size_binop on non-sizes.
	* f/com.c (ffecom_arrayref_): Convert args to size_binop to proper
	type.
	(ffecom_tree_canonize_ptr_): Don't use size_binop for non-sizes.
	(ffecom_tree_canonize_ref_): Likewise.
	(type_for_mode): Handle TImode.
	* f/ste.c (ffeste_io_dofio_, ffeste_io_douio_): Use TYPE_SIZE_UNIT.
	(ffeste_io_ciclist_): Likewise.
	* java/expr.c (build_java_ret): Pass proper type to size_binop.

From-SVN: r32225
2000-02-27 16:39:40 -05:00
Mark Mitchell
43931371e2 p11116.C
From-SVN: r32224
2000-02-27 21:30:14 +00:00
Jason Merrill
9fe94fd397 update
From-SVN: r32223
2000-02-27 16:19:35 -05:00
Zack Weinberg
69f217566d * c-lex.c (putback_buffer): Make 'buffer' an unsigned char *.
From-SVN: r32222
2000-02-27 20:59:54 +00:00
Zack Weinberg
6b27a7c45b Test for proper handling of 8-bit characters in strings.
Reported by Per Hedbor <per@idonex.se>.

From-SVN: r32221
2000-02-27 17:17:01 +00:00
Richard Kenner
6e38f244c4 gcov-io.h (__fetch_long, [...]): Mark as possibly unused.
* gcov-io.h (__fetch_long, __store_long, __read_long, __write_long):
	Mark as possibly unused.

From-SVN: r32220
2000-02-27 09:24:13 -05:00
Richard Kenner
4e37e57d14 cse.c (cse_insn): Delete dead code involving tablejump.
* cse.c (cse_insn): Delete dead code involving tablejump.
	Pass CODE_LABEL, not LABEL_REF to gen_jump and reset INSN_CODE.

From-SVN: r32219
2000-02-27 09:06:15 -05:00
Richard Kenner
b8d12d7997 * Makefile.in (libcpp.a): Start by deleting it.
From-SVN: r32218
2000-02-27 07:37:56 -05:00
Bryce McKinlay
91da35dbf2 File.java (File(String, String)): For dirPath, treat an empty String the same as `null'.
2000-02-27  Bryce McKinlay  <bryce@albatross.co.nz>

       * java/io/File.java (File(String, String)): For dirPath, treat an
       empty String the same as `null'.

From-SVN: r32217
2000-02-27 10:43:47 +00:00
Jeff Law
5d112ff366 Daily bump.
From-SVN: r32216
2000-02-27 01:45:07 -07:00
Alexandre Oliva
656ac11039 cpplib.h (enum file_change_code): Added rename_file.
* cpplib.h (enum file_change_code): Added rename_file.
* cpplib.c (do_line): If a filename is given, set file_change to
rename_file.
(output_line_command): If file_change is rename_file, always
output a # directive with the file name.

From-SVN: r32215
2000-02-27 07:57:29 +00:00
Jason Merrill
6aede56787 update
From-SVN: r32214
2000-02-27 02:00:35 -05:00
Jason Merrill
1ab83276ed update
From-SVN: r32213
2000-02-27 01:54:06 -05:00
Jason Merrill
aa52c1ffad Implement class scope using-declarations for functions.
* class.c (handle_using_decl): Call add_method for used functions.
        Use IDENTIFIER_CLASS_VALUE to check for conflicts.
        (add_method): Used functions are hidden by local functions.
        (check_bases_and_members): Handle using-decls before finalizing
        CLASSTYPE_METHOD_VEC.
        * call.c (add_function_candidate): Add ctype parm; if non-zero,
        override the type of 'this' accordingly.
        (add_template_candidate, add_template_candidate_real): Add ctype parm.
        (convert_class_to_reference, build_user_type_conversion_1,
        build_new_function_call, build_object_call, build_new_op,
        build_new_method_call): Pass ctype parm.

        * search.c (lookup_member): Put rval_binfo, not basetype_path, in
        the baselink.
        * call.c (convert_class_to_reference, build_user_type_conversion_1,
        build_new_function_call, build_object_call, build_new_op,
        build_new_method_call, build_op_delete_call): Don't get basetype_path
        from a baselink.
        * typeck.c (build_component_ref): Likewise.
        * init.c (build_offset_ref): Likewise.
        (resolve_offset_ref): Don't call enforce_access.
        Call build_scoped_ref.
        * typeck2.c (build_scoped_ref): Simplify.  Do nothing if it
        would cause an error or if -pedantic.
        * class.c (alter_access): Lose binfo parm.

From-SVN: r32212
2000-02-27 01:54:04 -05:00
Alexandre Oliva
0172e2bc87 * cpplib.c (do_pragma): Accept #pragma without consecutive token.
From-SVN: r32211
2000-02-27 06:24:27 +00:00
Mark Mitchell
22e92ac3b6 semantics.c (simplify_aggr_init_exprs_p): Don't walk into types.
* semantics.c (simplify_aggr_init_exprs_p): Don't walk into
	types.

From-SVN: r32210
2000-02-27 05:30:00 +00:00
Alfred Minarik
4278955754 rtti.c (get_vmi_pseudo_type_info): Move __vmi_class_type_info pseudo_type_info creation into the std namespace
* rtti.c (get_vmi_pseudo_type_info): Move __vmi_class_type_info
	pseudo_type_info creation into the std namespace

From-SVN: r32209
2000-02-27 02:52:55 +00:00
Mark Mitchell
27d26ee7a7 cp-tree.h (DECL_NEEDED_P): Tweak to correct usage before EOF.
* cp-tree.h (DECL_NEEDED_P): Tweak to correct usage before EOF.
	(import_export_class): Remove declaration.
	* decl2.c (import_export_class): Make it static.
	* dump.c (dequeue_and_dump): Handle PREDECREMENT_EXPR,
	PREINCREMENT_EXPR, POSTDECREMENT_EXPR, POSTINCREMENT_EXPR,
	EXPR_WITH_FILE_LOCATION.
	* lex.c (check_newline): Tweak filename/lineno setting.
	* semantics.c (begin_while_stmt): Fix typo in comment.

From-SVN: r32208
2000-02-27 02:46:57 +00:00
Mark Mitchell
a8f8d1cce5 integrate.c (copy_decl_for_inlining): Preserve TREE_ADDRESSABLE when copying a PARM_DECL or RESULT_DECL.
* integrate.c (copy_decl_for_inlining): Preserve TREE_ADDRESSABLE
	when copying a PARM_DECL or RESULT_DECL.

From-SVN: r32207
2000-02-27 02:43:43 +00:00
Kaveh R. Ghazi
ad3ffa443a fix-header.c (recognized_function): Also fix prototypes for functions taking "void".
* fix-header.c (recognized_function): Also fix prototypes for
	functions taking "void".

From-SVN: r32206
2000-02-27 02:25:05 +00:00
Richard Kenner
363e6541e3 * lang-options.h (-fmessage-length=): Add missing option.
From-SVN: r32205
2000-02-26 19:57:13 -05:00
Richard Kenner
ca888935f5 * Make-lang.in (CXX_SRCS): Add .h files and sort list.
From-SVN: r32204
2000-02-26 19:52:00 -05:00
Richard Kenner
1c303a1117 Restore missing data
From-SVN: r32203
2000-02-26 19:50:08 -05:00
Richard Kenner
eeafa66d58 attrib5.C: XFAIL on Alpha since no link alias.
* g++.old-deja/g++.ext/attrib5.C: XFAIL on Alpha since no link alias.
	* g++.old-deja/g++.pt/static3.C: Generalize system name for Alpha.

From-SVN: r32202
2000-02-26 19:37:58 -05:00
Geoff Keating
60ef417d84 reload1.c (do_output_reload): Check reg_reloaded_valid before looking at reg_reloaded_contents.
* reload1.c (do_output_reload): Check reg_reloaded_valid before
looking at reg_reloaded_contents.

From-SVN: r32201
2000-02-27 00:23:28 +00:00
Zack Weinberg
f95e46b994 Makefile.in (STMP_FIXINC): New toggle.
* Makefile.in (STMP_FIXINC): New toggle.
	(LIBGCC2_DEPS): Delete all references.
	(stmp-headers): Delete target.  All references either deleted
	or changed to stmp-int-headers.
	(all.cross): Don't depend on stmp-headers or STMP_FIXPROTO.
	(LIBCPP_OBJS): Take out cppalloc.o.
	(cppalloc.o): Delete target.
	(stmp-int-hdrs): Depend on $(STMP_FIXINC).
	(gen-protos, fix-header): Link with libiberty.a.
	* build-make: Don't change FIXINCLUDES.  Override STMP_FIXINC
	to empty.
	* cp/Make-lang.in: Delete refs to LIBGCC2_DEPS.

	* configure.in: Remove refs to strerror.
	* acconfig.h: Take out NEED_DECLARATION_STRERROR.
	* system.h: Take out strerror stanza.

	* cpperror.c (my_strerror): Delete function.
	(cpp_error_from_errno, cpp_notice_from_errno): Use xstrerror.
	* cppmain.c (main): Call xmalloc_set_program_name first thing.
	* cppalloc.c: Delete file.
	* gen-protos.c: Don't provide xrealloc.

	* fixinc/fixincl.c, fixinc/fixlib.c, fixinc/procopen.c: Use
	xstrerror throughout.

From-SVN: r32200
2000-02-27 00:10:15 +00:00
Bruce Korb
42a2c30e1b the undefine_null bypass pattern needs to match for DOS headers
From-SVN: r32199
2000-02-26 23:16:59 +00:00
Jeff Law
4592bdcbb8 Fix copyrights.
From-SVN: r32198
2000-02-26 14:44:42 -07:00
Jeff Law
214be03f82 fix copyrights
From-SVN: r32197
2000-02-26 14:35:46 -07:00
Anthony Green
e1b1511329 Minor clean up and bug fix.
From-SVN: r32196
2000-02-26 21:12:54 +00:00
Jeff Law
701a26019c Fix copyrights.
From-SVN: r32195
2000-02-26 14:05:38 -07:00
Jeff Law
c4777027c6 Fix copyrights
From-SVN: r32194
2000-02-26 14:01:24 -07:00
Jeff Law
cfb857f14b Fix copyright.
From-SVN: r32193
2000-02-26 13:56:03 -07:00
Jeff Law
2ee7f8b328 Fix copyrights.
From-SVN: r32192
2000-02-26 13:55:02 -07:00
Jeff Law
ae1f640f58 Fix copyrights
From-SVN: r32191
2000-02-26 13:49:44 -07:00
Jeff Law
9ddd9abd30 Fix copyrights.
From-SVN: r32190
2000-02-26 13:46:13 -07:00
Jeff Law
7fe5be1866 Fix copyright
From-SVN: r32189
2000-02-26 13:41:07 -07:00
Jeff Law
b92c25ec15 Fix copyright.
From-SVN: r32188
2000-02-26 13:40:23 -07:00
Jeff Law
286ef3df76 Fix copyrights
From-SVN: r32187
2000-02-26 13:34:57 -07:00
Jeff Law
75c6d5148b Fix copyrights
From-SVN: r32186
2000-02-26 13:24:45 -07:00
Jeff Law
d6a8bdff52 Fix copyrights
From-SVN: r32185
2000-02-26 13:16:12 -07:00
Christopher Faylor
1ebe758fd2 Makefile.in (CC_FOR_TARGET): Add new winsup directory structure stuff to -L library search.
* Makefile.in (CC_FOR_TARGET): Add new winsup directory
	structure stuff to -L library search.
	(CXX_FOR_TARGET): Ditto.
	(CROSS_CHECK_MODULES): Fix spelling mistake.

From-SVN: r32184
2000-02-26 13:04:50 -07:00
Geoff Keating
42235f853e elfos.h (ASM_OUTPUT_LABELREF): Don't define.
* config/elfos.h (ASM_OUTPUT_LABELREF): Don't define.  The default
is right for most ELF targets.
* config/ns32k/ns32k.h (ASM_OUTPUT_LABELREF): Don't define.
Let the default file use %U properly.
* config/sh/elf.h (ASM_OUTPUT_LABELREF): Don't define.  Use the
default.

* config/fp-bit.c (pack_d): Properly handle rounding of denormal
numbers.

From-SVN: r32183
2000-02-26 20:03:11 +00:00
Jeff Law
3852e8afcc Fix copyrights
From-SVN: r32182
2000-02-26 13:02:01 -07:00
Richard Kenner
4dbba8765d toplev.c (documented_lang_options): Correct spelling error.
* toplev.c (documented_lang_options): Correct spelling error.
	(decode_d_option, decode_f_option, main): Likewise.

	* toplev.c (print_time): Avoid SIGFPE when all_time is zero.

From-SVN: r32181
2000-02-26 09:39:36 -05:00
Richard Kenner
2eecbd3f08 alpha.h (ASM_OUTPUT_MI_THUNK): Use .set at to tell assembler it is permitted to expand large constants.
* config/alpha/alpha.h (ASM_OUTPUT_MI_THUNK): Use .set at
	to tell assembler it is permitted to expand large constants.

From-SVN: r32180
2000-02-26 09:31:14 -05:00
Jeff Law
af841dbdcc Fix copyrights.
From-SVN: r32179
2000-02-26 07:26:24 -07:00