1. 20 Sep, 1999 1 commit
  2. 15 Sep, 1999 1 commit
  3. 12 Sep, 1999 2 commits
  4. 07 Sep, 1999 1 commit
  5. 06 Sep, 1999 1 commit
  6. 31 Aug, 1999 3 commits
    • cse.c (delete_trivially_dead_insns): Do not delete stores to the internal_arg_pointer. · 61c48fbf
              * cse.c (delete_trivially_dead_insns): Do not delete stores to
              the internal_arg_pointer.
      
      From-SVN: r29017
      Jeffrey A Law committed
    • rtl.h (RTL_CHECK1, RTL_CHECK2): New macros which type- and bounds- check RTL… · ef178af3
      rtl.h (RTL_CHECK1, RTL_CHECK2): New macros which type- and bounds- check RTL accesses if --enable-checking.
      
      1999-08-31 12:20 -0700 Zack Weinberg <zack@bitmover.com>
      
      	* rtl.h (RTL_CHECK1, RTL_CHECK2): New macros which type- and
      	bounds- check RTL accesses if --enable-checking.
      	(RTVEC_ELT): Bounds check if --enable-checking.
      	(XWINT, XINT, XSTR, XEXP, XVEC, XMODE, XBITMAP, XTREE,
      	XBBDEF): Use RTL_CHECK1/RTL_CHECK2 as appropriate.
      	(XVECEXP, XVECLEN): Define in terms of XVEC, RTVEC_ELT, and
      	GET_NUM_ELEM.
      	(X0WINT, X0INT, X0STR, X0EXP, X0VEC, X0MODE, X0BITMAP, X0TREE,
      	X0BBDEF, X0ADVFLAGS):  New macros for accessing '0' slots of RTXes.
      
      	(ADDR_DIFF_VEC_FLAGS): Use X0ADVFLAGS.
      	(NOTE_SOURCE_FILE): Use X0STR.
      	(NOTE_BLOCK_NUMBER, NOTE_EH_HANDLER, LABEL_NUSES,
      	MEM_ALIAS_SET): Use X0INT.
      	(NOTE_RANGE_INFO, NOTE_LIVE_INFO, NOTE_BASIC_BLOCK,
      	JUMP_LABEL, LABEL_REFS, LABEL_NEXTREF, CONTAINING_INSN):
      	Use X0EXP.
      	* real.h (CONST_DOUBLE_CHAIN): Use X0EXP.
      	* rtl.c (copy_rtx, copy_most_rtx): Copy '0' slots with X0WINT.
      	(rtl_check_failed_bounds, rtl_check_failed_type1,
      	rtl_check_failed_type2, rtvec_check_failed_bounds): New
      	functions.
      	(fancy_abort): Fix comment.
      
      	* cse.c (canon_hash): Read CONST_DOUBLE data slots with XWINT.
      	(cse_insn): Decrement LABEL_NUSES for jump target before
      	deleting jump insn.
      	* emit-rtl.c (gen_rtx_CONST_DOUBLE): Use X0EXP for slot 1.
      	* final.c (alter_subreg): Compute regno before changing x to
      	REG; set REGNO(x) after changing it.
      	* flow.c (count_basic_blocks): Use XWINT to inspect EH_REGION
      	notes containing CONST_INTs.
      	(delete_eh_regions): Use NOTE_EH_HANDLER.
      	* function.c (put_reg_into_stack): Make reg a MEM before
      	initializing it.
      	(fixup_var_refs_insns):  Save REG_NOTES (insn) in case we
      	delete insn.
      	(gen_mem_addressof): Make reg a MEM before initializing it.
      	* integrate.c (copy_rtx_and_substitute): Copy '0' slots with
      	X0WINT.
      	* local-alloc.c (update_equiv_regs): Zap REG_NOTES before
      	deleting an insn, not after.
      	(block_alloc): Only look at PATTERN(insn) if we have to, and
      	only if it's format class 'i'.
      	* loop.c (check_dbra_loop): Check bl->biv->add_val is a
      	CONST_INT before using its INTVAL.
      	* print-rtl.c (print_rtx): Use X0STR.
      	* regmove.c (fixup_match_1): Don't look at PATTERN of
      	non-class-'i' insn chain elements.
      	* reload.c (loc_mentioned_in_p): Take address of
      	in->fld[1].rtx directly.
      	* reload1.c (reload): Change reg to a MEM before initializing
      	it.
      	* varasm.c (mark_constant_pool): Skip CONST_DOUBLES, which
      	have no names.
      	* config/i386/i386.md (decrement_and_branch_if_zero): Fix typo.
      
      From-SVN: r29008
      Zack Weinberg committed
    • * cse.c: (fold_rtx): Cast to HOST_WIDE_INT in left shift. · 5c45a8ac
      From-SVN: r28993
      Kaveh R. Ghazi committed
  7. 29 Aug, 1999 1 commit
  8. 28 Aug, 1999 1 commit
  9. 25 Aug, 1999 1 commit
    • Warning fixes: · 6a651371
      	* calls.c (emit_call_1): Mark parameter `stack_size' with
      	ATTRIBUTE_UNUSED.
      	(expand_call): Initialize variable `insn'.
      	(emit_library_call): Likewise for variable `high_to_save'.
      	(emit_library_call_value): Likewise.
      	(store_one_arg): Likewise for variables `lower_bound' and
      	`upper_bound'.
      
      	* combine.c (try_combine): Likewise for variables `i2_code_number'
      	and `other_code_number'.
      	(find_split_point): Likewise for variables `pos', `unsignedp' and
      	`inner'.
      	(simplify_if_then_else): Likewise for variables `op' and `c1'.
      	(simplify_and_const_int): Remove unused variable `width'.
      	(merge_outer_ops): Likewise.
      
      	* cse.c (simplify_binary_operation): Cast an INTVAL() to `unsigned
      	HOST_WIDE_INT' when comparing against one.
      	(simplify_relational_operation): Likewise.
      	(cse_insn): Initialize variables `src_eqv_volatile',
      	`src_eqv_in_memory', `src_eqv_in_struct', `src_eqv_hash' and `sets'.
      
      	* final.c (init_final): Constify parameter `filename'.
      	(final_start_function): Mark parameter `optimize' with
      	ATTRIBUTE_UNUSED.
      	(profile_function): Likewise for parameters `first' and `optimize'.
      	(output_source_line): Likewise for parameter `file'.
      
      	* integrate.c (subst_constants): Cast a value to `size_t' when
      	comparing against one.
      	(mark_stores): Initialize variable `mode'.  Cast a value to
      	`size_t' when comparing against one.
      
      	* integrate.h (MAYBE_EXTEND_CONST_EQUIV_VARRAY): Likewise.
      
      	* loop.c (move_movables): Initialize variable `first'.
      	(strength_reduce): Likewise for variable `increment'.
      	(check_dbra_loop): Likewise for variable `comparison_val'.  Cast a
      	value to `size_t' when comparing against one.
      	(load_mems): Initialize variable `end_label'.
      
      	* output.h (init_final): Constify parameter.
      
      	* reload.c (decompose): Initialize variable `base'.
      
      	* reload1.c (reload): Likewise for variable `is_scalar'.
      	(spill_hard_reg): Mark parameter `dumpfile' with ATTRIBUTE_UNUSED.
      	(choose_reload_regs): Initialize variable `mode'.
      	(emit_reload_insns): Likewise for variable `store_insn'.
      	(reload_cse_noop_set_p): Mark parameter `insn' with
      	ATTRIBUTE_UNUSED.
      	(reload_combine): Initialize variable `set'.
      
      	* unroll.c (unroll_loop): Likewise for variable `local_label'.
      	(copy_loop_body): Cast a value to `size_t' when comparing against
      	one.
      
      	* varasm.c (assemble_variable): Initialize variable `size_tree'.
      	(const_hash): Add an `else abort()' in an if-else-if-else sequence.
      	(remove_from_pending_weak_list): Mark parameter `name' with
      	ATTRIBUTE_UNUSED.
      
      From-SVN: r28860
      Kaveh R. Ghazi committed
  10. 24 Aug, 1999 1 commit
  11. 20 Aug, 1999 1 commit
    • rtl.h (rtx_format): Constify a char*. · 6f7d635c
      	* rtl.h (rtx_format): Constify a char*.
      
      	* rtl.c (rtx_format): Likewise.
      	(copy_rtx, copy_most_rtx, read_rtx): Likewise.
      	(init_rtl): Use accessor macro, not `rtx_format'.
      
      	* alias.c (rtx_equal_for_memref_p, find_symbolic_term): Constify a
      	char*.
      
      	* caller-save.c (mark_referenced_regs): Likewise.
      
      	* combine.c (subst, make_compound_operation, known_cond,
      	gen_rtx_combine, update_table_tick, get_last_value_validate,
      	use_crosses_set_p, mark_used_regs_combine, move_deaths): Likewise.
      
      	* cse.c (rtx_cost, mention_regs, canon_hash, exp_equiv_p,
      	refers_to_p, canon_reg, fold_rtx, cse_process_notes,
      	count_reg_usage): Likewise.
      
      	* emit-rtl.c (gen_rtx, copy_rtx_if_shared, reset_used_flags):
      	Likewise.
      
      	* final.c (leaf_renumber_regs_insn): Likewise.
      
      	* flow.c (mark_used_regs, find_use_as_address, dump_flow_info,
      	dump_edge_info, count_reg_references): Likewise.
      
      	* function.c (fixup_var_refs_1, walk_fixup_memory_subreg,
      	fixup_stack_1, purge_addressof_1, instantiate_virtual_regs_1):
      	Likewise.
      
      	* gcse.c (oprs_unchanged_p, hash_expr_1, expr_equiv_p,
      	oprs_not_set_p, expr_killed_p, compute_transp, find_used_regs,
      	add_label_notes): Likewise.
      
      	* genattrtab.c (attr_rtx, attr_copy_rtx, encode_units_mask,
      	clear_struct_flag, count_sub_rtxs, count_alternatives,
      	compares_alternatives_p, contained_in_p, walk_attr_value,
      	write_expr_attr_cache): Likewise.
      
      	* genconfig.c (walk_insn_part): Likewise.
      
      	* genemit.c (max_operand_1, gen_exp): Likewise.
      
      	* genextract.c (walk_rtx): Likewise.
      
      	* genflags.c (num_operands): Likewise.
      
      	* genoutput.c (scan_operands): Likewise.
      
      	* genpeep.c (match_rtx): Likewise.
      
      	* genrecog.c (add_to_sequence): Likewise.
      
      	* haifa-sched.c (may_trap_exp, sched_analyze_2, attach_deaths):
      	Likewise.
      
      	* integrate.c (save_constants, copy_for_inline,
      	copy_rtx_and_substitute, subst_constants, restore_constants):
      	Likewise.
      
      	* jump.c  (mark_jump_label, invert_exp, redirect_exp,
      	rtx_renumbered_equal_p, rtx_equal_for_thread_p): Likewise.
      
      	* local-alloc.c (contains_replace_regs, memref_referenced_p):
      	Likewise.
      
      	* loop.c (record_excess_regs, rtx_equal_for_loop_p,
      	add_label_notes, replace_call_address, count_nonfixed_reads,
      	invariant_p, find_single_use_in_loop, find_mem_givs,
      	find_life_end, maybe_eliminate_biv_1, update_reg_last_use):
      	Likewise.
      
      	* print-rtl.c (reg_names, print_rtx): Likewise.
      
      	* recog.c (validate_replace_rtx_1, find_single_use_1): Likewise.
      
      	* reg-stack.c (stack_regs_mentioned_p, record_label_references,
      	record_reg_life_pat, swap_rtx_condition, goto_block_pat,
      	print_blocks): Likewise.
      
      	* regclass.c (fix_register, record_address_regs,
      	reg_scan_mark_refs): Likewise.
      
      	* regmove.c (stable_but_for_p): Likewise.
      
      	* reload.c (loc_mentioned_in_p, operands_match_p,
      	find_reloads_toplevsubst_reg_equivs, find_reloads_address_1,
      	copy_replacements, refers_to_regno_for_reload_p,
      	refers_to_mem_for_reload_p, find_inc_amount, regno_clobbered_p,
      	reload_when_needed_name, reg_class_names, debug_reload_to_stream):
      	Likewise.
      
      	* reload1.c (eliminate_regs, scan_paradoxical_subregs,
      	delete_address_reloads_1, count_occurrences,
      	reload_cse_mem_conflict_p, reload_combine_note_use,
      	add_auto_inc_notes): Likewise.
      
      	* resource.c (mark_referenced_resources, mark_set_resources):
      	Likewise.
      
      	* rtlanal.c (rtx_unstable_p, rtx_varies_p, rtx_addr_varies_p,
      	reg_mentioned_p, regs_set_between_p, modified_between_p,
      	modified_in_p, refers_to_regno_p, reg_overlap_mentioned_p,
      	rtx_equal_p, volatile_insn_p, volatile_refs_p, side_effects_p,
      	may_trap_p, inequality_comparisons_p, replace_rtx, replace_regs,
      	jmp_uses_reg_or_mem, for_each_rtx, regno_use_in): Likewise.
      
      	* sched.c (sched_analyze_2, attach_deaths): Likewise.
      
      	* stupid.c (stupid_mark_refs): Likewise.
      
      	* unroll.c (remap_split_bivs): Likewise.
      
      	* varasm.c (mark_constants): Likewise.
      
      	* a29k/a29k.c (uses_local_reg_p): Likewise.
      
      	* alpha/alpha.c (summarize_insn): Likewise.
      
      	* arm/arm.c (symbol_mentioned_p, label_mentioned_p,
      	eliminate_lr2ip): Likewise.
      
      	* arm/thumb.c (symbol_mentioned_p, label_mentioned_p): Likewise.
      
      	* i386/i386.c (symbolic_reference_mentioned_p, copy_all_rtx,
      	reg_mentioned_in_mem): Likewise.
      
      	* ns32k/ns32k.c (global_symbolic_reference_mentioned_p,
      	symbolic_reference_mentioned_p): Likewise.
      
      	* romp/romp.c (unsigned_comparisons_p, hash_rtx): Likewise.
      
      	* sh/sh.c (regs_used, mark_use): Likewise.
      
      	* vax/vax.c (vax_rtx_cost): Likewise.
      
      From-SVN: r28784
      Kaveh R. Ghazi committed
  12. 19 Aug, 1999 1 commit
    • rtl.def (NOTE): Change format to "iuu0n". · 8f985ec4
      1999-08-19 14:44 -0700  Zack Weinberg  <zack@bitmover.com>
      
      	* rtl.def (NOTE): Change format to "iuu0n".
      	(ADDR_DIFF_VEC): Change format to "eEee0".
      	(ADDRESSOF): Change format to "eit".
      
      	* rtl.h (rtvec): Make "elem" an array of rtx, not rtunion.
      	(RTVEC_ELT): Change to match.
      	(XVECEXP): Use XVEC and RTVEC_ELT.
      	(INSN_UID, INSN_CODE, CODE_LABEL_NUMBER, NOTE_LINE_NUMBER,
      	ADDRESSOF_REGNO, REGNO, SUBREG_WORD): Use XINT.
      	(PREV_INSN, NEXT_INSN, PATTERN, REG_NOTES,
      	CALL_INSN_FUNCTION_USAGE, SUBREG_REG, SET_SRC, SET_DEST,
      	TRAP_CONDITION, TRAP_CODE): Use XEXP.
      	(INTVAL): Use XWINT.
      	(ADDRESSOF_DECL): Use XTREE.
      	(SET_ADDRESSOF_DECL): Delete.
      	(NOTE_DECL_NAME, NOTE_DECL_CODE, NOTE_DECL_RTL,
      	NOTE_DECL_IDENTIFIER, NOTE_DECL_TYPE): Kill.  These have been
      	ifdefed out since 2.6 at least.
      	(gen_rtvec_vv): Delete prototype.
      
      	* rtl.h (rtvec_alloc): rt->elem is now an array of rtx,
      	not rtunion.
      	(copy_most_rtx): Handle 't' format letter.
      	* emit-rtl.c (gen_rtvec_v): rt_val->elem is an array of rtx.
      	(gen_rtvec_vv): Delete function.  All callers changed to use
      	gen_rtvec_v instead.
      	* print-rtl.c (print_rtx): Move special casing of NOTEs to
      	the '0' format letter.
      
      	* function.c (gen_mem_addressof): Don't use
      	SET_ADDRESSOF_DECL; provide `decl' to gen_rtx_ADDRESSOF
      	instead.
      	* integrate.c (copy_rtx_and_substitute): Likewise.
      	Copy 't' slots with XTREE.
      	(subst_constants): Treat 't' slots like '[swi]' slots.
      	* cse.c (canon_hash, exp_equiv_p): Treat 't' slots like	'0' slots.
      	* jump.c (rtx_equal_for_thread_p): Likewise.
      	* rtlanal.c (rtx_equal_p): Likewise.
      	* stmt.c (expand_end_case): gen_rtx_ADDR_DIFF_VEC now takes
      	only four arguments.
      	* gengenrtl.c (type_from_format): Provide correct types for
      	'b' and 't' slots.
      
      
      	* tree.h [ENABLE_CHECKING] (TREE_CHECK, TREE_CLASS_CHECK):
      	If a recent gcc is in use (always in stage2 and beyond), use
      	statement expressions, so we don't make a function call unless
      	the check fails.  Evaluate arguments exactly once.
      	(CHAIN_CHECK, DO_CHECK, DO_CHECK1, TREE_CHECK1,
      	TREE_CLASS_CHECK1, TYPE_CHECK1, DECL_CHECK1, CST_CHECK1):
      	Delete.
      	(CST_OR_CONSTRUCTOR_CHECK, EXPR_CHECK): Redefine such that
      	they evaluate their arguments exactly once, irrespective of
      	the compiler in use.
      
      	* tree.c [ENABLE_CHECKING]: Define whichever set of functions
      	is used by the currently-enabled check macros.  This is:
      	(tree_check_failed, tree_class_check_failed): For gcc.
      	(tree_check, tree_class_check, cst_or_constructor_check,
      	expr_check): For other compilers.
      
      	* gencheck.c: Do not define any *_CHECK1 macros.
      
      From-SVN: r28769
      Zack Weinberg committed
  13. 18 Aug, 1999 1 commit
    • cse.c (cse_insn): Call never_reached_warning when a jump is changed to be unconditional. · 312f6255
      * cse.c (cse_insn): Call never_reached_warning when a jump is
      changed to be unconditional.
      * flags.h: Declare warn_notreached.
      * flow.c (delete_block): Call never_reached_warning when
      a block is deleted.
      * jump.c (delete_barrier_successors): Call never_reached_warning
      when we delete everything after a BARRIER.
      (never_reached_warning): New function.
      * rtl.h: Declare never_reached_warning.
      * toplev.c (warn_notreached): New variable.
      (lang_independent_options): Set warn_notreached
      when -Wunreachable-code.
      (compile_file): We need line numbers for -Wunreachable-code.
      
      Also modify documentation to suit.
      
      From-SVN: r28747
      Geoff Keating committed
  14. 09 Aug, 1999 1 commit
    • Include function.h in most files. · 49ad7cfa
      Include function.h in most files.  Remove most of the global variables
      duplicated in function.h.  Add accessor macros for them which access
      current_function.  Delete INLINE_HEADER rtx and related code, replace
      with code using struct function to store inlining related data.
      
      From-SVN: r28626
      Bernd Schmidt committed
  15. 03 Aug, 1999 1 commit
  16. 02 Aug, 1999 1 commit
  17. 23 Jul, 1999 1 commit
    • explow.c (trunc_int_for_mode): New function. · 7e4ce834
              * explow.c (trunc_int_for_mode): New function.
              (plus_constant_wide): Use it.
              * combine.c (simplify_and_const_int): Likewise.
              (merge_outer_ops): Likewise.
              (simplify_shift_const): Likewise.
              * cse.c (simplify_unary_operation): Likewise.
              (simplify_binary_operation): Likewise.
              * emit-rtl.c (operand_subword): Likewise.
              * rtl.h: Declare it.
      
      From-SVN: r28222
      Richard Henderson committed
  18. 16 Jun, 1999 1 commit
  19. 17 May, 1999 1 commit
  20. 09 Apr, 1999 1 commit
    • cse.c (flush_hash_table): New function. · 01e752d3
              * cse.c (flush_hash_table): New function.
              (cse_insn): Flush the hash table when we encounter a volatile asm.
              (cse_basic_block): Use flush_hash_table instead of doing it
              inline.
              * reload1.c (reload_cse_regs_1): Flush known register values if
              we encounter a volatile asm.
      
      From-SVN: r26304
      Jeffrey A Law committed
  21. 30 Mar, 1999 1 commit
    • alias.c (alias_set_compare): Remove. · 30f72379
      	* alias.c (alias_set_compare): Remove.
      	(record_alias_subset): Use splay_tree_compare_ints instaed of
      	alias_set_compare.
      	(init_alias_once): Likewise.
      	* cse.c: Include splay-tree.h.
      	(reg_qty): Remove.
      	(reg_tick): Likewise.
      	(reg_table): Likewise.
      	(cse_reg_info): New structure.
      	(cse_reg_info_free_list): New variable.
      	(cse_reg_info_tree): Likewise.
      	(cached_regno): Likewise.
      	(cached_cse_reg_info): Likewise.
      	(all_minus_one): Remove.
      	(consec_ints): Likewise.
      	(GET_CSE_REG_INFO): New macro.
      	(REG_TICK): Likewise.  Use throughout instead of reg_tick.
      	(REG_IN_TABLE): Likewise.  Use throughout instead of reg_in_table.
      	(REG_QTY): Likewise.  Use throughout instead of reg_qty.
      	(get_cse_reg_info): New function.
      	(free_cse_reg_info): Likewise.
      	(new_basic_block): Reinitialize cse_reg_info_tree instead of
      	reg_tick, all_minus_one, and consec_ints.
      	* Makefile.in (cse.o): Depend on splay-tree.h
      	* splay-tree.h (splay_tree_compare_ints): Declare.
      	* splay-tree.c (splay_tree_compare_ints): Define.
      
      From-SVN: r26069
      Mark Mitchell committed
  22. 22 Mar, 1999 1 commit
  23. 14 Mar, 1999 1 commit
    • cse.c (check_fold_consts): New static function. · 1a87eea2
              * cse.c (check_fold_consts): New static function.
              (cfc_args): New struct.
              (simplify_relational_operation): Use them in call to
              `do_float_handler'.
              * toplev.c (do_float_handler): New function to wrap calls to
              setjmp/set_float_handler.
              * toplev.h (do_float_handler): Add extern prototype.
              * tree.c (build_real_from_int_cst_1): New static function.
              (brfic_args): New struct.
              (build_real_from_int_cst): Use them in call to
              `do_float_handler'.
      
      From-SVN: r25768
      Kaveh R. Ghazi committed
  24. 07 Mar, 1999 1 commit
  25. 02 Mar, 1999 1 commit
  26. 25 Feb, 1999 2 commits
  27. 22 Feb, 1999 1 commit
    • cse.c (dump_class): New function. · a4c6502a
      	* cse.c (dump_class): New function.
      	(invalidate_memory): Fix typo in comment.
      	* function.c (temp_slot): Add an alias set field.
      	(assign_stack_temp): Only reuse slots if they will have the
      	same alias set as before.
      	(combine_temp_slots): Don't combine if -fstrict-aliasing;
      	that's unsafe.
      	* rtl.c (copy_rtx): Copy all the flags (in particular,
      	MEM_SCALAR_P).
      
      From-SVN: r25372
      Mark Mitchell committed
  28. 27 Jan, 1999 1 commit
  29. 21 Jan, 1999 1 commit
    • cse.c (fold_rtx): Revert 29 Dec change. · ee5332b8
              * cse.c (fold_rtx): Revert 29 Dec change.
              (cse_insn): Revert 12 Jan change.
              * expr.c (expand_builtin): Don't emit CONST around CONSTANT_P_RTX.
              * regclass.c (reg_scan_mark_refs): Revert 29 Dec change.
              * rtl.def: Likewise.
              * rtl.h (CONSTANT_P): Likewise.
              * expr.c (emit_move_insn): Never try to flush CONSTANT_P_RTX
              to memory.
              * recog.c (immediate_operand): Accept CONSTANT_P_RTX.
              * alpha.c (input_operand): Likewise.
              * c4x.c (const_operand): Likewise.
              * explow.c (allocate_dynamic_stack_space): Use register_operand
              instead of arith_operand, which does not exist.
              * 1750a.h: Fix comment closure.
              * a29k.c (a29k_set_memflags): Fix typo in 19 Jan change.
              * arc.md (one_cmplsi2_set_cc_insn): Fix set mode mismatch.
              * arm.h (TARGET_SWITCHES): Fix typo.
              * i370.md (anon mult and div patterns): Fix set mode mismatch.
              * i860.c (output_delayed_branch): Fix operands to constrain_operands.
              (output_delay_insn): Likewise.
              * m88k.md (anon rotate insns): Fix set mode mismatch.
              (anon BLKmode moves): Commonize and fix set mode mismatches.
              * ns32k.md (udivmoddi[shq]i4_internal): Fix mode mismatch.
              * romp.md (movdf): Fix typo.
      
      From-SVN: r24796
      Richard Henderson committed
  30. 19 Jan, 1999 2 commits
    • Update copyrights · 747215f1
      From-SVN: r24765
      Mark Mitchell committed
    • rtl.h (rtx_def): Update documentation. · c6df88cb
      	* rtl.h (rtx_def): Update documentation.
      	(MEM_IN_STRUCT_P): Likewise.
      	(MEM_SCALAR_P): New macro.
      	(MEM_COPY_ATTRIBUTES): Likewise.
      	(MEM_SET_IN_STRUCT_P): Likewise.
      	* rtl.texi (MEM_SCALAR_P): Document.
      	* alias.c (canon_rtx): Use MEM_COPY_ATTRIBUTES.
      	(fixed_scalar_and_varying_struct_p): New function.  Use
      	MEM_SCALAR_P rather than !MEM_IN_STRUCT_P.
      	(aliases_everything_p): Likewise.
      	(true_dependence): Use them.
      	(write_dependence_p): New function, containing code common to
      	anti_dependence and output_dependence.
      	(anti_dependence): Use it.
      	(output_dependence): Likewise.
      	* calls.c (save_fixed_argument_area): Don't clear
      	MEM_IN_STRUCT_P.
      	(expand_call): Use MEM_SET_IN_STRUCT_P.
      	(emit_library_call): Don't clear MEM_IN_STRUCT_P.
      	(emit_library_call_value): Likewise.
      	(store_one_arg): Use MEM_SET_IN_STRUCT_P.
      	* combine.c (simplify_rtx): Use MEM_COPY_ATTRIBUTES.
      	(make_extraction): Likewise.
      	(simplify_shift_const): Likewise.
      	(gen_lowpart_for_combine): Likewise.
      	* cse.c (gen_lowpart_if_possible): Use MEM_COPY_ATTRIBUTES.
      	* emit-rtl.c (operand_subword): Likewise.
      	(change_address): Likewise.
      	* explow.c (stabilize): Use MEM_COPY_ATTRIBUTES.
      	* expr.c (protect_from_queue): Use MEM_COPY_ATTRIBUTES.
      	(emit_group_store): Use MEM_SET_IN_STRUCT_P.
      	(copy_blkmode_from_reg): Likewise.
      	(store_field): Likewise.
      	(expand_expr): Remove bogus guesswork setting MEM_IN_STRUCT_P
      	heuristically.  Use MEM_SET_IN_STRUCT_P.
      	(get_memory_rtx): Likewise.
      	* final.c (alter_subreg): Use MEM_COPY_ATTRIBUTES.
      	* function.c (assign_stack_temp): Clear MEM_SCALAR_P and
      	MEM_ALIAS_SET on newly returned MEMs.
      	(assign_temp): Use MEM_SET_IN_STRUCT_P.
      	(put_reg_into_stack): Likewise.
      	(fixup_var_refs1): Use MEM_COPY_ATTRIBUTES.
      	(gen_mem_addressof): Use MEM_SET_IN_STRUCT_P.
      	(assign_parms): Likewise.
      	(expand_function): Likewise.
      	* integrate.c (expand_inline_function): Likewise.
      	(copy_rtx_and_substitute): Use MEM_COPY_ATTRIBUTES.
      	* loop.c (note_addr_stored): Remove check on MEM_IN_STRUCT_P.
      	* optabs.c (gen_move_insn): Use MEM_COPY_ATTRIBUTES.
      	* print-rtl.c (print_rtx): Print /f for frame_related.
      	* recog.c (validate_replace_rtx_1): Use MEM_COPY_ATTRIBUTES.
      	* reload1.c (reload): Copy MEM_SCALAR_P as well.
      	* stmt.c (expand_decl): Use MEM_SET_IN_STRUCT_P.
      	(expand_anon_union_decl): Use MEM_COPY_ATTRIBUTES.
      	* varasm.c (make_decl_rtl): Use MEM_SET_IN_STRUCT_P.
      	(output_constant_def): Likewise.
      	* a29k.c (a29k_set_memflags_1): Take scalar_p.
      	Set MEM_SCALAR_P.
      	(a29k_set_memflags): Use it.
      	* alpha.c (get_aligned_mem): Use MEM_COPY_ATTRIBUTES.
      	* c4x.c (c4x_scan_for_ld): Likewise.
      	* h8300.c (fix_bit_operand): Likewise.
      	* m88k.c (legitimize_address): Likewise.
      	(block_move_loop): Likewise.
      	(block_move_no_loop): Likewise.
      	(block_move_sequence): Likewise.
      	(m88k_builtin_saveregs): Use MEM_SET_IN_STRUCT_P.
      	* mips/abi64.h (SETUP_INCOMING_VARARGS): Likewise.
      	* rs6000.c (expand_block_move_insn): Use MEM_COPY_ATTRIBUTES.
      	* sh.c (sh_builtin_saveregs): Use MEM_SET_IN_STRUCT_P.
      	* arm.h (arm_gen_load_multiple): Take scalar_p.
      	(arm_store_load_multiple): Likewise.
      	* arm.c (arm_gen_load_multiple): Likewise.
      	(arm_gen_store_multiple): Likewise.
      	(arm_gen_movstrqi): Treat MEM_SCALAR_P like MEM_IN_STRUCT_P.
      
      From-SVN: r24759
      Mark Mitchell committed
  31. 12 Jan, 1999 1 commit
  32. 30 Dec, 1998 1 commit
  33. 29 Dec, 1998 1 commit
    • Richard Kenner <kenner@vlsi1.ultra.nyu.edu>: · 185ebd6c
              * rtl.def (CONSTANT_P_RTX): Clarify commentary.
              * expr.c (expand_builtin, case BUILT_IN_CONSTANT_P): Rework to
              consider constant CONSTRUCTOR constant and to defer some cases
              to cse.
              * cse.c (fold_rtx, case CONST): Add handling for CONSTANT_P_RTX.
              * regclass.c (reg_scan_mark_refs, case CONST): Likewise.
      Richard Henderson  <rth@cygnus.com>
              * expr.c (init_expr_once): Kill can_handle_constant_p recognition.
              * cse.c (fold_rtx, case 'x'): Remove standalone CONSTANT_P_RTX code.
      
      From-SVN: r24439
      Richard Henderson committed
  34. 23 Dec, 1998 1 commit
    • Warning fixes: · 973838fd
              * alias.c (record_alias_subset): Remove ignored `&'.
              (init_alias_once): Likewise.
              * c-lex.c (UNGETC): Cast first argument of comma expression to void.
              * config/mips/mips.c (mips_asm_file_end): Cast the result of
              fwrite to `int' when comparing against one.
              * config/mips/mips.h (CAN_ELIMINATE): Add parens around && within ||.
              (INITIAL_ELIMINATION_OFFSET): Add braces to avoid ambiguous `else'.
              * cse.c (rehash_using_reg): Change type of variable `i' to
              unsigned int.
              * dwarf2out.c (initial_return_save): Cast -1 to unsigned before
              assigning it to one.
              * except.c (duplicate_eh_handlers): Remove unused variable `tmp'.
              * final.c (final_scan_insn): Likewise for variable `i'.
              (output_asm_insn): Cast a char to unsigned char when used as an
              array index.
              * gcse.c (compute_pre_ppinout): Cast -1 to SBITMAP_ELT_TYPE when
              assigning it to one.
              * loop.c (strength_reduce): Remove unused variables `count' and `temp'.
              * recog.c (preprocess_constraints): Cast a char to unsigned char
              when used as an array index.
              * regmove.c (find_matches): Likewise.
              * reload1.c (calculate_needs): Add default case in switch.
              (eliminate_regs_in_insn): Initialize variable `offset'.
              (set_offsets_for_label): Change type of variable `i' to unsigned.
              (reload_as_needed): Wrap variable `i' in macro check on
              AUTO_INC_DEC || INSN_CLOBBERS_REGNO_P.
              * scan-decls.c (scan_decls): Mark parameters `argc' and `argv'
              with ATTRIBUTE_UNUSED.  Cast variable `start_written' to size_t
              when comparing against one.
              * stor-layout.c (layout_decl): Cast maximum_field_alignment to
              unsigned when comparing against one.  Likewise for
              GET_MODE_ALIGNMENT().
              (layout_record): Cast record_align to int when comparing against a
              signed value.
              (layout_type): Cast TYPE_ALIGN() to int when comparing against a
              signed value.
              * tree.c (get_identifier): Cast variable `len' to unsigned when
              comparing against one.
              (maybe_get_identifier): Likewise
      
      From-SVN: r24403
      Kaveh R. Ghazi committed
  35. 10 Dec, 1998 1 commit
    • Fix alpha-x-m32r-elf bugs. · 737e7965
      	* cse.c (simplify_unary_operation): Sign-extend constants when
      	they have the most significant bit set for the target.
      	* real.c (endian): Sign-extend 32 bit output values on a 64 bit
      	host.
      	* m32r/m32r.c (m32r_expand_prologue): Store pretend_size in
      	HOST_WIDE_INT temporary before negating it.
      	* m32r/m32r.md (movsi_insn+1): Use ~0xffff instead of 0xffff0000.
      
      From-SVN: r24254
      Jim Wilson committed