VirtualBox

source: vbox/trunk/src/VBox/Disassembler/testcase/tstAsmLock-1.asm@ 8972

Last change on this file since 8972 was 8972, checked in by vboxsync, 17 years ago

cmpxchg*.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 22.9 KB
Line 
1; $Id: tstAsmLock-1.asm 8972 2008-05-20 18:43:08Z vboxsync $
2;; @file
3; Disassembly testcase - Valid lock sequences and related instructions.
4;
5; This is a build test, that means it will be assembled, disassembled,
6; then the disassembly output will be assembled and the new binary will
7; compared with the original.
8;
9
10;
11; Copyright (C) 2008 Sun Microsystems, Inc.
12;
13; This file is part of VirtualBox Open Source Edition (OSE), as
14; available from http://www.virtualbox.org. This file is free software;
15; you can redistribute it and/or modify it under the terms of the GNU
16; General Public License (GPL) as published by the Free Software
17; Foundation, in version 2 as it comes in the "COPYING" file of the
18; VirtualBox OSE distribution. VirtualBox OSE is distributed in the
19; hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
20;
21; Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
22; Clara, CA 95054 USA or visit http://www.sun.com if you need
23; additional information or have any questions.
24;
25
26%include "tstAsm.mac"
27%if TEST_BITS == 64
28; The disassembler doesn't do imm32 right for 64-bit stuff, so disable it for now.
29; %define WITH_64_BIT_TESTS_IMM32
30; The cmpxchg16b/8b stuff isn't handled correctly in 64-bit mode. In the 8b case
31; it could be both yasm and the vbox disassembler. Have to check docs/gas/nasm.
32; %define WITH_64_BIT_TESTS_CMPXCHG16B
33 %define WITH_64_BIT_TESTS
34%endif
35
36 BITS TEST_BITS
37
38 ;
39 ; ADC
40 ;
41 ; 80 /2 ib ADC reg/mem8, imm8 - sans reg dst
42 lock adc byte [1000h], byte 8
43 lock adc byte [xBX], byte 8
44 lock adc byte [xDI], byte 8
45 ; 81 /2 i[wd] ADC reg/memX, immX - sans reg dst
46 lock adc word [1000h], word 090cch
47 lock adc word [xBX], word 090cch
48 lock adc word [xDI], word 090cch
49 lock adc dword [1000h], dword 0cc90cc90h
50 lock adc dword [xBX], dword 0cc90cc90h
51 lock adc dword [xDI], dword 0cc90cc90h
52%ifdef WITH_64_BIT_TESTS_IMM32
53 lock adc qword [1000h], dword 0cc90cc90h
54 lock adc qword [rbx], dword 0cc90cc90h
55 lock adc qword [rdi], dword 0cc90cc90h
56 lock adc qword [r9], dword 0cc90cc90h
57%endif
58 ; 83 /2 ib ADC reg/memX, imm8 - sans reg dst
59 lock adc word [1000h], byte 07fh
60 lock adc word [xBX], byte 07fh
61 lock adc word [xDI], byte 07fh
62 lock adc dword [1000h], byte 07fh
63 lock adc dword [xBX], byte 07fh
64 lock adc dword [xDI], byte 07fh
65%ifdef WITH_64_BIT_TESTS
66 lock adc qword [1000h], byte 07fh
67 lock adc qword [rbx], byte 07fh
68 lock adc qword [rdi], byte 07fh
69 lock adc qword [r10], byte 07fh
70%endif
71
72 ; 10 /r ADC reg/mem8, reg8 - sans reg dst
73 lock adc byte [1000h], bl
74 lock adc byte [xBX], bl
75 lock adc byte [xSI], bl
76 ; 11 /r ADC reg/memX, regX - sans reg dst
77 lock adc word [1000h], bx
78 lock adc word [xBX], bx
79 lock adc word [xSI], bx
80 lock adc dword [1000h], ebx
81 lock adc dword [xBX], ebx
82 lock adc dword [xSI], ebx
83%ifdef WITH_64_BIT_TESTS
84 lock adc qword [1000h], rbx
85 lock adc qword [rbx], rbx
86 lock adc qword [rsi], rbx
87 lock adc qword [r11], rbx
88%endif
89
90 ;
91 ; ADD
92 ;
93 ; 80 /0 ib ADD reg/mem8, imm8 - sans reg dst
94 lock add byte [1000h], byte 8
95 lock add byte [xBX], byte 8
96 lock add byte [xDI], byte 8
97 ; 81 /0 i[wd] ADD reg/memX, immX - sans reg dst
98 lock add word [1000h], word 090cch
99 lock add word [xBX], word 090cch
100 lock add word [xDI], word 090cch
101 lock add dword [1000h], dword 0cc90cc90h
102 lock add dword [xBX], dword 0cc90cc90h
103 lock add dword [xDI], dword 0cc90cc90h
104%ifdef WITH_64_BIT_TESTS_IMM32
105 lock add qword [1000h], dword 0cc90cc90h
106 lock add qword [rbx], dword 0cc90cc90h
107 lock add qword [rdi], dword 0cc90cc90h
108 lock add qword [r9], dword 0cc90cc90h
109%endif
110 ; 83 /0 ib ADD reg/memX, imm8 - sans reg dst
111 lock add word [1000h], byte 07fh
112 lock add word [xBX], byte 07fh
113 lock add word [xDI], byte 07fh
114 lock add dword [1000h], byte 07fh
115 lock add dword [xBX], byte 07fh
116 lock add dword [xDI], byte 07fh
117%ifdef WITH_64_BIT_TESTS
118 lock add qword [1000h], byte 07fh
119 lock add qword [rbx], byte 07fh
120 lock add qword [rdi], byte 07fh
121 lock add qword [r10], byte 07fh
122%endif
123
124 ; 00 /r ADD reg/mem8, reg8 - sans reg dst
125 lock add byte [1000h], bl
126 lock add byte [xBX], bl
127 lock add byte [xSI], bl
128 ; 01 /r ADD reg/memX, regX - sans reg dst
129 lock add word [1000h], bx
130 lock add word [xBX], bx
131 lock add word [xSI], bx
132 lock add dword [1000h], ebx
133 lock add dword [xBX], ebx
134 lock add dword [xSI], ebx
135%ifdef WITH_64_BIT_TESTS
136 lock add qword [1000h], rbx
137 lock add qword [rbx], rbx
138 lock add qword [rsi], rbx
139 lock add qword [r11], rbx
140%endif
141
142 ;
143 ; AND
144 ;
145 ; 80 /4 ib AND reg/mem8, imm8 - sans reg dst
146 lock and byte [1000h], byte 8
147 lock and byte [xBX], byte 8
148 lock and byte [xDI], byte 8
149 ; 81 /4 i[wd] AND reg/memX, immX - sans reg dst
150 lock and word [1000h], word 090cch
151 lock and word [xBX], word 090cch
152 lock and word [xDI], word 090cch
153 lock and dword [1000h], dword 0cc90cc90h
154 lock and dword [xBX], dword 0cc90cc90h
155 lock and dword [xDI], dword 0cc90cc90h
156%ifdef WITH_64_BIT_TESTS_IMM32
157 lock and qword [1000h], dword 0cc90cc90h
158 lock and qword [rbx], dword 0cc90cc90h
159 lock and qword [rdi], dword 0cc90cc90h
160 lock and qword [r9], dword 0cc90cc90h
161%endif
162 ; 83 /4 ib AND reg/memX, imm8 - sans reg dst
163 lock and word [1000h], byte 07fh
164 lock and word [xBX], byte 07fh
165 lock and word [xDI], byte 07fh
166 lock and dword [1000h], byte 07fh
167 lock and dword [xBX], byte 07fh
168 lock and dword [xDI], byte 07fh
169%ifdef WITH_64_BIT_TESTS
170 lock and qword [1000h], byte 07fh
171 lock and qword [rbx], byte 07fh
172 lock and qword [rdi], byte 07fh
173 lock and qword [r10], byte 07fh
174%endif
175
176 ; 20 /r AND reg/mem8, reg8 - sans reg dst
177 lock and byte [1000h], bl
178 lock and byte [xBX], bl
179 lock and byte [xSI], bl
180 ; 21 /r AND reg/memX, regX - sans reg dst
181 lock and word [1000h], bx
182 lock and word [xBX], bx
183 lock and word [xSI], bx
184 lock and dword [1000h], ebx
185 lock and dword [xBX], ebx
186 lock and dword [xSI], ebx
187%ifdef WITH_64_BIT_TESTS
188 lock and qword [1000h], rbx
189 lock and qword [rbx], rbx
190 lock and qword [rsi], rbx
191 lock and qword [r11], rbx
192%endif
193
194 ;
195 ; BTC
196 ;
197 ; 0f bb /r BTC reg/memX, regX (X != 8) - sans reg dst
198 lock btc word [20cch], bx
199 lock btc word [xBX], bx
200 lock btc word [xDI], bx
201 lock btc dword [20cch], ebx
202 lock btc dword [xBX], ebx
203 lock btc dword [xDI], ebx
204%ifdef WITH_64_BIT_TESTS
205 lock btc qword [20cch], rbx
206 lock btc qword [rdx], rbx
207 lock btc qword [rdi], r10
208 lock btc qword [r8], r12
209%endif
210 ; 0f ba /7 ib BTC reg/memX, imm8 (X != 8) - sans reg dst
211 lock btc word [20cch], 15
212 lock btc word [xBX], 15
213 lock btc word [xDI], 15
214 lock btc dword [20cch], 30
215 lock btc dword [xBX], 30
216 lock btc dword [xDI], 30
217%ifdef WITH_64_BIT_TESTS
218 lock btc qword [20cch], 60
219 lock btc qword [rdx], 60
220 lock btc qword [rdi], 60
221 lock btc qword [r9], 60
222 lock btc qword [r12], 60
223%endif
224
225 ;
226 ; BTR
227 ;
228 ; 0f b3 /r BTR reg/memX, regX (X != 8) - sans reg dst
229 lock btr word [20cch], bx
230 lock btr word [xBX], bx
231 lock btr word [xDI], bx
232 lock btr dword [20cch], ebx
233 lock btr dword [xBX], ebx
234 lock btr dword [xDI], ebx
235%ifdef WITH_64_BIT_TESTS
236 lock btr qword [20cch], rbx
237 lock btr qword [rdx], rbx
238 lock btr qword [rdi], r10
239 lock btr qword [r8], r12
240%endif
241 ; 0f ba /6 ib BTR reg/memX, imm8 (X != 8) - sans reg dst
242 lock btr word [20cch], 15
243 lock btr word [xBX], 15
244 lock btr word [xDI], 15
245 lock btr dword [20cch], 30
246 lock btr dword [xBX], 30
247 lock btr dword [xDI], 30
248%ifdef WITH_64_BIT_TESTS
249 lock btr qword [20cch], 60
250 lock btr qword [rdx], 60
251 lock btr qword [rdi], 60
252 lock btr qword [r9], 60
253 lock btr qword [r12], 60
254%endif
255
256 ;
257 ; BTS
258 ;
259 ; 0f ab /r BTS reg/memX, regX (X != 8) - sans reg dst
260 lock bts word [20cch], bx
261 lock bts word [xBX], bx
262 lock bts word [xDI], bx
263 lock bts dword [20cch], ebx
264 lock bts dword [xBX], ebx
265 lock bts dword [xDI], ebx
266%if TEST_BITS == 64
267 lock bts qword [20cch], rbx
268 lock bts qword [rdx], rbx
269 lock bts qword [rdi], r10
270 lock bts qword [r8], r12
271%endif
272 ; 0f ba /5 ib BTS reg/memX, imm8 (X != 8) - sans reg dst
273 lock bts word [20cch], 15
274 lock bts word [xBX], 15
275 lock bts word [xDI], 15
276 lock bts dword [20cch], 30
277 lock bts dword [xBX], 30
278 lock bts dword [xDI], 30
279%if TEST_BITS == 64
280 lock bts qword [20cch], 60
281 lock bts qword [rdx], 60
282 lock bts qword [rdi], 60
283 lock bts qword [r9], 60
284 lock bts qword [r12], 60
285%endif
286
287 ;
288 ; CMPXCHG
289 ;
290 ; 0f b0 /r CMPXCHG reg8/mem8, regX - with reg dst
291 lock cmpxchg byte [30cch], cl
292 lock cmpxchg byte [xBX], cl
293 lock cmpxchg byte [xSI], cl
294 ; 0f b1 /r CMPXCHG regX/memX, regX - with reg dst
295 lock cmpxchg word [30cch], cx
296 lock cmpxchg word [xBX], cx
297 lock cmpxchg word [xSI], cx
298 lock cmpxchg dword [30cch], ecx
299 lock cmpxchg dword [xBX], ecx
300 lock cmpxchg dword [xSI], ecx
301%ifdef WITH_64_BIT_TESTS
302 lock cmpxchg qword [30cch], rcx
303 lock cmpxchg qword [xBX], rcx
304 lock cmpxchg qword [xSI], rcx
305 lock cmpxchg qword [rdi], r8
306 lock cmpxchg qword [r12], r9
307%endif
308
309 ;
310 ; CMPXCHG8B
311 ; CMPXCHG16B
312 ;
313 ;; @todo get back to cmpxchg8b and cmpxchg16b.
314 lock cmpxchg8b qword [1000h]
315 lock cmpxchg8b qword [xDI]
316 lock cmpxchg8b qword [xDI+xBX]
317%ifdef WITH_64_BIT_TESTS_CMPXCHG16B
318 lock cmpxchg16b [1000h]
319 lock cmpxchg16b [xDI]
320 lock cmpxchg16b [xDI+xBX]
321%endif
322
323 ; DEC
324 ; INC
325 ; NEG
326 ; NOT
327 ; OR
328 ; SBB
329 ; SUB
330 ; XADD
331
332%if 0
333 ; XCHG
334 lock xchg [eax], eax
335 lock xchg [ebx], eax
336 lock xchg [ecx], eax
337 lock xchg [edx], eax
338 lock xchg [esp], eax
339 lock xchg [ebp], eax
340 lock xchg [esi], eax
341 lock xchg [edi], eax
342 lock xchg [eax], ebx
343 lock xchg [ebx], ebx
344 lock xchg [ecx], ebx
345 lock xchg [edx], ebx
346 lock xchg [esp], ebx
347 lock xchg [ebp], ebx
348 lock xchg [esi], ebx
349 lock xchg [edi], ebx
350 lock xchg [eax], ecx
351 lock xchg [ebx], ecx
352 lock xchg [ecx], ecx
353 lock xchg [edx], ecx
354 lock xchg [esp], ecx
355 lock xchg [ebp], ecx
356 lock xchg [esi], ecx
357 lock xchg [edi], ecx
358 lock xchg [eax], edx
359 lock xchg [ebx], edx
360 lock xchg [ecx], edx
361 lock xchg [edx], edx
362 lock xchg [esp], edx
363 lock xchg [ebp], edx
364 lock xchg [esi], edx
365 lock xchg [edi], edx
366 lock xchg [eax], esp
367 lock xchg [ebx], esp
368 lock xchg [ecx], esp
369 lock xchg [edx], esp
370 lock xchg [esp], esp
371 lock xchg [ebp], esp
372 lock xchg [esi], esp
373 lock xchg [edi], esp
374 lock xchg [eax], ebp
375 lock xchg [ebx], ebp
376 lock xchg [ecx], ebp
377 lock xchg [edx], ebp
378 lock xchg [esp], ebp
379 lock xchg [ebp], ebp
380 lock xchg [esi], ebp
381 lock xchg [edi], ebp
382 lock xchg [eax], esi
383 lock xchg [ebx], esi
384 lock xchg [ecx], esi
385 lock xchg [edx], esi
386 lock xchg [esp], esi
387 lock xchg [ebp], esi
388 lock xchg [esi], esi
389 lock xchg [edi], esi
390 lock xchg [eax], edi
391 lock xchg [ebx], edi
392 lock xchg [ecx], edi
393 lock xchg [edx], edi
394 lock xchg [esp], edi
395 lock xchg [ebp], edi
396 lock xchg [esi], edi
397 lock xchg [edi], edi
398
399 lock xchg [10], eax
400 lock xchg [10], ebx
401 lock xchg [10], ecx
402 lock xchg [10], edx
403 lock xchg [10], esp
404 lock xchg [10], ebp
405 lock xchg [10], esi
406 lock xchg [10], edi
407
408 lock xchg [10000], eax
409 lock xchg [10000], ebx
410 lock xchg [10000], ecx
411 lock xchg [10000], edx
412 lock xchg [10000], esp
413 lock xchg [10000], ebp
414 lock xchg [10000], esi
415 lock xchg [10000], edi
416
417 xchg [eax], eax
418 xchg [ebx], eax
419 xchg [ecx], eax
420 xchg [edx], eax
421 xchg [esp], eax
422 xchg [ebp], eax
423 xchg [esi], eax
424 xchg [edi], eax
425 xchg [eax], ebx
426 xchg [ebx], ebx
427 xchg [ecx], ebx
428 xchg [edx], ebx
429 xchg [esp], ebx
430 xchg [ebp], ebx
431 xchg [esi], ebx
432 xchg [edi], ebx
433 xchg [eax], ecx
434 xchg [ebx], ecx
435 xchg [ecx], ecx
436 xchg [edx], ecx
437 xchg [esp], ecx
438 xchg [ebp], ecx
439 xchg [esi], ecx
440 xchg [edi], ecx
441 xchg [eax], edx
442 xchg [ebx], edx
443 xchg [ecx], edx
444 xchg [edx], edx
445 xchg [esp], edx
446 xchg [ebp], edx
447 xchg [esi], edx
448 xchg [edi], edx
449 xchg [eax], esp
450 xchg [ebx], esp
451 xchg [ecx], esp
452 xchg [edx], esp
453 xchg [esp], esp
454 xchg [ebp], esp
455 xchg [esi], esp
456 xchg [edi], esp
457 xchg [eax], ebp
458 xchg [ebx], ebp
459 xchg [ecx], ebp
460 xchg [edx], ebp
461 xchg [esp], ebp
462 xchg [ebp], ebp
463 xchg [esi], ebp
464 xchg [edi], ebp
465 xchg [eax], esi
466 xchg [ebx], esi
467 xchg [ecx], esi
468 xchg [edx], esi
469 xchg [esp], esi
470 xchg [ebp], esi
471 xchg [esi], esi
472 xchg [edi], esi
473 xchg [eax], edi
474 xchg [ebx], edi
475 xchg [ecx], edi
476 xchg [edx], edi
477 xchg [esp], edi
478 xchg [ebp], edi
479 xchg [esi], edi
480 xchg [edi], edi
481
482 nop
483 xchg ebx, eax
484 xchg ecx, eax
485 xchg edx, eax
486 xchg esp, eax
487 xchg ebp, eax
488 xchg esi, eax
489 xchg edi, eax
490 xchg eax, ebx
491 xchg ebx, ebx
492 xchg ecx, ebx
493 xchg edx, ebx
494 xchg esp, ebx
495 xchg ebp, ebx
496 xchg esi, ebx
497 xchg edi, ebx
498 xchg eax, ecx
499 xchg ebx, ecx
500 xchg ecx, ecx
501 xchg edx, ecx
502 xchg esp, ecx
503 xchg ebp, ecx
504 xchg esi, ecx
505 xchg edi, ecx
506 xchg eax, edx
507 xchg ebx, edx
508 xchg ecx, edx
509 xchg edx, edx
510 xchg esp, edx
511 xchg ebp, edx
512 xchg esi, edx
513 xchg edi, edx
514 xchg eax, esp
515 xchg ebx, esp
516 xchg ecx, esp
517 xchg edx, esp
518 xchg esp, esp
519 xchg ebp, esp
520 xchg esi, esp
521 xchg edi, esp
522 xchg eax, ebp
523 xchg ebx, ebp
524 xchg ecx, ebp
525 xchg edx, ebp
526 xchg esp, ebp
527 xchg ebp, ebp
528 xchg esi, ebp
529 xchg edi, ebp
530 xchg eax, esi
531 xchg ebx, esi
532 xchg ecx, esi
533 xchg edx, esi
534 xchg esp, esi
535 xchg ebp, esi
536 xchg esi, esi
537 xchg edi, esi
538 xchg eax, edi
539 xchg ebx, edi
540 xchg ecx, edi
541 xchg edx, edi
542 xchg esp, edi
543 xchg ebp, edi
544 xchg esi, edi
545 xchg edi, edi
546
547 ; XOR
548 lock xor [1011], eax
549 lock xor [1011], ebx
550 lock xor [1011], ecx
551 lock xor [1011], edx
552 lock xor [1011], esp
553 lock xor [1011], ebp
554 lock xor [1011], esi
555 lock xor [1011], edi
556
557 lock xor [1011], ax
558 lock xor [1011], bx
559 lock xor [1011], cx
560 lock xor [1011], dx
561 lock xor [1011], sp
562 lock xor [1011], bp
563 lock xor [1011], si
564 lock xor [1011], di
565
566 lock xor byte [11], 10
567 lock xor word [11], 10433
568 lock xor dword [11], 10433
569
570 lock xor byte [eax], 1
571 lock xor byte [ebx], 2
572 lock xor byte [ecx], 3
573 lock xor byte [edx], 4
574 lock xor byte [esp], 5
575 lock xor byte [ebp], 6
576 lock xor byte [esi], 7
577 lock xor byte [edi], 8
578
579 lock xor word [eax], 11234
580 lock xor word [ebx], 21234
581 lock xor word [ecx], 31234
582 lock xor word [edx], 41234
583 lock xor word [esp], 51234
584 lock xor word [ebp], 61234
585 lock xor word [esi], 17234
586 lock xor word [edi], 18234
587
588 lock xor dword [eax], 1011234
589 lock xor dword [ebx], 1021234
590 lock xor dword [ecx], 1031234
591 lock xor dword [edx], 1041234
592 lock xor dword [esp], 1051234
593 lock xor dword [ebp], 1061234
594 lock xor dword [esi], 1071234
595 lock xor dword [edi], 1081234
596
597 lock xor [eax], eax
598 lock xor [eax], ebx
599 lock xor [eax], ecx
600 lock xor [eax], edx
601 lock xor [eax], esp
602 lock xor [eax], ebp
603 lock xor [eax], esi
604 lock xor [eax], edi
605 lock xor [ebx], eax
606 lock xor [ebx], ebx
607 lock xor [ebx], ecx
608 lock xor [ebx], edx
609 lock xor [ebx], esp
610 lock xor [ebx], ebp
611 lock xor [ebx], esi
612 lock xor [ebx], edi
613 lock xor [ecx], eax
614 lock xor [ecx], ebx
615 lock xor [ecx], ecx
616 lock xor [ecx], edx
617 lock xor [ecx], esp
618 lock xor [ecx], ebp
619 lock xor [ecx], esi
620 lock xor [ecx], edi
621 lock xor [edx], eax
622 lock xor [edx], ebx
623 lock xor [edx], ecx
624 lock xor [edx], edx
625 lock xor [edx], esp
626 lock xor [edx], ebp
627 lock xor [edx], esi
628 lock xor [edx], edi
629 lock xor [esp], eax
630 lock xor [esp], ebx
631 lock xor [esp], ecx
632 lock xor [esp], edx
633 lock xor [esp], esp
634 lock xor [esp], ebp
635 lock xor [esp], esi
636 lock xor [esp], edi
637 lock xor [ebp], eax
638 lock xor [ebp], ebx
639 lock xor [ebp], ecx
640 lock xor [ebp], edx
641 lock xor [ebp], esp
642 lock xor [ebp], ebp
643 lock xor [ebp], esi
644 lock xor [ebp], edi
645 lock xor [esi], eax
646 lock xor [esi], ebx
647 lock xor [esi], ecx
648 lock xor [esi], edx
649 lock xor [esi], esp
650 lock xor [esi], ebp
651 lock xor [esi], esi
652 lock xor [esi], edi
653 lock xor [edi], eax
654 lock xor [edi], ebx
655 lock xor [edi], ecx
656 lock xor [edi], edx
657 lock xor [edi], esp
658 lock xor [edi], ebp
659 lock xor [edi], esi
660 lock xor [edi], edi
661
662 lock xor [eax], ax
663 lock xor [eax], bx
664 lock xor [eax], cx
665 lock xor [eax], dx
666 lock xor [eax], sp
667 lock xor [eax], bp
668 lock xor [eax], si
669 lock xor [eax], di
670 lock xor [ebx], ax
671 lock xor [ebx], bx
672 lock xor [ebx], cx
673 lock xor [ebx], dx
674 lock xor [ebx], sp
675 lock xor [ebx], bp
676 lock xor [ebx], si
677 lock xor [ebx], di
678 lock xor [ecx], ax
679 lock xor [ecx], bx
680 lock xor [ecx], cx
681 lock xor [ecx], dx
682 lock xor [ecx], sp
683 lock xor [ecx], bp
684 lock xor [ecx], si
685 lock xor [ecx], di
686 lock xor [edx], ax
687 lock xor [edx], bx
688 lock xor [edx], cx
689 lock xor [edx], dx
690 lock xor [edx], sp
691 lock xor [edx], bp
692 lock xor [edx], si
693 lock xor [edx], di
694 lock xor [esp], ax
695 lock xor [esp], bx
696 lock xor [esp], cx
697 lock xor [esp], dx
698 lock xor [esp], sp
699 lock xor [esp], bp
700 lock xor [esp], si
701 lock xor [esp], di
702 lock xor [ebp], ax
703 lock xor [ebp], bx
704 lock xor [ebp], cx
705 lock xor [ebp], dx
706 lock xor [ebp], sp
707 lock xor [ebp], bp
708 lock xor [ebp], si
709 lock xor [ebp], di
710 lock xor [esi], ax
711 lock xor [esi], bx
712 lock xor [esi], cx
713 lock xor [esi], dx
714 lock xor [esi], sp
715 lock xor [esi], bp
716 lock xor [esi], si
717 lock xor [esi], di
718 lock xor [edi], ax
719 lock xor [edi], bx
720 lock xor [edi], cx
721 lock xor [edi], dx
722 lock xor [edi], sp
723 lock xor [edi], bp
724 lock xor [edi], si
725 lock xor [edi], di
726
727 lock xor [eax], al
728 lock xor [eax], ah
729 lock xor [eax], bl
730 lock xor [eax], bh
731 lock xor [eax], cl
732 lock xor [eax], ch
733 lock xor [eax], dl
734 lock xor [eax], dh
735 lock xor [ebx], al
736 lock xor [ebx], ah
737 lock xor [ebx], bl
738 lock xor [ebx], bh
739 lock xor [ebx], cl
740 lock xor [ebx], ch
741 lock xor [ebx], dl
742 lock xor [ebx], dh
743 lock xor [ecx], al
744 lock xor [ecx], ah
745 lock xor [ecx], bl
746 lock xor [ecx], bh
747 lock xor [ecx], cl
748 lock xor [ecx], ch
749 lock xor [ecx], dl
750 lock xor [ecx], dh
751 lock xor [edx], al
752 lock xor [edx], ah
753 lock xor [edx], bl
754 lock xor [edx], bh
755 lock xor [edx], cl
756 lock xor [edx], ch
757 lock xor [edx], dl
758 lock xor [edx], dh
759 lock xor [esp], al
760 lock xor [esp], ah
761 lock xor [esp], bl
762 lock xor [esp], bh
763 lock xor [esp], cl
764 lock xor [esp], ch
765 lock xor [esp], dl
766 lock xor [esp], dh
767 lock xor [ebp], al
768 lock xor [ebp], ah
769 lock xor [ebp], bl
770 lock xor [ebp], bh
771 lock xor [ebp], cl
772 lock xor [ebp], ch
773 lock xor [ebp], dl
774 lock xor [ebp], dh
775 lock xor [esi], al
776 lock xor [esi], ah
777 lock xor [esi], bl
778 lock xor [esi], bh
779 lock xor [esi], cl
780 lock xor [esi], ch
781 lock xor [esi], dl
782 lock xor [esi], dh
783 lock xor [edi], al
784 lock xor [edi], ah
785 lock xor [edi], bl
786 lock xor [edi], bh
787 lock xor [edi], cl
788 lock xor [edi], ch
789 lock xor [edi], dl
790 lock xor [edi], dh
791
792 xor [1011], eax
793 xor [1011], ebx
794 xor [1011], ecx
795 xor [1011], edx
796 xor [1011], esp
797 xor [1011], ebp
798 xor [1011], esi
799 xor [1011], edi
800
801 xor [1011], ax
802 xor [1011], bx
803 xor [1011], cx
804 xor [1011], dx
805 xor [1011], sp
806 xor [1011], bp
807 xor [1011], si
808 xor [1011], di
809
810 xor byte [11], 10
811 xor word [11], 10433
812 xor dword [11], 10433
813
814 xor byte [eax], 1
815 xor byte [ebx], 2
816 xor byte [ecx], 3
817 xor byte [edx], 4
818 xor byte [esp], 5
819 xor byte [ebp], 6
820 xor byte [esi], 7
821 xor byte [edi], 8
822
823 xor word [eax], 11234
824 xor word [ebx], 21234
825 xor word [ecx], 31234
826 xor word [edx], 41234
827 xor word [esp], 51234
828 xor word [ebp], 61234
829 xor word [esi], 17234
830 xor word [edi], 18234
831
832 xor dword [eax], 1011234
833 xor dword [ebx], 1021234
834 xor dword [ecx], 1031234
835 xor dword [edx], 1041234
836 xor dword [esp], 1051234
837 xor dword [ebp], 1061234
838 xor dword [esi], 1071234
839 xor dword [edi], 1081234
840
841 xor [eax], eax
842 xor [eax], ebx
843 xor [eax], ecx
844 xor [eax], edx
845 xor [eax], esp
846 xor [eax], ebp
847 xor [eax], esi
848 xor [eax], edi
849 xor [ebx], eax
850 xor [ebx], ebx
851 xor [ebx], ecx
852 xor [ebx], edx
853 xor [ebx], esp
854 xor [ebx], ebp
855 xor [ebx], esi
856 xor [ebx], edi
857 xor [ecx], eax
858 xor [ecx], ebx
859 xor [ecx], ecx
860 xor [ecx], edx
861 xor [ecx], esp
862 xor [ecx], ebp
863 xor [ecx], esi
864 xor [ecx], edi
865 xor [edx], eax
866 xor [edx], ebx
867 xor [edx], ecx
868 xor [edx], edx
869 xor [edx], esp
870 xor [edx], ebp
871 xor [edx], esi
872 xor [edx], edi
873 xor [esp], eax
874 xor [esp], ebx
875 xor [esp], ecx
876 xor [esp], edx
877 xor [esp], esp
878 xor [esp], ebp
879 xor [esp], esi
880 xor [esp], edi
881 xor [ebp], eax
882 xor [ebp], ebx
883 xor [ebp], ecx
884 xor [ebp], edx
885 xor [ebp], esp
886 xor [ebp], ebp
887 xor [ebp], esi
888 xor [ebp], edi
889 xor [esi], eax
890 xor [esi], ebx
891 xor [esi], ecx
892 xor [esi], edx
893 xor [esi], esp
894 xor [esi], ebp
895 xor [esi], esi
896 xor [esi], edi
897 xor [edi], eax
898 xor [edi], ebx
899 xor [edi], ecx
900 xor [edi], edx
901 xor [edi], esp
902 xor [edi], ebp
903 xor [edi], esi
904 xor [edi], edi
905
906 xor eax, eax
907 xor eax, ebx
908 xor eax, ecx
909 xor eax, edx
910 xor eax, esp
911 xor eax, ebp
912 xor eax, esi
913 xor eax, edi
914 xor ebx, eax
915 xor ebx, ebx
916 xor ebx, ecx
917 xor ebx, edx
918 xor ebx, esp
919 xor ebx, ebp
920 xor ebx, esi
921 xor ebx, edi
922 xor ecx, eax
923 xor ecx, ebx
924 xor ecx, ecx
925 xor ecx, edx
926 xor ecx, esp
927 xor ecx, ebp
928 xor ecx, esi
929 xor ecx, edi
930 xor edx, eax
931 xor edx, ebx
932 xor edx, ecx
933 xor edx, edx
934 xor edx, esp
935 xor edx, ebp
936 xor edx, esi
937 xor edx, edi
938 xor esp, eax
939 xor esp, ebx
940 xor esp, ecx
941 xor esp, edx
942 xor esp, esp
943 xor esp, ebp
944 xor esp, esi
945 xor esp, edi
946 xor ebp, eax
947 xor ebp, ebx
948 xor ebp, ecx
949 xor ebp, edx
950 xor ebp, esp
951 xor ebp, ebp
952 xor ebp, esi
953 xor ebp, edi
954 xor esi, eax
955 xor esi, ebx
956 xor esi, ecx
957 xor esi, edx
958 xor esi, esp
959 xor esi, ebp
960 xor esi, esi
961 xor esi, edi
962 xor edi, eax
963 xor edi, ebx
964 xor edi, ecx
965 xor edi, edx
966 xor edi, esp
967 xor edi, ebp
968 xor edi, esi
969 xor edi, edi
970%endif
Note: See TracBrowser for help on using the repository browser.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette