1. 13 Jul, 1994 12 commits
  2. 12 Jul, 1994 17 commits
  3. 11 Jul, 1994 11 commits
    • (basic_machine): Add 1750a. · a2613d10
      From-SVN: r7735
      Richard Kenner committed
    • (assemble_real): Handle TQFmode output. · 32c03bfb
      From-SVN: r7734
      Richard Kenner committed
    • (convert_move): Add some conversions for TQFmode. · 03747aa3
      From-SVN: r7733
      Richard Kenner committed
    • (TQFmode): New mode. · e42a6f5d
      From-SVN: r7732
      Richard Kenner committed
    • Initial revision · 630e77b6
      From-SVN: r7731
      Richard Kenner committed
    • h8300.md (cpu): New attribute. · b4d2cd97
      	* h8300/h8300.md (cpu): New attribute.
      	(attribute length): Add h8/300h support.
      	(attribute cc): New value `cbit'.
      	(all anonymous insns): Give them names.
      	(move insns): Add h8/300h support.
      	(tstqi, tsthi): Use btst insn if able.
      	(arithmetic insns): Add h8/300h support.
      	(boolean insns): Likewise.
      	(negate insns): Likewise.
      	(branch insns): Likewise.
      	(call_value): Use call_insn_operand for operand 1.
      	(shift insns): Completely rewritten.  Add h8/300h support.
      	(zero/sign extension insns): Add h8/300h support.
      	(extv): Deleted.
      	(insv, extzv): Only use for h8/300.
      	(bitfield insns): Completely rewritten.
      	(fancyb*): New insns for speeding up bit accesses.
      
      From-SVN: r7730
      Doug Evans committed
    • h8300.c (cpu_type, [...]): New variables. · 48837e29
      	* h8300/h8300.c (cpu_type, names_extended, names_upper_extended,
      	h8_reg_names, h8_push_ops, h8_pop_ops, h8_mov_ops, h8_push_op,
      	h8_pop_op, h8_mov_op, current_function_anonymous_args, extra_pop,
      	hand_list): New variables.
      	(h8300_init_once, asm_file_start, asm_file_end, ok_for_bclr, o_operand,
      	p_operand, call_insn_operand, jump_address_operand, bit_operand,
      	eq_operator, const_costs, notice_update_cc, bit_operator,
      	nshift_operator, expand_a_shift, get_shift_alg, emit_a_shift,
      	fix_bit_operand): New functions.
      	(shift_alg, shift_type, shift_mode): New enums.
      	(shift_insn): New struct.
      	(shift_n_bits, can_shift): Deleted.
      	(shift_one, rotate_one): New variables.
      	(WORD_REG_USED): New macro (was function word_reg_used).
      	(dosize, function_prologue, function_epilogue, print_operand_address):
      	Add h8/300h support.
      	(small_power_of_two): Renamed from potl8.
      	(potg8): Deleted.
      	(general_operand_src): Fix POST_INC case.
      	(general_operand_dst): Fix PRE_DEC case.
      	(function_arg): 3 regs of args are passed if -mquickcall.
      	4 regs of args are passed to handwritten assembler routines.
      	(print_operand): New cases 'A', 'P', 'S', 'U', 'W', 'b', 'c', 'd', 'g'.
      	Delete case 'O'.  Sort cases.  Add h8/300h support.
      	(do_movsi): Renamed from domovsi.
      	Handle reload_in_progress and reload_completed.
      	(initial_offset): Renamed from io.  Add h8/300h support.
      
      From-SVN: r7729
      Doug Evans committed
    • h8300.h (CPP_PREDEFINES, [...]): Add h8/300h support. · 7bc8cb2b
      	* h8300/h8300.h (CPP_PREDEFINES, CPP_SPEC, LIB_SPEC, TARGET_SWITCHES,
      	BITS_PER_WORD, MAX_BITS_PER_WORD, UNITS_PER_WORD, MAX_UNITS_PER_WORD,
      	POINTER_SIZE, PARM_BOUNDARY, BIGGEST_ALIGNMENT,
      	BIGGEST_FIELD_ALIGNMENT, STACK_BOUNDARY, HARD_REGNO_NREGS,
      	HARD_REGNO_MODE_OK, REG_CLASS_NAMES, REG_CLASS_CONTENTS,
      	REGNO_REG_CLASS, PUSH_ROUNDING, FUNCTION_ARG_ADVANCE,
      	TRAMPOLINE_TEMPLATE, TRAMPOLINE_SIZE, INITIALIZE_TRAMPOLINE,
      	CONSTANT_ADDRESS, MOVE_MAX, Pmode, SIZE_TYPE, PTRDIFF_TYPE):
      	Add h8/300h support.
      	(LINK_SPEC, TARGET_RTL_DUMP, TARGET_H8300, TARGET_H8300H,
      	REAL_ARITHMETIC, SETUP_INCOMING_VARARGS, HAVE_POST_INCREMENT,
      	HAVE_PRE_DECREMENT, MAX_MOVE_MAX, NO_BUILTIN_SIZE_TYPE,
      	NO_BUILTIN_PTRDIFF_TYPE, WCHAR_TYPE, WCHAR_TYPE_SIZE,
      	MAX_WCHAR_TYPE_SIZE, ASM_WORD_OP, INIT_SECTION_ASM_OP,
      	CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, EXTRA_SECTIONS,
      	EXTRA_SECTION_FUNCTIONS, ASM_OUTPUT_CONSTRUCTOR, ASM_OUTPUT_DESTRUCTOR,
      	DO_GLOBAL_CTORS_BODY, DO_GLOBAL_DTORS_BODY, INIT_TARGET_OPTABS):
      	Define.
      	(CAN_DEBUG_WITHOUT_FP, PCC_STATIC_STRUCT_RETURN, STRUCT_VALUE_REGNUM,
      	STRUCT_VALUE_INCOMING, STRUCTURE_SIZE_BOUNDARY): Undefine.
      	(enum reg_class): Add h8/300h support.
      	(emit_a_shift): Declare.
      	(TARGET_DEFAULT): Set default to -mquickcall.
      	(DOUBLE_TYPE_SIZE): Fix at 32.  DFmode support doesn't exist.
      	(CALL_USED_REGISTERS, REG_ALLOC_ORDER): Swap registers 2,3 with 4,5.
      	Registers 0,1 contain function result, allocate after 2,3.
      	(STATIC_CHAIN_REGNUM): Use reg 4.
      	(CONST_OK_FOR_LETTER_P): 'O' is ok_for_bclr, 'P' is small_power_of_two.
      	(FUNCTION_PROFILER, FUNCTION_BLOCK_PROFILER, BLOCK_PROFILER): First
      	attempt at an implementation.
      	(CONST_COSTS): Move code into function const_costs.
      	(BRANCH_COST): Set to 0.
      	(NOTICE_UPDATE_CC): Move code into function notice_update_cc.
      	(ASM_FILE_START): Move code into function asm_file_start.
      	(ASM_FILE_END): Move code into function asm_file_end.
      	(ASM_OUTPUT_DOUBLE, ASM_OUTPUT_FLOAT): Use REAL_VALUE_TO_DECIMAL.
      
      From-SVN: r7728
      Doug Evans committed
    • t-h8300 (CROSS_LIBGCC1): Use libgcc1-asm.a. · d215dc1d
      	* h8300/t-h8300 (CROSS_LIBGCC1): Use libgcc1-asm.a.
      	(LIB1ASMSRC, LIB1ASMFUNCS, LIB2FUNCS_EXTRA, MULTILIB_OPTIONS,
      	MULTILIB_DIRNAMES, LIBGCC, INSTALL_LIBGCC): Define.
      	(fp-bit.c): Build it.
      
      From-SVN: r7727
      Doug Evans committed
    • Initial revision · 26731a9e
      From-SVN: r7726
      Doug Evans committed