Commit Graph

27578 Commits

Author SHA1 Message Date
Andreas Jaeger
460f6b7194 mips.c (expand_block_move): Pass alignment argument to move_by_pieces in bits, not bytes.
2000-04-13  Andreas Jaeger  <aj@suse.de>

	* config/mips/mips.c (expand_block_move): Pass alignment
        argument to move_by_pieces in bits, not bytes.

From-SVN: r33142
2000-04-13 23:44:48 +02:00
Andreas Jaeger
eb24a9dc02 linux.h (CPP_PREDEFINES): Also define __PIC__ and __pic__ for little endian.
2000-04-13  Andreas Jaeger  <aj@suse.de>

	* config/mips/linux.h (CPP_PREDEFINES): Also define __PIC__ and
	__pic__ for little endian.

From-SVN: r33141
2000-04-13 22:00:31 +02:00
Andreas Jaeger
8a44317cbb i386-protos.h: Add prototype for uno_comparison_operator.
2000-04-13  Andreas Jaeger  <aj@suse.de>

	* config/i386/i386-protos.h: Add prototype for
	uno_comparison_operator.

From-SVN: r33140
2000-04-13 19:05:54 +02:00
Andreas Jaeger
eaabe54131 Added myself as requested by Jeff Law.
From-SVN: r33139
2000-04-13 19:03:15 +02:00
Jan Hubicka
2a8f6b90c1 alias.c (nonlocal_reference_p): Take a care for CALL_INSNS's fusage field.
* alias.c (nonlocal_reference_p): Take a care for
	CALL_INSNS's fusage field.
	* calls.c (ECF_PURE): New flag.
	(emit_call_1): Handle ECF_PURE calls.
	(initialize_argument_information): Unset ECF_PURE flag too.
	(precompute_arguments): Precompute for ECF_PURE too.
	(expand_call): Handle ECF_PURE calls too.
	(emit_library_call_value_1): Rename no_queue argument to
	fn_type, accept value of 2 as pure function.
	(emit_library_call_value, emit_library_call): Rename no_queue argument
	to fn_type.
	* optabs.c (prepare_cmp_insn): Pass fn_type 2 to memcmp call.

	* tree.h (DECL_IS_PURE): New macro.
	(struct tree_decl): Add pure_flag.
	* c-common.c (enum attrs): Add attribute "pure".
	(init_attributes): Initialize attribute "pure"
	(decl_attributes): Handle attribute "pure".
	* extend.texi (Attribute "pure"): Document.
	* calls.c (expand_call): Add (mem:BLK (scratch)) to "equal from"
	in pure function.
	(flags_from_decl_or_type): Support attribute "pure".

From-SVN: r33138
2000-04-13 13:59:00 +00:00
Nathan Sidwell
c966901c24 class.c (build_base_field): Reformat comment.
* class.c (build_base_field): Reformat comment.

	* inc/cxxabi.h (stddef.h): Comment inclusion.
	(__base_class_info::__offset): Comment shift.

From-SVN: r33137
2000-04-13 11:14:29 +00:00
Jason Merrill
5eec0563bb cpplex.c (_cpp_lex_token): Handle digraphs.
* cpplex.c (_cpp_lex_token): Handle digraphs.  Don't null-terminate
        the token except for numbers and identifiers.

From-SVN: r33136
2000-04-13 04:26:36 -04:00
Jeff Law
d28ff99006 Daily bump.
From-SVN: r33135
2000-04-13 01:45:08 -06:00
John Wehle
fe577e58d4 i386.c (ix86_expand_binary_operator, [...]): Check no_new_pseudos instead of reload_in_progress and reload_completed.
* i386.c (ix86_expand_binary_operator,
	ix86_expand_unary_operator): Check no_new_pseudos
	instead of reload_in_progress and reload_completed.
	(ix86_split_ashldi, ix86_split_ashrdi,
	ix86_split_lshrdi): Check no_new_pseudos instead
	of reload_completed.

From-SVN: r33134
2000-04-13 04:11:52 +00:00
Jeffrey A Law
4fa48eaefa Jeffrey A Law (law@cygnus.com)
* function.c (purge_addressof): Unshare any shared rtl created by
        purge_addressof and its children.

From-SVN: r33133
2000-04-12 16:47:06 -07:00
Mark Mitchell
aea0083a2d com.h (FFECOM_f2cINTEGER): Avoid using LONG_TYPE_SIZE as a preprocessor constant.
* com.h (FFECOM_f2cINTEGER): Avoid using LONG_TYPE_SIZE as a
	preprocessor constant.
	(FFECOM_f2cLOGICAL): Likewise.
	(FFECOM_f2cLONGINT): Likewise.

