OLD | NEW |
| (Empty) |
1 @hex: | |
2 # Tests that push operand sizes work correctly. | |
3 | |
4 # The following tests the default size (which is 4 bytes). | |
5 68 03 04 05 06 | |
6 | |
7 # The following tests that rex.w doesn't effect the size. | |
8 48 68 03 04 05 06 | |
9 | |
10 # The following tests that data66 defines the size as 2 bytes. | |
11 66 68 03 04 | |
12 | |
13 # The following shows that we don't allow rex.w and a data 66 prefix. | |
14 66 48 68 03 04 | |
15 | |
16 90 90 90 90 | |
17 @rval: | |
18 VALIDATOR: 000000000000000f: 66 48 68 inva
lid | |
19 VALIDATOR: ERROR: Opcode sequence doesn't define a valid x86 instruction | |
20 VALIDATOR: 000000000000000f: 66 48 68 inva
lid | |
21 VALIDATOR: ERROR: Use of DATA16 (66) prefix for instruction not allowed by Nat
ive Client | |
22 VALIDATOR: 0000000000000012: 03 04 90 add
%eax, [%rax+%rdx*4] | |
23 VALIDATOR: ERROR: Invalid base register in memory offset | |
24 VALIDATOR: Checking jump targets: 0 to 18 | |
25 VALIDATOR: Checking that basic blocks are aligned | |
26 *** <input> IS UNSAFE *** | |
27 @dis: | |
28 0000000000000000: 68 03 04 05 06 push 0x6050403 | |
29 0000000000000005: 48 68 03 04 05 06 push 0x6050403 | |
30 000000000000000b: 66 68 03 04 push 0x403 | |
31 000000000000000f: 66 48 68 invalid | |
32 0000000000000012: 03 04 90 add %eax, [%rax
+%rdx*4] | |
33 0000000000000015: 90 nop | |
34 0000000000000016: 90 nop | |
35 0000000000000017: 90 nop | |
36 @rdfa_output: | |
37 f: [0] unrecognized instruction | |
38 return code: 1 | |
39 @validators_disagree: | |
40 errors reported by old validator but not by rdfa one: | |
41 0x12 - old validators recovers in the middle of invalid instruction | |
OLD | NEW |