1. 14 Jun, 1994 1 commit
  2. 06 Jun, 1994 3 commits
    • (arm_reload_out_hi): Rewrite. · b5cc037f
      (arm_reload_out_hi): Rewrite.  Add support for processors running in
      big-endian mode.
      (fp_immediate_constant): Fix typo in argument declaration.
      
      From-SVN: r7449
      Richard Earnshaw committed
    • (storehi_bigend): New expansion pattern. · fe241a29
      (storeinthi): Rework to generate better code, add big-endian support.
      (movhi): Add support for processors running in big-endian mode.
      (movhi_bigend): New expansion pattern.
      (matcher for movhi): Remove incorrect alternative for storing HImode to
      memory.  Only match when little endian.
      (matcher for big-endian movhi): New pattern.
      (matchers/peepholes for extended pre/post increment HImode loads): Only
      match when little-endian.
      (matcher for operating on adjacent memory locations): Load operation into
      arith operands.
      (peepholes for extended pre-increment byte loads): New patterns.
      
      From-SVN: r7448
      Richard Earnshaw committed
    • (PROMOTE_MODE): Promote HImode integers as signed. · 9c872872
      (BYTES_BIG_ENDIAN): Allow target description to override default.
      (LOAD_EXTEND_OP): When big-endian, HImode loads are sign extended.
      
      From-SVN: r7447
      Richard Earnshaw committed
  3. 05 Jun, 1994 2 commits
  4. 04 Jun, 1994 3 commits
    • (FUNCTION_PROFILER): Delete duplicate definition. · 4eda77ec
      (FUNCTION_PROFILER, TRAMPOLINE_TEMPLATE, ASM_FILE_START,
       ASM_OUTPUT_REG_{PUSH,POP}, PRINT_OPERAND_ADDRESS):  Output register
       prefix before any explicit register name.
      (ASM_OUTPUT_LONG_DOUBLE, ASM_OUTPUT_DOUBLE, ASM_OUTPUT_FLOAT,
       ASM_OUTPUT_COMMON): Output the target dependent comment char.
      (ASM_FILE_START): Output register alias for r10.
      (REGISTER_NAMES): Output "r9" now for r9, not "rfp".
      (ADDITIONAL_REGISTER_NAMES): New macro.
      
      From-SVN: r7444
      Richard Earnshaw committed
    • (all patterns explicitly mentioning regs): Output the target dependent prefix… · 916cc8c5
      (all patterns explicitly mentioning regs): Output the target dependent prefix before the register name.
      
      (all patterns explicitly mentioning regs): Output the target dependent
      prefix before the register name.
      (all patterns with asm comments): Output the target dependent comment
      character.
      
      From-SVN: r7443
      Richard Earnshaw committed
    • (print_multi_reg, output_call, output_call_mem, · 1d5473cb
       output_mov_long_double_fpu_from_arm,
       output_mov_long_double_arm_from_fpu,
       output_mov_double_fpu_from_arm, output_mov_double_arm_from_fpu,
       output_return_instruction, output_func_{prologue,epilogue},
       arm_print_operand, output_load_symbol):  Print the register prefix
      before each register name.
      (output_func_prologue, output_lcomm_directive):  Output the target
      dependent comment char for asm comments.
      
      From-SVN: r7442
      Richard Earnshaw committed
  5. 03 Jun, 1994 9 commits
  6. 02 Jun, 1994 13 commits
  7. 01 Jun, 1994 9 commits
    • #define NO_IMPLICIT_EXTERN_C. · 302499a9
      From-SVN: r7419
      Jason Merrill committed
    • (all insn and peephole patterns): Rewrite without using arm_output_asm_insn. · 0f447ef2
      (matcher for movsi): New alternative to load symbol directly into a register.
      Add new parameter in call to output_load_symbol.
      
      From-SVN: r7418
      Richard Earnshaw committed
    • Delete some dead code. · 008cf58a
      (FUNCTION_{PROLOGUE,EPILOGUE}): Call output_func_{prologue,epilogue}.
      (INITIAL_ELIMINATION_OFFSET): Inspect all registers, but only add those that
      are not in call_used_regs.
      (GO_IF_LEGITIMATE_INDEX): Change type of variable 'range' to HOST_WIDE_INT;
      change type of variable 'code' to enum rtx_code.
      
      (arm_output_asm_insn): Delete declaration.
      (EXTRA_CONSTAINT): New constraint 'R' to match a constant pool label.
      Make constraint 'S' never match when not optimizing.
      (CONSTANT_ADDRESS_P): Only accept symbols marked with SYMBOL_REF_FLAG when
      optimizing.
      (ENCODE_SECTION_INFO): Don't mark any symbols when not optimizing.
      (ASM_OUTPUT_REG_{PUSH,POP}: Don't call arm_increase_location.
      (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
      
      From-SVN: r7417
      Richard Earnshaw committed
    • General tidy up. · f3bb6135
      #include <string.h>.
      Declare some prototypes.
      (output_memory_reference_mode): Change type to enum machine_mode.
      (arm_const_nmoves): Delete.
      (adjacent_mem_locations, {load,store}_multiple_operation): Explicitly
      declare to return int.
      ({load,store}_multiple_operation): Change type of 'count', 'base' and 'i' to
      HOST_WIDE_INT.
      (output_add_immediate): Change type of 'n' to HOST_WIDE_INT.
      (output_multi_immediate): Change type of Argument 'n' to HOST_WIDE_INT, if
      wider than 32 bits, mask out the high bits.
      (output_arithmetic_with_immediate_multiply): Change type of 'shift'
      to HOST_WIDE_INT.
      (output_func_{prologue,epilogue}): Renamed from output_{prologue,epilogue}.
      Check all registers to see if they are live, but only push/pop them if they
      are not in call_used_regs.
      
      (const_pool_offset): New function.
      (get_prologue_size): New function.
      (output_func_prologue): Eliminate variable code_size.
      (output_func_epilogue): Only call arm_increase_location when optimizing; also
      add the size of the function just compiled, and the size of the prologue.
      (arm_output_asm_insn): Delete.  All callers changed to use output_asm_insn.
      (arm_output_llc): Delete.
      (output_load_symbol): New first parameter 'insn'.  Rewrite so that assembler
      can detect whether we made a mistake.
      
      From-SVN: r7416
      Richard Earnshaw committed
    • (short_branch): Convert length calculations to bytes · 5472d00b
      From-SVN: r7414
      Richard Earnshaw committed
    • (movesi_unaligned, movsi_ulw, movsi_usw): Delete. · c5563e11
      (extv, extzv, insv, movsi_ulw, movsi_usw): New patterns.
      
      From-SVN: r7413
      Jim Wilson committed
    • (SECONDARY_MEMORY_NEEDED): Simplify. · a40ed31b
      (ADDITIONAL_REGISTER_NAMES): Define.
      (CONDITIONAL_REGISTER_USAGE): Make PIC_OFFSET_TABLE_REGNUM fixed
      again.
      (FIRST_PSEUDO_REGISTER): Now 89.
      (FIXED_REGISTERS): Delete 1.0 fp registers,
      (CALL_USED_REGISTERS): Likewise.
      (CONDITIONAL_REGISTER_USAGE): Almost deleted.
      (REG_ALLOC_ORDER): Update register numbers.
      (HARD_REGNO_NREGS): Delete special case for 1.0 fp registers.
      (HARD_REGNO_MODE_OK): Rewrite.  Don't allow use of odd fp registers
      (enum reg_class): Delete HI_SNAKE_FP_REGS and FP_OR_SNAKE_FP_REGS.
      (REG_CLASS_NAMES): Corresponding change.
      (REG_CLASS_CONTENTS): Delete HI_SNAKE_FP_REGS and
      FP_OR_SNAKE_FP_REGS.  Make SNAKE_FP_REGS class contain all fp
      registers.  Update all values for changed register numbering.
      (REGNO_REG_CLASS): Corresponding changes.
      (REG_CLASS_FROM_LETTER): Delete 'y'.
      (FP_REG_CLASS_P): No longer test HI_SNAKE_FP_REGS.
      (CLASS_MAX_NREGS): Delete special case for 1.1 fp registers.
      (FUNCTION_VALUE): Remove TARGET_SNAKE conditionals.
      (LIBCALL_VALUE): Likewise.
      (FUNCTION_ARG_REGNO_P): Likewise.
      (FUNCTION_VALUE_REGNO_P): Likewise.  Add registers 29 and 33.
      (FUNCTION_ARG): Remove TARGET_SNAKE conditionals.  Update register
      numbers.
      (REGNO_OK_FOR_FP_P): Update register number.
      (REGISTER_NAMES): Delete special entries for 1.0 fp registers.
      (DBX_REGISTER_NUMBER): Likewise.
      
      From-SVN: r7412
      Torbjorn Granlund committed
    • (emit_move_sequence): Add missing argument to symbolic_operand. · 80225b66
      (output_block_move): Prefer addl to add.
      (print_operand): Print fp regs with L suffix when appropriate.
      (output_arg_descriptor): Rewrite to accomodate new convention for
      USE information.
      (compute_frame_size): Update for changed register numbers.
      Simplify loops over general registers to stop at register 4.
      (hppa_expand_prologue): Likewise.
      (hppa_expand_epilogue): Likewise.
      
      From-SVN: r7411
      Torbjorn Granlund committed