From-SVN: r33130
2000-04-12 22:08:32 +00:00
Mark Mitchell
d7bf8ada06 function.c (aggregate_value_p): VOID_TYPE nodes are never aggregates.
* function.c (aggregate_value_p): VOID_TYPE nodes are never
	aggregates.

From-SVN: r33129
2000-04-12 22:07:38 +00:00
Andreas Jaeger
90314e8242 linux.h (SUBTARGET_ASM_SPEC): Use proper flags if not compiling PIC code, add flags for mabi=64.
2000-04-05  Andreas Jaeger  <aj@suse.de>

	* config/mips/linux.h (SUBTARGET_ASM_SPEC): Use proper flags if
	not compiling PIC code, add flags for mabi=64.
	(SUBTARGET_CPP_SIZE_SPEC): New.
	(SUBTARGET_CPP_SPEC): New.
	(CPP_PREDEFINES): Define __PIC__ and __pic__.  PIC code is default
	for MIPS/Linux and lots of code needs these defines.

From-SVN: r33128
2000-04-12 21:38:23 +00:00
Tom Tromey
cc309dd512 natString.cc (intern): Temporarily disable finalizer registration.
* java/lang/natString.cc (intern): Temporarily disable finalizer
	registration.

From-SVN: r33127
2000-04-12 21:17:00 +00:00
Hans-Peter Nilsson
045a1f9d31 * execute/20000412-6.c: New test.
From-SVN: r33126
2000-04-12 20:54:03 +00:00
Hans-Peter Nilsson
12d7e99cdc reorg.c (fill_slots_from_thread): Check side_effects_p when trying the "opposite arithmetic" approach.
* reorg.c (fill_slots_from_thread): Check side_effects_p when
	trying the "opposite arithmetic" approach.

From-SVN: r33125
2000-04-12 20:46:22 +00:00
Tom Tromey
50b99cc8fe natString.cc (unintern): Added `obj' argument.
* java/lang/natString.cc (unintern): Added `obj' argument.
	(intern): Register finalizer for string.
	* java/lang/String.java (unintern): Now static; added obj
	argument.

