blob: b3d5402df78ce29ff5c745639c5cbe647c10e5cd [file] [log] [blame]
(define_insn "*movti_aarch64"
[(set (match_operand:TI 0
"nonimmediate_operand")
(match_operand:TI 1
"aarch64_movti_operand"))]
"(register_operand (operands[0], TImode)
|| aarch64_reg_or_zero (operands[1], TImode))"
{@ [ cons: =0 , 1 ; attrs: type , length , arch ]
[ r , rUti ; multiple , 8 , * ] #
[ w , Z ; neon_move , 4 , simd ] movi\t%0.2d, #0
[ w , Z ; f_mcr , 4 , * ] fmov\t%d0, xzr
[ w , r ; f_mcr , 8 , * ] #
[ r , w ; f_mrc , 8 , * ] #
[ w , w ; neon_logic_q , 4 , simd ] mov\t%0.16b, %1.16b
[ r , m ; load_16 , 4 , * ] ldp\t%0, %H0, %1
[ m , r ; store_16 , 4 , * ] stp\t%1, %H1, %0
[ m , Z ; store_16 , 4 , * ] stp\txzr, xzr, %0
[ w , m ; load_16 , 4 , fp ] ldr\t%q0, %1
[ m , w ; store_16 , 4 , fp ] str\t%q1, %0
}
)