blob: d180da34d56d672f2cd7737a6ac7a57474e1b21e [file] [log] [blame]
/*
* test relax
* ldi <-> ldiu! : for ldiu! : register number must be in 0-15, simm16: [0-255]
* (1)ldi rD, simm16 : rD = simm16
* (2)ldiu! rD, imm8 : rD = ZE(imm8)
* Author: ligang
*/
/* This macro transform 32b instruction to 16b. */
.macro tran3216 insn32, insn16
.align 4
\insn32 r2, 0 #32b -> 16b
\insn16 r2, 0
\insn32 r3, 255 #32b -> 16b
\insn16 r3, 255
\insn32 r4, 9 #32b -> 16b
\insn32 r4, 9 #32b -> 16b
\insn16 r3, 255
\insn32 r3, 255 #32b -> 16b
\insn32 r8, 3 #No transform
\insn32 r25, 3 #No transform
.endm
/* This macro transform 16b instruction to 32b. */
.macro tran1632 insn32, insn16
.align 4
\insn16 r2, 0 #16b -> 32b
\insn32 r25, 0
\insn16 r3, 255 #16b -> 32b
\insn32 r23, 1
\insn16 r15, 255 #No transform
\insn32 r15, 255
\insn16 r8, 3 #No transform
\insn16 r8, 3 #No transform
.endm
.text
tran3216 "ldi", "ldiu!"
tran1632 "ldi", "ldiu!"