From-SVN: r33124
2000-04-12 20:45:59 +00:00
J"orn Rennecke
07385c4994 sh.h (STRUCT_VALUE): Just 0 for TARGET_HITACHI.
* sh.h (STRUCT_VALUE): Just 0 for TARGET_HITACHI.
	(struct sh_args): Add new field force_mem.
	(INIT_CUMULATIVE_ARGS): Initialize it.
	(FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Act on it.

From-SVN: r33123
2000-04-12 21:10:19 +01:00
Jeffrey A Law
504f140d09 * gcc.c-torture/execute/20000412-5.c: New test.
From-SVN: r33121
2000-04-12 12:56:18 -06:00
Jeffrey A Law
9c749c66d2 * g77.f-torture/compile/20000412-1.f: New test.
From-SVN: r33120
2000-04-12 11:09:12 -06:00
Jeffrey A Law
380b409b7d * gcc.c-torture/execute/20000412-4.c: New test.
From-SVN: r33119
2000-04-12 10:46:01 -06:00
Jeffrey A Law
270630a209 * gcc.c-torture/compile/20000412-2.c: New test.
From-SVN: r33118
2000-04-12 10:39:54 -06:00
Jeffrey A Law
d0158d40e4 * gcc.c-torture/execute/20000412-3.c: New test.
From-SVN: r33117
2000-04-12 10:35:14 -06:00
Jeffrey A Law
46feb4ab1e * gcc.c-torture/compile/20000412-1.c: New test.
From-SVN: r33116
2000-04-12 10:29:25 -06:00
Jeffrey A Law
2c45f94b58 * gcc.c-torture/execute/20000412-2.c: New test.
From-SVN: r33115
2000-04-12 10:25:29 -06:00
Mark Mitchell
002fe164bc Fix typo
From-SVN: r33114
2000-04-12 16:13:43 +00:00
Mark Mitchell
dbd9f7c932 Fix typo
From-SVN: r33113
2000-04-12 16:12:50 +00:00
Jakub Jelinek
aa7647ee68 * objc/execute/bf-20.m: New test.
From-SVN: r33111
2000-04-12 17:58:38 +02:00
Jakub Jelinek
35f1099824 encoding.c (objc_layout_structure_next_member): Do the whole procedure even for the first member, so that we get correct alignment.
* encoding.c (objc_layout_structure_next_member): Do the whole
	procedure even for the first member, so that we get correct
	alignment.

From-SVN: r33110
2000-04-12 17:55:54 +02:00
Jan Hubicka
5591ee6fee (expand_call): Do not reverse args in "equal from" field.
(emit_library_call_value_1): Emit_libcall_block for const and pure
	function.

From-SVN: r33109
2000-04-12 15:23:02 +00:00
J"orn Rennecke
894a51411a reload1.c (reload_combine): Don't enable optimization for fixed registers when encountering a BARRIER.
* reload1.c (reload_combine): Don't enable optimization for fixed
	registers when encountering a BARRIER.

From-SVN: r33108
2000-04-12 16:04:25 +01:00
Jan Hubicka
8878e9133e builtins.c (expand_builtin_memcmp): Do expansion even with !HAVE_cmpstrsi, do libcall when gen_strcmpsi fails.
* builtins.c (expand_builtin_memcmp): Do expansion even with
	!HAVE_cmpstrsi, do libcall when gen_strcmpsi fails.

From-SVN: r33107
2000-04-12 14:18:56 +00:00
Jan Hubicka
ebcd0b57fa calls.c (expand_call): Do NO_DEFER_POP unconditionally once stack is propertly aligned...
* calls.c (expand_call): Do NO_DEFER_POP unconditionally once
	stack is propertly aligned; add sanity checking for aligned
	stack pointer.
	(expand_library_call_value_1): Add sanity checking for aligned
	stack pointer.

From-SVN: r33106
2000-04-12 13:56:19 +00:00
Catherine Moore
a4d5044f41 calls.c (emit_library_call_value_1): Change 3rd arg to locate_and_pad_parm to disregard the setting of partial.
Wed Apr 12 07:51:54 2000  Catherine Moore  <clm@cygnus.com>

        * calls.c (emit_library_call_value_1): Change 3rd arg to
        locate_and_pad_parm to disregard the setting of partial.

From-SVN: r33105
2000-04-12 09:26:40 -04:00
Richard Kenner
58de89e749 * tree.c (unsave_expr_now_r, unsafe_for_reeval): Properly do TREE_LIST.
From-SVN: r33104
2000-04-12 09:10:42 -04:00
Richard Kenner
c3c6393606 print-rtl.c (print_rtx): For CALL_PLACEHOLDER, output the CALL_INSN from the normal case.
* print-rtl.c (print_rtx): For CALL_PLACEHOLDER, output the
	CALL_INSN from the normal case.

From-SVN: r33103
2000-04-12 08:59:56 -04:00
Richard Kenner
1d81378062 Minor whitespace changed
From-SVN: r33102
2000-04-12 08:34:36 -04:00
Richard Kenner
cc2a3e631d Minor whitespace change
From-SVN: r33101
2000-04-12 08:30:38 -04:00
Jan Hubicka
bdeb029cbc i386.c (x86_sub_esp_4, [...]): New global variables.
* i386.c (x86_sub_esp_4, x86_sub_esp_8, x86_add_esp_4, x86_add_esp_8):
	New global variables.
	(ix86_emit_epilogue_adjustment): Do not attempt to use pop for the
	adjustment.
	* i386.h (x86_sub_esp_4, x86_sub_esp_8, x86_add_esp_4, x86_add_esp_8):
	Declare,
	(TARGET_SUB_ESP_4, TARGET_SUB_ESP_8, TARGET_ADD_ESP_4,
	 TARGET_ADD_ESP_8): New macros.
	* i386.md: Add peep2s to convert esp adjustments to push and pop
	instructions.
	(pushsi_prologue, popsi_epilogue): New patterns.

From-SVN: r33100
2000-04-12 11:22:52 +00:00
Jakub Jelinek
2fc00b18ec * real.c (toe64): Remove stale #endif from the last change.
From-SVN: r33099
2000-04-12 11:01:29 +02:00
Zack Weinberg
ac77596817 Word wrap comment
From-SVN: r33098
2000-04-12 08:01:24 +00:00
Stephen L Moshier
1817104857 Stephen L Moshier <moshier@mediaone.net>
* real.h (MAX_LONG_DOUBLE_TYPE_SIZE): Comment.
        * real.c (toe64): Revert previous change.

From-SVN: r33097
2000-04-12 00:57:37 -07:00
Mark Mitchell
298d6f6099 cp-tree.h (IDENTIFIER_CTOR_OR_DTOR_P): New macro.
* cp-tree.h (IDENTIFIER_CTOR_OR_DTOR_P): New macro.
	(cp_tree_index): Add CPTI_PUSH_EXCEPTION_IDENTIFIER.
	(cp_push_exception_identifier): New macro.
	(DECL_COMPLETE_DESTRUCTOR_P): New macro.
	(DECL_BASE_DESTRUCTOR_P): Likewise.
	(DECL_DELETING_DESTRUCTOR_P): Likewise.
	(get_vtbl_decl_for_binfo): Fix formatting.
	(in_charge_arg_for_name): New macro.
	(maybe_build_cleanup_and_delete): Remove declaration.
	* call.c (build_field_call): Use IDENTIFIER_CTOR_OR_DTOR_P.
	(in_charge_arg_for_name): New function.
	(build_new_method_call): Use it.  Handle cloned destructors.
	(build_clone): Don't make the base constructor virtual.
	Automatically defer generated functions.
	(clone_function_decl): Handle destructors, too.
	(clone_constructors_and_destructors): Likewise.
	(create_vtable_ptr): Don't create a vtable entry for a cloned
	function.
	* decl.c (predefined_identifier): Add ctor_or_dtor_p.
	(initialize_predefined_identifiers): Update appropriately.
	(finish_destructor_body): Simplify.
	(maybe_build_cleanup_and_delete): Remove.
	* except.c (expand_throw): Handle new-ABI destructors.
	* init.c (expand_cleanup_for_base): Use base_dtor_identifier.
	(build_dtor_call): New function.
	(build_delete): Use it.  Simplify.
	* optimize.c (maybe_clone_body): Handle destructors.
	* search.c (lookup_field_queue_p): Use IDENTIFIER_CTOR_OR_DTOR_P.

From-SVN: r33096
2000-04-12 07:48:13 +00:00
Jeff Law
1ba82fb2c4 Daily bump.
From-SVN: r33095
2000-04-12 01:45:07 -06:00
Richard Henderson
7265c4202b * gcc.c-torture/execute/20000412-1.c: Reduce some more.
From-SVN: r33094
2000-04-12 00:42:56 -07:00
Richard Henderson
eb802827f4 * gcc.c-torture/execute/20000412-1.c: New test.
From-SVN: r33093
2000-04-12 00:37:30 -07:00
Jakub Jelinek
bcdb110625 objc-act.c: Include ggc.h.
* objc/objc-act.c: Include ggc.h.
	(objc_tree_index, objc_global_trees): Convert most of the
	static tree variables into a static array with previous names
	as defines.
	(objc_ellipsis_node): New variable.
	(lang_init): Call objc_act_parse_init and c_parse_init.
	Create objc_ellipsis_node.
	(build_selector_translation_table): Use objc_ellipsis_node instead
	of (tree)1.
	(hack_method_prototype): Likewise.
	(get_arg_type_list): Likewise.
	(start_method_def): Likewise.
	(continue_method_def): Likewise.
	(gen_method_decl): Likewise.
	(ggc_mark_imp_list): New function.
	(ggc_mark_hash_table): New function.
	(objc_act_parse_init): New function.
	* objc/objc-act.h (objc_ellipsis_node): Add extern variable.
	* c-parse.in (c_parse_init): For objc add roots of objc specific
	local tree variables.
	* objc/objc-parse.y: Rebuilt.
	* objc/objc-parse.c: Rebuilt.
	(opt_parm_list): Use objc_ellipsis_node instead of (tree)1.

	* Object.m (strlen): Provide prototype on all 64bit platforms,
	not only alpha.
	* sarray.c (memcpy): Likewise.
	* encoding.c (objc_layout_finish_structure): Don't use
	ROUND_TYPE_ALIGN on sparc.

From-SVN: r33092
2000-04-12 09:22:32 +02:00
John Wehle
e8019e47f6 cse.c (delete_trivially_dead_insns): Also delete insns that copy a register to itself where the destination is a...
* cse.c (delete_trivially_dead_insns): Also delete insns
	that copy a register to itself where the destination is
	a strict_low_part.

From-SVN: r33090
2000-04-12 05:03:32 +00:00
Richard Henderson
8e3f90945d flow.c (struct propagate_block_info): Add new_dead, new_live.
* flow.c (struct propagate_block_info): Add new_dead, new_live.
        (propagate_block): Initialize them.  Use them in parallel instead
        of one tmp variable, ie revert much of the 0408 and 0407 functional
        changes, but keep the structural changes.
        (mark_set_regs): Take new_dead from propagate_block_info instead.
        (mark_set_1, mark_set_reg): Likewise.
        (mark_used_regs): Likewise with new_live.
        (mark_used_reg): Likewise.  Revert 0408 change.

From-SVN: r33089
2000-04-11 18:38:15 -07:00
Alexandre Oliva
3460070159 oops, I had goofed in the installation date
From-SVN: r33088
2000-04-12 01:24:05 +00:00