blob: 63450286ed29d1da136f6112de2c9da168cbb64d [file] [log] [blame]
/*
* tests for shift instruction relaxation
*
* Author: libin
*/
.include "relaxation_macro.h"
.macro _shift_op_pattern insn insn1
insn_32 "\insn r0, r0, 0"
insn_32 "\insn r0, r0, 31"
insn_32 "\insn r15, r15, 0"
insn_32 "\insn r15, r15, 31"
tran_16_32 "\insn! r0, 0", "\insn r0, r0, 0"
/* shouldn't alter */
insn_32 "\insn1 r0, r0, 0"
insn_32 "\insn r0, r2, 0"
insn_32 "\insn r16, r16, 0"
.endm
.text
/* slli/srli rD,rA,Imm5 -> slli!/srli! rD,Imm5 */
_shift_op_pattern "slli", "slli.c"
_shift_op_pattern "srli", "srli.c"