aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/gcc-interface/misc.c
diff options
context:
space:
mode:
authorTrevor Smigiel <Trevor_Smigiel@playstation.sony.com>2009-05-23 02:28:14 +0000
committerTrevor Smigiel <tsmigiel@gcc.gnu.org>2009-05-23 02:28:14 +0000
commiteec9405eea21a98beaf1129dac03cb8ffbcce422 (patch)
tree16412a85a6b2f3130e4c911f4056b8ff7e99fba3 /gcc/ada/gcc-interface/misc.c
parent6cfd7dcfaaffdf13aa2d92de9a77eb7c933f555d (diff)
downloadgcc-eec9405eea21a98beaf1129dac03cb8ffbcce422.zip
gcc-eec9405eea21a98beaf1129dac03cb8ffbcce422.tar.gz
gcc-eec9405eea21a98beaf1129dac03cb8ffbcce422.tar.bz2
Trevor Smigiel <Trevor_Smigiel@playstation.sony.com>
* config/spu/spu-protos.h (aligned_mem_p, spu_valid_mov): Remove. (spu_split_load, spu_split_store): Change return type to int. (spu_split_convert): Declare. * config/spu/predicates.md (spu_mem_operand): Remove. (spu_mov_operand): Update. (spu_dest_operand, shiftrt_operator, extend_operator): Define. * config/spu/spu.c (regno_aligned_for_load): Remove. (reg_aligned_for_addr, spu_expand_load): Define. (spu_expand_extv): Reimplement and handle MEM. (spu_expand_insv): Handle MEM. (spu_sched_reorder): Handle insn's with length 0. (spu_legitimate_address_p): Reimplement. (store_with_one_insn_p): Return TRUE for any mode with size larger than 16 bytes. (address_needs_split): Define. (spu_expand_mov): Call spu_split_load and spu_split_store for MEM operands. (spu_convert_move): Define. (spu_split_load): Use spu_expand_load and change all MEM's to TImode. (spu_split_store): Change all MEM's to TImode. (spu_init_expanders): Preallocate registers that correspond to LAST_VIRTUAL_REG+1 and LAST_VIRTUAL_REG+2 and set them with mark_reg_pointer. (spu_split_convert): Define. * config/spu/spu.md (QHSI, QHSDI): New mode iterators. (_move<mode>, _movdi, _movti): Update predicate and condition. (load, store): Change to define_split. (extendqiti2, extendhiti2, extendsiti2, extendditi2): Simplify to extend<mode>ti2. (zero_extendqiti2, zero_extendhiti2, <v>lshr<mode>3_imm): Define. (lshr<mode>3, lshr<mode>3_imm, lshr<mode>3_re): Simplify to one define_insn_and_split of lshr<mode>3. (shrqbybi_<mode>, shrqby_<mode>): Simplify to define_expand. (<v>ashr<mode>3_imm): Define. (extv, extzv, insv): Allow MEM operands. (trunc_shr_ti<mode>, trunc_shr_tidi, shl_ext_<mode>ti, shl_ext_diti, sext_trunc_lshr_tiqisi, zext_trunc_lshr_tiqisi, sext_trunc_lshr_tihisi, zext_trunc_lshr_tihisi): Define for combine. (_spu_convert2): Change to define_insn_and_split and remove the corresponding define_peephole2. (stack_protect_set, stack_protect_test, stack_protect_test_si): Change predicates to memory_operand. From-SVN: r147814
Diffstat (limited to 'gcc/ada/gcc-interface/misc.c')
0 files changed, 0 insertions, 0 deletions