Add jmp and call tests to prevent intel mode lossage creeping in again.
[binutils.git] / gas / testsuite / gas / i386 / general.l
blobc080f90c4ff593ee3a3e464fd38b59a0e32ac494
1 .*: Assembler messages:
2 .*:10: Warning:.*
3 .*:12: Warning:.*
4 .*:19: Warning:.*
5 .*:22: Warning:.*
6 .*:81: Warning:.*
7 .*:82: Warning:.*
8 .*:83: Warning:.*
9 .*:84: Warning:.*
10 .*:85: Warning:.*
11 .*:86: Warning:.*
12 .*:87: Warning:.*
13 .*:88: Warning:.*
14 .*:89: Warning:.*
15 .*:90: Warning:.*
16 .*:91: Warning:.*
17 .*:92: Warning:.*
18 .*:93: Warning:.*
19 .*:94: Warning:.*
20 .*:95: Warning:.*
21 .*:96: Warning:.*
22 .*:97: Warning:.*
23 .*:98: Warning:.*
24 .*:99: Warning:.*
25 .*:100: Warning:.*
26 .*:101: Warning:.*
27 .*:135: Warning:.*
28 .*:163: Warning:.*
29 .*:165: Warning:.*
30 .*:167: Warning:.*
31 .*:169: Warning:.*
32 .*:171: Warning:.*
33 .*:177: Warning:.*
34 .*:179: Warning:.*
35 .*:181: Warning:.*
36 .*:183: Warning:.*
37 .*:185: Warning:.*
38    1                            .psize 0
39    2                            .text
40    3                            # test various segment reg insns
41    4 0000 1E                            push    %ds
42    5 0001 1E                            pushl   %ds
43    6 0002 1F                            pop     %ds
44    7 0003 1F                            popl    %ds
45    8 0004 8CD8                          mov     %ds,%eax
46    9 0006 8CD8                          movl    %ds,%eax
47   10 0008 8CD8                          movl    %ds,%ax
48 .*Warning:.*
49   11 000a 8ED8                          mov     %eax,%ds
50   12 000c 8ED8                          movl    %ax,%ds
51 .*Warning:.*
52   13 000e 8ED8                          movl    %eax,%ds
53   14                            
54   15 0010 661E                          pushw   %ds
55   16 0012 661F                          popw    %ds
56   17 0014 668CD8                        mov     %ds,%ax
57   18 0017 668CD8                        movw    %ds,%ax
58   19 001a 668CD8                        movw    %ds,%eax
59 .*Warning:.*
60   20 001d 8ED8                          mov     %ax,%ds
61   21 001f 8ED8                          movw    %ax,%ds
62   22 0021 8ED8                          movw    %eax,%ds
63 .*Warning:.*
64   23                            
65   24                            # test various pushes
66   25 0023 6A0A                          pushl   \$10
67   26 0025 666A0A                        pushw   \$10
68   27 0028 6A0A                          push    \$10
69   28 002a 68E80300 00                   pushl   \$1000
70   29 002f 6668E803                      pushw   \$1000
71   30 0033 68E80300 00                   push    \$1000
72   31 0038 FF355700 0000                 pushl   1f
73   32 003e 66FF3557 000000               pushw   1f
74   33 0045 FF355700 0000                 push    1f
75   34 004b FFB30C00 0000                 push    \(1f-.\)\(%ebx\)
76   35 0051 FF350600 0000                 push    1f-.
77   36                            # these, and others like them should have no operand size prefix
78   37 0057 0F00D1                1:      lldt    %cx
79   38 005a 0F01F0                        lmsw    %ax
80   39                            
81   40                            # Just to make sure these don't become illegal due to over-enthusiastic
82   41                            # register checking
83   42 005d 660FBEF8                      movsbw  %al,%di
84   43 0061 0FBEC8                        movsbl  %al,%ecx
85   44 0064 0FBFC8                        movswl  %ax,%ecx
86   45 0067 660FB6F8                      movzbw  %al,%di
87   46 006b 0FB6C8                        movzbl  %al,%ecx
88   47 006e 0FB7C8                        movzwl  %ax,%ecx
89   48                            
90   49 0071 EC                            in      %dx,%al
91   50 0072 66ED                          in      %dx,%ax
92   51 0074 ED                            in      %dx,%eax
93   52 0075 EC                            in      \(%dx\),%al
94   53 0076 66ED                          in      \(%dx\),%ax
95   54 0078 ED                            in      \(%dx\),%eax
96   55 0079 EC                            inb     %dx,%al
97   56 007a 66ED                          inw     %dx,%ax
98   57 007c ED                            inl     %dx,%eax
99   58 007d EC                            inb     %dx
100   59 007e 66ED                          inw     %dx
101   60 0080 ED                            inl     %dx
102   61 0081 E4FF                          inb     \$255
103   62 0083 66E502                        inw     \$2
104   63 0086 E504                          inl     \$4
105   64 0088 EF                            outl    %eax,%dx
106   65 0089 E62A                          out     %al, \$42
107   66 008b 66E50D                        in      \$13, %ax
108   67                            # These are used in AIX.
109   68 008e 66ED                          inw     \(%dx\)
110   69 0090 66EF                          outw    \(%dx\)
111   70                            
112   71 0092 A4                            movsb
113   72 0093 66A7                          cmpsw
114   73 0095 AF                            scasl
115   74 0096 D7                            xlatb
116   75 0097 2EA5                          movsl   %cs:\(%esi\),%es:\(%edi\)
117   76 0099 0F9303                        setae   \(%ebx\)
118   77 009c 0F9303                        setaeb  \(%ebx\)
119   78 009f 0F93C0                        setae   %al
120   79                            
121   80                            #these should give warnings
122   81 00a2 0C01                          orb     \$1,%ax
123 .*Warning:.*
124   82 00a4 0C01                          orb     \$1,%eax
125 .*Warning:.*
126   83 00a6 80CB01                        orb     \$1,%bx
127 .*Warning:.*
128   84 00a9 80CB01                        orb     \$1,%ebx
129 .*Warning:.*
130   85 00ac D9C1                          fldl    %st\(1\)
131 .*Warning:.*
132   86 00ae DDD2                          fstl    %st\(2\)
133 .*Warning:.*
134   87 00b0 DDDB                          fstpl   %st\(3\)
135 .*Warning:.*
136   88 00b2 D8D4                          fcoml   %st\(4\)
137 .*Warning:.*
138   89 00b4 D8DD                          fcompl  %st\(5\)
139 .*Warning:.*
140   90 00b6 DEC1                          faddp   %st\(1\),%st
141 .*Warning:.*
142   91 00b8 DECA                          fmulp   %st\(2\),%st
143 .*Warning:.*
144   92 00ba DEE3                          fsubp   %st\(3\),%st
145 .*Warning:.*
146   93 00bc DEEC                          fsubrp  %st\(4\),%st
147 .*Warning:.*
148   94 00be DEF5                          fdivp   %st\(5\),%st
149 .*Warning:.*
150   95 00c0 DEFE                          fdivrp  %st\(6\),%st
151 .*Warning:.*
152   96 00c2 DEC1                          fadd
153 .*Warning:.*
154   97 00c4 DEE1                          fsub
155 .*Warning:.*
156   98 00c6 DEC9                          fmul
157 .*Warning:.*
158   99 00c8 DEF1                          fdiv
159 .*Warning:.*
160  100 00ca DEE9                          fsubr
161 .*Warning:.*
162  101 00cc DEF9                          fdivr
163 .*Warning:.*
164  102                            #these should all be legal
165  103 00ce 0FA31556 341200               btl     %edx, 0x123456
166  104 00d5 0FA3D0                        btl     %edx, %eax
167  105 00d8 0C01                          orb     \$1,%al
168  106 00da 80CB01                        orb     \$1,%bl
169  107 00dd A1110000 00                   movl    17,%eax
170  108 00e2 A1110000 00                   mov     17,%eax
171  109 00e7 66ED                          inw     %dx,%ax
172  110 00e9 ED                            inl     %dx,%eax
173  111 00ea 66ED                          inw     \(%dx\),%ax
174  112 00ec ED                            inl     \(%dx\),%eax
175  113 00ed EC                            in      \(%dx\),%al
176  114 00ee 66ED                          in      \(%dx\),%ax
177  115 00f0 ED                            in      \(%dx\),%eax
178  116 00f1 0FB61437                      movzbl  \(%edi,%esi\),%edx
179  117 00f5 0FB6451C                      movzbl  28\(%ebp\),%eax
180  118 00f9 0FB6C0                        movzbl  %al,%eax
181  119 00fc 0FB6F1                        movzbl  %cl,%esi
182  120 00ff 26D7                          xlat    %es:\(%ebx\)
183  121 0101 D7                            xlat
184  122 0102 D7                            xlatb
185  123 0103 DDD8                  1:      fstp    %st\(0\)
186  124 0105 E2FC                          loop    1b
187  125 0107 F6F1                          divb    %cl 
188  126 0109 66F7F1                        divw    %cx 
189  127 010c F7F1                          divl    %ecx
190  128 010e F6F1                          div     %cl
191  129 0110 66F7F1                        div     %cx
192  130 0113 F7F1                          div     %ecx
193  131 0115 F6F1                          div     %cl,%al
194  132 0117 66F7F1                        div     %cx,%ax
195  133 011a F7F1                          div     %ecx,%eax
196  134 011c 8EDE                          mov     %si,%ds
197  135 011e 8EDE                          movl    %si,%ds         # warning here
198 .*Warning:.*
199  136 0120 1E                            pushl   %ds
200  137 0121 1E                            push    %ds
201  138 0122 A0000000 00                   mov     0,%al
202  139 0127 66A10000 0100                 mov     0x10000,%ax
203  140 012d 89C3                          mov     %eax,%ebx
204  141 012f 9C                            pushf
205  142 0130 9C                            pushfl
206  143 0131 669C                          pushfw
207  144 0133 9D                            popf
208  145 0134 9D                            popfl
209  146 0135 669D                          popfw
210  147 0137 89341D00 000000               mov     %esi,\(,%ebx,1\)
211  148 013e 80250000 00007F               andb    \$~0x80,foo
212  149                            
213  150                            #check 16-bit code auto address prefix
214  151                            .code16gcc
215  152 0145 67668D95 00FFFFFF             leal    -256\(%ebp\),%edx
216  153 014d 6788857F FFFFFF               mov     %al,-129\(%ebp\)
217  154 0154 67886580                      mov     %ah,-128\(%ebp\)
218  155 0158 67668D9D 20F9FFFF             leal    -1760\(%ebp\),%ebx
219  156 0160 67668984 248C0000             movl    %eax,140\(%esp\)
220  156      00
221  157                            
222  158                            .code32
223  159                            .extern xxx
224  160 0169 EB98                          jmp     1b
225  161 016b E9FCFFFF FF                   jmp     xxx
226  162 0170 FF250000 0000                 jmp     \*xxx
227  163 0176 FF250000 0000                 jmp     xxx\(,1\)
228 .*Warning:.*
229  164 017c FFE7                          jmp     \*%edi
230  165 017e FFE7                          jmp     %edi
231 .*Warning:.*
232  166 0180 FF27                          jmp     \*\(%edi\)
233  167 0182 FF27                          jmp     \(%edi\)
234 .*Warning:.*
235  168 0184 FF2CBD00 000000               ljmp    \*xxx\(,%edi,4\)
236  169 018b FF2CBD00 000000               ljmp    xxx\(,%edi,4\)
237 .*Warning:.*
238  170 0192 FF2D0000 0000                 ljmp    \*xxx
239  171 0198 FF2D0000 0000                 ljmp    xxx\(,1\)
240 .*Warning:.*
241  172 019e EA000000 003412               ljmp    \$0x1234,\$xxx
242  173                            
243  174 01a5 E859FFFF FF                   call    1b
244  175 01aa E8FCFFFF FF                   call    xxx
245  176 01af FF150000 0000                 call    \*xxx
246  177 01b5 FF150000 0000                 call    xxx\(,1\)
247 .*Warning:.*
248  178 01bb FFD7                          call    \*%edi
249  179 01bd FFD7                          call    %edi
250 .*Warning:.*
251  180 01bf FF17                          call    \*\(%edi\)
252  181 01c1 FF17                          call    \(%edi\)
253 .*Warning:.*
254  182 01c3 FF1CBD00 000000               lcall   \*xxx\(,%edi,4\)
255  183 01ca FF1CBD00 000000               lcall   xxx\(,%edi,4\)
256 .*Warning:.*
257  184 01d1 FF1D0000 0000                 lcall   \*xxx
258  185 01d7 FF1D0000 0000                 lcall   xxx\(,1\)
259 .*Warning:.*
260  186 01dd 9A000000 003412               lcall   \$0x1234,\$xxx
261  187                            
262  188                                    # Force a good alignment.
263  189 01e4 00000000 00000000             .p2align        4,0
264  189      00000000