]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blob - gas/testsuite/gas/mips/unaligned-branch-r6-2.s
MIPS: Verify the ISA mode and alignment of branch and jump targets
[thirdparty/binutils-gdb.git] / gas / testsuite / gas / mips / unaligned-branch-r6-2.s
1 .text
2 .set noreorder
3 .space 0x1000
4
5 .align 4
6 .set mips0
7 .ent foo
8 foo:
9 nor $0, $0
10 bc bar0
11 nor $0, $0
12 beqzc $2, bar0
13 nor $0, $0
14 beqz $2, bar0
15 nor $0, $0
16 bc bar1
17 nor $0, $0
18 beqzc $2, bar1
19 nor $0, $0
20 beqz $2, bar1
21 nor $0, $0
22 bc bar2
23 nor $0, $0
24 beqzc $2, bar2
25 nor $0, $0
26 beqz $2, bar2
27 nor $0, $0
28 bc bar3
29 nor $0, $0
30 beqzc $2, bar3
31 nor $0, $0
32 beqz $2, bar3
33 nor $0, $0
34 bc bar4
35 nor $0, $0
36 beqzc $2, bar4
37 nor $0, $0
38 beqz $2, bar4
39 nor $0, $0
40 bc bar4 + 1
41 nor $0, $0
42 beqzc $2, bar4 + 1
43 nor $0, $0
44 beqz $2, bar4 + 1
45 nor $0, $0
46 bc bar4 + 2
47 nor $0, $0
48 beqzc $2, bar4 + 2
49 nor $0, $0
50 beqz $2, bar4 + 2
51 nor $0, $0
52 bc bar4 + 3
53 nor $0, $0
54 beqzc $2, bar4 + 3
55 nor $0, $0
56 beqz $2, bar4 + 3
57 nor $0, $0
58 bc bar4 + 4
59 nor $0, $0
60 beqzc $2, bar4 + 4
61 nor $0, $0
62 beqz $2, bar4 + 4
63 nor $0, $0
64 bc bar16
65 nor $0, $0
66 beqzc $2, bar16
67 nor $0, $0
68 beqz $2, bar16
69 nor $0, $0
70 bc bar17
71 nor $0, $0
72 beqzc $2, bar17
73 nor $0, $0
74 beqz $2, bar17
75 nor $0, $0
76 bc bar18
77 nor $0, $0
78 beqzc $2, bar18
79 nor $0, $0
80 beqz $2, bar18
81 nor $0, $0
82 bc bar18 + 1
83 nor $0, $0
84 beqzc $2, bar18 + 1
85 nor $0, $0
86 beqz $2, bar18 + 1
87 nor $0, $0
88 bc bar18 + 2
89 nor $0, $0
90 beqzc $2, bar18 + 2
91 nor $0, $0
92 beqz $2, bar18 + 2
93 nor $0, $0
94 bc bar18 + 3
95 nor $0, $0
96 beqzc $2, bar18 + 3
97 nor $0, $0
98 beqz $2, bar18 + 3
99 nor $0, $0
100 bc bar18 + 4
101 nor $0, $0
102 beqzc $2, bar18 + 4
103 nor $0, $0
104 beqz $2, bar18 + 4
105 nor $0, $0
106 jalr $0, $ra
107 nor $0, $0
108 .end foo
109 .set mips0
110
111 # Force some (non-delay-slot) zero bytes, to make 'objdump' print ...
112 .align 4, 0
113 .space 16
114
115 .macro obj n:req
116 .type bar\@, @object
117 bar\@ :
118 .byte 0
119 .size bar\@, . - bar\@
120 .if \n - 1
121 obj \n - 1
122 .endif
123 .endm
124
125 .macro fun n:req
126 .type bar\@, @function
127 bar\@ :
128 .insn
129 .hword 0
130 .size bar\@, . - bar\@
131 .if \n - 1
132 fun \n - 1
133 .endif
134 .endm
135
136 .align 4
137 .set mips0
138 obj 16
139 fun 8