Upload Tizen:Base source
[external/binutils.git] / gas / testsuite / gas / score / rD_rA_BN.s
1 /*
2  * test relax
3  * bitclr.c <-> bitclr! : register number must be in 0-15
4  * bitset.c <-> bitset! : register number must be in 0-15
5  * bittgl.c <-> bittgl! : register number must be in 0-15
6  * slli.c <-> slli!     : register number must be in 0-15
7  * srli.c <-> srli!     : register number must be in 0-15
8
9  * Author: ligang
10  */
11
12 /* This macro transform 32b instruction to 16b. */
13 .macro tran3216 insn32, insn16
14 .align 4
15
16   \insn32 r0, r0, 2          #32b -> 16b
17   \insn16 r0, 2
18
19   \insn32 r15, r15, 4        #32b -> 16b
20   \insn16 r15, 4
21
22   \insn32 r15, r15, 1        #32b -> 16b
23   \insn16 r15, 1
24
25   \insn16 r15, 3
26   \insn32 r15, r15, 3        #32b -> 16b
27
28   \insn32 r8, r8, 3          #32b -> 16b
29   \insn32 r8, r8, 3          #32b -> 16b
30         
31   \insn32 r15, r15, 1        #No transform
32   \insn32 r26, r23, 4
33
34 .endm
35
36 /* This macro transform 16b instruction to 32b. */
37 .macro tran1632 insn32, insn16
38 .align 4
39
40   \insn16 r0, 2         #16b -> 32b
41   \insn32 r20, r21, 2
42         
43   \insn16 r15, 4        #16b -> 32b
44   \insn32 r25, r21, 4
45
46   \insn16 r15, 1        #16b -> 32b
47   \insn32 r25, r22, 1
48
49   \insn16 r8, 3         #No transform
50   \insn16 r8, 3         #No transform
51         
52   \insn16 r6, 4         #No transform
53   \insn32 r6, r6, 4     #32b -> 16b
54
55   \insn32 r9, r9, 2     #32b -> 16b
56   \insn16 r9, 2         #No transform  
57         
58 .endm
59                 
60 .text
61
62   tran3216 "bitclr.c", "bitclr!"
63   tran3216 "bitset.c", "bitset!"
64   tran3216 "bittgl.c", "bittgl!"
65   tran3216 "slli.c", "slli!"
66   tran3216 "srli.c", "srli!"
67
68   tran1632 "bitclr.c", "bitclr!"
69   tran1632 "bitset.c", "bitset!"
70   tran1632 "bittgl.c", "bittgl!"
71   tran1632 "slli.c", "slli!"
72   tran1632 "srli.c", "srli!"
73