Commit Graph

29616 Commits

Author SHA1 Message Date
Jason McMullan 9d53e58583 builtins.c (expand_builtin_apply): Don't defer pop during argument setup.
* builtins.c (expand_builtin_apply): Don't defer pop during
        argument setup.

From-SVN: r35382
2000-07-31 09:37:34 -07:00
Herman A.J. ten Brugge e079dcdb68 calls.c (combine_pending_stack_adjustment_and_call): Only use preferred_unit_stack_boundary when it is > 1.
* calls.c (combine_pending_stack_adjustment_and_call): Only use
        preferred_unit_stack_boundary when it is > 1.

From-SVN: r35381
2000-07-31 08:04:41 -06:00
Joseph Myers 980d86e9b4 c-common.c (init_function_format_info): Add C99 format functions in C99 mode.
* c-common.c (init_function_format_info): Add C99 format functions
	in C99 mode.

From-SVN: r35380
2000-07-31 08:00:34 -06:00
Casper Dik 9c08f7e6be * Makefile.in: Remove naked "^L".
From-SVN: r35379
2000-07-31 07:58:51 -06:00
Kazu Hirata 64e3a41371 * local-alloc.c: Fix formatting.
From-SVN: r35378
2000-07-31 07:57:02 -06:00
Joseph Myers bbe65572cd c-decl.c (get_parm_info): Don't treat 'const void'...
* c-decl.c (get_parm_info): Don't treat 'const void', 'volatile
	void' or 'register void' as being the special case of 'void' alone
	in a parameter list.

From-SVN: r35377
2000-07-31 07:11:39 -06:00
Joseph Myers b0c4bfae21 * gcc.dg/noncompile/voidparam-1.c: New test.
From-SVN: r35376
2000-07-31 07:10:37 -06:00
Kazu Hirata b5eaf9ba59 h8300.c (get_shift_alg): Remove the variable alg.
* h8300.c (get_shift_alg): Remove the variable alg.
        (emit_a_shift): Rearrange code to improve readability.

        * h8300.md (movsi_h8300hs): Rearrange code to improve readability.

From-SVN: r35375
2000-07-31 07:08:11 -06:00
Joseph Myers 6fffb55cd7 c-typeck.c (build_c_cast): Change -Wcast-qual pedwarn for discarding qualifiers into a plain warning.
* c-typeck.c (build_c_cast): Change -Wcast-qual pedwarn for
        discarding qualifiers into a plain warning.

From-SVN: r35374
2000-07-31 07:01:23 -06:00
Jeff Law c30d43bf62 Rotate out 6 more months of ChangeLog entries.
From-SVN: r35373
2000-07-31 06:59:37 -06:00
Kazu Hirata 184ef18e6a h8300.h (MODES_TIEABLE_P): Accept a combination of QImode and HImode on all architectures and a...
* h8300.h (MODES_TIEABLE_P): Accept a combination of QImode and
        HImode on all architectures and a combination of HImode and SImode
        on H8/300H and H8/S.

From-SVN: r35372
2000-07-31 06:51:11 -06:00
Kazu Hirata 9492393e34 * h8300.c (split_adds_subs): Rearrange code for conciseness.
From-SVN: r35371
2000-07-31 06:44:28 -06:00
Jan Hubicka 91f9a498c4 i386.md (addsi to lea splitter, [...]): Fix bugs in my last checkin.
* i386.md (addsi to lea splitter, ashlqi3_1_lea): Fix bugs
	in my last checkin.

From-SVN: r35370
2000-07-31 10:30:44 +00:00
Jan Hubicka e7adb6fbb7 recog.c (extract_insn): Set operand_mode according to operand if match_operand is VOIDmode.
* recog.c (extract_insn): Set operand_mode according to
	operand if match_operand is VOIDmode.

From-SVN: r35369
2000-07-31 08:42:26 +00:00
Jan Hubicka 22251f806b * recog.c (validate_replace_rtx_1): Do not abort for (nil) expression.
From-SVN: r35368
2000-07-31 08:37:30 +00:00
Geoff Keating fbddce27a7 c-parse.in (extdefs): Call ggc_collect between external definitions.
* c-parse.in (extdefs): Call ggc_collect between external
definitions.

From-SVN: r35367
2000-07-31 08:28:01 +00:00
Jeff Law c47fef6e2e Daily bump.
From-SVN: r35366
2000-07-31 01:45:07 -06:00
Bryce McKinlay aa18e0c184 Component.java (toString): Implemented.
* java/awt/Component.java (toString): Implemented.
	* java/awt/Container.java (addImpl): Remove FIXME. Only call
	dispatchEvent() to dispatch the event.
	(removeImpl): Ditto.

From-SVN: r35363
2000-07-31 05:11:49 +01:00
Anthony Green b708c42c7a Component.java: Add treeLock object.
2000-07-30  Anthony Green  <green@redhat.com>

        * java/awt/Component.java: Add treeLock object.
        (getTreeLock): Implement.
        (isShowing): Implement.

From-SVN: r35362
2000-07-31 02:33:12 +00:00
Tom Tromey e0a339f785 BorderLayout.java (BorderLayout()): New constructor.
* java/awt/BorderLayout.java (BorderLayout()): New constructor.

	* java/awt/Frame.java (Frame): Pass `null' to Window constructor.

	* java/awt/Window.java (addNotify): Wrote.
	(addWindowListener): Wrote.
	(getLocale): Wrote.
	(getWarningString): Wrote.
	(processEvent): Wrote.
	(processWindowEvent): Wrote.
	(removeWindowListener): Wrote.
	(show): Call validate(), setVisible().
	(toBack): Wrote.
	(toFront): Wrote.

	* java/awt/Toolkit.java (createWindow): Declare.

	* java/awt/Frame.java (addNotify): Use getToolkit to find
	toolkit.

	* java/awt/Component.java (invalidate): Wrote.
	(isValid): Wrote.
	(getToolkit): Wrote.

	* java/awt/Container.java (addContainerListener): Removed
	unnecessary cast.
	(removeContainerListener): Likewise.
	(addImpl): Wrote.
	(add(Component)): Use it.
	(add(String,Component)): Likewise.
	(add(Component,int)): Likewise.
	(add(Component,Object)): Likewise.
	(add(Component,Object,int)): Likewise.
	(doLayout): Wrote.
	(getAlignmentX): Wrote.
	(getAlignmentY): Wrote.
	(getComponentAt): Wrote.
	(getMaximumSize): Wrote.
	(invalidate): Wrote.
	(list(PrintStream,int)): Wrote.
	(list(PrintWriter,int)): Wrote.
	(getMinimumSize): Wrote.
	(getPreferredSize): Wrote.
	(printComponents): Wrote.
	(processContainerEvent): Look at containerListener, not
	componentListener.
	(remove): Added event processing and peer destruction.
	(removeAll): Use remove.
	(removeNotify): Wrote.
	(validate): Wrote.
	(validateTree): Wrote.

	* java/awt/Scrollbar.java (addNotify): Do nothing if peer exists.
	* java/awt/Label.java (addNotify): Do nothing if peer exists.
	* java/awt/Container.java (addNotify): Don't create Container
	peer.
	* java/awt/Button.java (addNotify): Do nothing if peer exists.

From-SVN: r35361
2000-07-31 02:03:51 +00:00
Mark Mitchell 911a71a729 Allow indirect primary bases.
* cp-tree.h (struct lang_type): Remove vfield_parent.  Add
	primary_base.
	(CLASSTYPE_VFIELD_PARENT): Remove.
	(CLASSTYPE_PRIMARY_BINFO): Reimplement.
	(BINFO_PRIMARY_BINFO): Remove.
	(CLASSTYPE_HAS_PRIMARY_BASE_P): Reimplement.
	(BINFO_VBASE_PRIMARY_P): Likewise.
	(BINFO_PRIMARY_BASE_OF): New macro.
	(BINFO_INDIRECT_PRIMARY_P): Likewise.
	(get_primary_binfo): New function.
	* decl.c (lang_mark_tree): Make lang_type::primary_base.
	* class.c (vcall_offset_data_s): Rename to ...
	(vtbl_init_data_s): ... this.  Rename primary_p to primary_vtbl_p,
	and add ctor_vtbl_p.
	(get_derived_offset): Use get_primary_binfo.
	(dfs_mark_primary_bases): Adjust handling of virtual primary
	bases.
	(mark_primary_bases): Likewise.
	(set_primary_base): Take a binfo, not an integer, as a
	representation of the primary base.
	(indirect_primary_base_p): Remove.
	(determine_primary_base): Adjust for indirect primary bases.
	(dfs_find_final_overrider): Fix typo in coment.
	(update_vtable_entry_for_fn): Use get_primary_binfo.
	(layout_nonempty_base_or_field): Tweak.
	(build_base_fields): Adjust for new primary base semantics.
	(dfs_propagate_binfo_offsets): Remove.
	(propagate_binfo_offsets): Rewrite.
	(dfs_set_offset_for_shared_vbases): Remove.
	(layout_virtual_bases): Don't use it.
	(layout_class_type): Set CLASSTYPE_SIZE correctly under the new
	ABI.
	(finish_struct_1): Set CLASSTYPE_PRIMARY_BINFO, not
	CLASSTYPE_VFIELD_PARENT.
	(dfs_get_primary_binfo): New function.
	(get_primary_binfo): Likewise.
	(dump_class_hierarchy_r): Tweak printing of primary bases.
	(build_vtbl_initializer): Fix typo in comments.  Use
	vtbl_init_data.
	(build_vcall_and_vbase_vtbl_entries): Likewise.
	(build_vbaes_offset_vtbl_entries): Likewise.
	(dfs_build_vcall_offset_vtbl_entries): Adjust setting of
	BV_VCALL_INDEX to handle indirect primary bases.
	(build_vcall_offset_vtbl_entries): Use vtbl_init_data.
	(build_rtti_vtbl_entries): Likewise.
	* search.c (get_shared_vbase_if_not_primary): Tweak.
	(find_vbase_instance): Likewise.
	(binfo_for_vtable): Simplify.
	* tree.c (unshare_base_binfos): Clear BINFO_PRIMARY_BASE_OF.
	(make_binfo): Make it have 11 entries.

From-SVN: r35360
2000-07-31 00:24:44 +00:00
Jan Hubicka abe24fb317 Fix bug in my last checkin.
From-SVN: r35359
2000-07-31 00:06:48 +00:00
Richard Henderson 5527bf14a5 Makefile.in (OBJS): Add doloop.o.
* Makefile.in (OBJS): Add doloop.o.
	* doloop.c: New file.

	* final.c (insn_current_reference_address): Return 0 before final.
	* flags.h (flag_branch_on_count_reg): Fix typos in commentary.
	* jump.c (any_uncondjump_p): Likewise.
	* loop.c (indirect_jump_in_function): Make static.
	(strength_reduce): Call doloop_optimize.
	(insert_bct, instrument_loop_bct): Remove.
	* loop.h (doloop_optimize): Prototype.
	* recog.c (split_all_insns): Split all INSN_P.
	* toplev.c (flag_branch_on_count_reg): Default on.

	* config/c4x/c4x.c (c4x_optimization_options): Don't set
	flag_branch_on_count_reg.
	* config/i386/i386.c (override_options): Likewise.
	* config/rs6000/rs6000.c (optimization_options): Likewise.

	* config/i386/i386.md (decrement_and_branch_on_count): Remove.
	(doloop_end): New.
	(dbra_ge): Remove, as well as all it's splitters.

	* config/rs6000/rs6000.md (decrement_and_branch_on_count): Remove.
	(doloop_end): New.

	* config/ia64/ia64-protos.h (ar_lc_reg_operand): Declare.
	(ia64_register_move_cost): Declare.
	* config/ia64/ia64.c (ar_lc_reg_operand): New.
	(struct ia64_frame_info): Add ar_size.
	(ia64_compute_frame_size): Set it.
	(save_restore_insns): Save and restore ar.lc.
	(ia64_register_move_cost): New, moved from header file.  Handle
	application registers.
	(REG_AR_PFS, REG_AR_EC): Remove.  Replace with AR_*_REGNUM numbers.
	(emit_insn_group_barriers): Special case doloop_end_internal.
	(ia64_epilogue_uses): Mark ar.lc live at end.
	* config/ia64/ia64.h (AR_CCV_REGNUM, AR_LC_REGNUM): New registers.
	(AR_EC_REGNUM, AR_PFS_REGNUM): New registers.
	(FIRST_PSEUDO_REGISTER): Make room.
	(AR_M_REGNO_P, AR_I_REGNO_P, AR_REGNO_P): New.
	(FIXED_REGISTERS, CALL_USED_REGISTERS): Update.
	(REG_ALLOC_ORDER): Update.
	(HARD_REGNO_MODE_OK): Update.
	(REGISTER_NAMES): Update.
	(enum reg_class): Add AR_M_REGS and AR_I_REGS.
	(REG_CLASS_NAMES, REG_CLASS_CONTENTS): Update.
	(REGNO_REG_CLASS): Update.
	(LEGITIMATE_ADDRESS_DISP): Displacement range is 9 bits, not 10.
	(REGISTER_MOVE_COST): Move out of line.
	(PREDICATE_CODES): Update.
	* config/ia64/ia64.md (movdi patterns): Handle ar register classes.
	(addsi3_plus1_alt, adddi3_plus1_alt): New.
	(shladd_elim splitter): Allow constants in the predicate.
	(doloop_end, doloop_end_internal): New.

From-SVN: r35358
2000-07-30 16:58:03 -07:00
Richard Henderson 1cf0acdd19 c90-digraph-1.c: Don't xfail.
* gcc.dg/c90-digraph-1.c: Don't xfail.
        * gcc.dg/compare2.c (case 10): Xfail.
        * gcc.dg/noncompile/redecl-1.c: Fix expected error message.

From-SVN: r35357
2000-07-30 16:54:59 -07:00
Richard Henderson a4cad54432 genattrtab.c (struct insn_def): Add lineno member.
* genattrtab.c (struct insn_def): Add lineno member.
        (struct insn_ent): Likewise.
        (struct attr_desc): Likewise.
        (struct delay_desc): Likewise.
        (struct function_unit_op): Likewise.
        (struct function_unit): Likewise.
        (check_attr_value): Use message_with_line.
        (check_defs): Likewise.
        (expand_units): Likewise.
        (check_attr_test): Take a lineno argument.
        (gen_attr): Likewise.
        (gen_insn): Likewise.
        (gen_delay): Likewise.
        (gen_unit): Likewise.
        (main): Give it to them.
        (convert_set_attr_alternative): Take an insn_def argument
        instead of num_alt and insn_index.
        (convert_set_attr): Likewise.
        (write_test_expr): Protect INSN_ADDRESSES load
        with INSN_ADDRESSES_SET_P.

From-SVN: r35356
2000-07-30 16:38:26 -07:00
Alex Samuel 722bed0f9c mangle.c (DECL_TEMPLATE_ID_P): Remove.
* mangle.c (DECL_TEMPLATE_ID_P): Remove.
	(CLASSTYEP_TEMPLATE_ID_P): Check template info, and context when
	ascertaining primaryness.
	(G): Remove template_args.
	(decl_is_template_id): New function.
	(write_encoding): Use decl_is_template_id.
	(write_name): Likewise.  Handle type_decls.  Get main variant of
	type decls.
	(write_nested_name): Likewise.
	(write_prefix): Likewise.
	(write_template_prefix): Likewise.
	(write_special_name_constructor): Remove defunct production from
	comment.
	(write_bare_function_type): Remove comment about absent parameter.
	(write_template_template_arg): Add missing grammar production to
	comment.

From-SVN: r35355
2000-07-30 23:37:04 +00:00
Tom Tromey 4e07a9eadb Container.java (remove(int)): Wrote.
* java/awt/Container.java (remove(int)): Wrote.
	(remove(Component)): Wrote.
	(add(Component)): Wrote.
	(add(Component,int)): Wrote.
	(removeAll): Wrote.
	(addNotify): Set our own peer.
	* java/awt/Scrollbar.java (listeners): Changed type.
	(Scrollbar): Don't initialize listeners.
	(addNotify): Wrote.
	(setValue): Call setValues.
	(setMinimum): Likewise.
	(setMaxPriority): Likewise.
	(setVisibleAmount): Likewise.
	(setValues): Wrote.
	(setUnitIncrement): Forward to peer.
	(setLineIncrement): Call setUnitIncrement.
	(setPageIncrement): Call setBlockIncrement.
	(setBlockIncrement): Forward to peer.
	(addAdjustmentListener): Rewrote.
	(removeAdjustmentListener): Rewrote.
	(processAdjustmentEvent): Rewrote.
	(paramString): Wrote.
	* Makefile.in: Rebuilt.
	* Makefile.am (awt_java_source_files): Added Button.java.
	* java/awt/Button.java: New file.
	* java/awt/Toolkit.java (createLabel): Declare.
	(createButton): Likewise.
	(createScrollbar): Likewise.
	(createContainer): Likewise.
	* java/awt/Label.java (addNotify): Wrote.
	(setAlignment): Call setAlignment in the peer.
	(setText): Call setText in the peer.

From-SVN: r35354
2000-07-30 23:19:57 +00:00
Richard Henderson 3a8c5c77d5 * flow.c (init_propagate_block_info): Use pc_set.
From-SVN: r35353
2000-07-30 16:05:52 -07:00
Anthony Green 9145715ca3 Test case for gcj/295.
From-SVN: r35352
2000-07-30 21:50:24 +00:00
Jan Hubicka 587870645c * i386.md (*lea_general_[123]) New insns and splits.
(addsi3 to lea splitter): Handle other modes too.
	(shlsi3 to lea splitter): Likewise.
	(addhi_1_lea, shlhi_1_lea): New patterns.
	(addhi_1, shlhi_1): Conditionize by PARTIAL_REG_STALL.

From-SVN: r35351
2000-07-30 18:59:56 +00:00
Jan Hubicka 8acb2f2414 recog.c (general_operand, [...]): Accept any mode for VOIDmode CONSTANT_P operands.
* recog.c (general_operand, nonimmediate_operand): Accept
	any mode for VOIDmode CONSTANT_P operands.

From-SVN: r35350
2000-07-30 18:53:33 +00:00
Jan Hubicka e251e2a27f gcse.c (try_replace_reg): Use validate_replace_rtx_subexp instead of replace_rtx.
* gcse.c (try_replace_reg): Use validate_replace_rtx_subexp
	instead of replace_rtx.
	* recog.c (validate_replace_rtx_subexp): New function.
	* recog.h (validate_replace_rtx_subexp): Declare.

From-SVN: r35349
2000-07-30 18:44:13 +00:00
Jan Hubicka e8dc6d5074 combine.c (simplify_set, [...]): Use full mask instead of GET_MODE_MASK (mode) as force_to_mode argument.
* combine.c (simplify_set, make_extraction, make_compound_operation
	make_field_assignment): Use full mask instead of GET_MODE_MASK (mode)
	as force_to_mode argument.

From-SVN: r35348
2000-07-30 18:40:12 +00:00
Jan Hubicka 4921989511 * combine.c (if_then_else_cond): Be sure that mode fits in HOST_WIDE_INT
From-SVN: r35347
2000-07-30 18:35:53 +00:00
Jan Hubicka 25af74a0a7 combine.c (record_promoted_value): Allow bitsize of mode to be equivalent to HOST_BITS_PER_WISE_INT.
* combine.c (record_promoted_value):  Allow bitsize of mode
	to be equivalent to HOST_BITS_PER_WISE_INT.

From-SVN: r35346
2000-07-30 18:30:05 +00:00
Jan Hubicka dbab7b72b5 function.c (assign_stack_local_1, [...]): Do not call gen_mode_alignment when mode is BLKmode.
* function.c (assign_stack_local_1, assign_stack_temp_for_type):
	Do not call gen_mode_alignment when mode is BLKmode.

From-SVN: r35345
2000-07-30 18:26:46 +00:00
Jan Hubicka 0ca90ba6b4 * loop.c (express_from_1): Fix call of simplify_gen_binary.
From-SVN: r35344
2000-07-30 18:23:54 +00:00
Jan Hubicka 47b1e19b64 simplify-rtx.c (simplify_relational_operation): Verify that mode == VOIDmode implies both operands to be VOIDmode.
* simplify-rtx.c (simplify_relational_operation): Verify that mode ==
	VOIDmode implies both operands to be VOIDmode.
	(simplify_ternary_operation): Compute properly the mode of comparison.
	* combine.c (combine_simplify_rtx): Likewise.

From-SVN: r35343
2000-07-30 18:13:10 +00:00
Michael Hayes c34d53740a basic-block.h (struct loops): New field rc_order.
* basic-block.h (struct loops): New field rc_order.
	* flow.c (flow_loops_cfg_dump): Dump rc_order if computed.
	(flow_loops_free): Free rc_order.
	(flow_depth_first_order_compute): New parameter rc_order.
	(flow_loops_find): Allocate rc_order and swap usage with
 	dfs_order.

From-SVN: r35342
2000-07-30 10:35:03 +00:00
Herman A.J. ten Brugge 52695ce05b c4x.md (set_ldp_prologue): Add for RTL prologue/epilogue.
* config/c4x/c4x.md (set_ldp_prologue): Add for RTL prologue/epilogue.
	(push_st, push_dp, pop_st, pop_dp, popqi_unspec): Likewise.
	(nodb_call, return_from_epilogue): Likewise.
	(return_from_interrupt_epilogue, prologue, epilogue): Likewise.
	* config/c4x/c4x.c (c4x_expand_prologue, c4x_expand_eplilogue): Add.
	* config/c4x/c4x-protos.h (c4x_interrupt_function_p): Add.
	(c4x_expand_prologue, c4x_expand_epilogue): Likewise.
	(c4x_valid_type_attribute_p): Likewise.
	* config/c4x/c4x.h (FUNCTION_PROLOGUE, FUNCTION_EPILOGUE): Delete.
	(FUNCTION_BLOCK_PROFILER_EXIT): Convert to emit RTL.

Co-Authored-By: Michael Hayes <m.hayes@elec.canterbury.ac.nz>

From-SVN: r35341
2000-07-30 09:12:46 +00:00
Michael Hayes 8d485e2d2f c4x.c (c4x_emit_move_sequence): Use loadqi_big_constant and loadhi_big_constant if applicable.
* config/c4x/c4x.c (c4x_emit_move_sequence): Use loadqi_big_constant
	and loadhi_big_constant if applicable.
	* config/c4x/c4x.md (loadqi_big_constant, loadhi_big_constant): Tweak
	and add new splitter.s

From-SVN: r35339
2000-07-30 08:42:57 +00:00
Michael Hayes b864825e85 * config/c4x/c4x.c (c4x_rptb_insert): Make more robust.
From-SVN: r35338
2000-07-30 08:29:01 +00:00
Michael Hayes b61ba1ef51 * config/c4x/c4x.h (ASM_FORMAT_PRIVATE_NAME): Output $ in label.
From-SVN: r35337
2000-07-30 08:25:57 +00:00
Michael Hayes 25cd0db18f * config/c4x/c4x.h (IS_XXX_REGNO): Rewrite to avoid unsigned warnings.
From-SVN: r35336
2000-07-30 08:21:43 +00:00
Michael Hayes 0ea1f6b69f * config/c4x/libgcc.S: (divqf3): Improve accuracy.
From-SVN: r35335
2000-07-30 08:12:12 +00:00
Jeff Law 00c9e66354 Daily bump.
From-SVN: r35334
2000-07-30 01:45:07 -06:00
Ovidiu Predescu fb2a508138 Added to test Objective-C strings.
From-SVN: r35333
2000-07-30 05:45:10 +00:00
Alexandre Oliva d4eb109cb1 configure.in (CC_FOR_TARGET, [...]): Do not override if already set in the environment or in configure.
* configure.in (CC_FOR_TARGET, CHILL_FOR_TARGET, CXX_FOR_TARGET):
Do not override if already set in the environment or in configure.
Don't duplicate $(FLAGS_FOR_TARGET) if it already appears in them.
(FLAGS_FOR_TARGET): Don't use host directories on Canadian crosses.

From-SVN: r35332
2000-07-30 05:35:14 +00:00
Mark Mitchell c09cda19a6 Revert previous checkin.
From-SVN: r35331
2000-07-29 19:45:41 +00:00
Mark Mitchell b3e247b811 Makefile.in: Generate objc parser along with the C parser.
* Makefile.in: Generate objc parser along with the C parser.
        * objc/Make-lang.in:  Remove generation of objc parser.

From-SVN: r35330
2000-07-29 19:33:55 +00:00