| OLD | NEW |
| (Empty) |
| 1 @hex: | |
| 2 # lock add %eax,(%rsp) | |
| 3 F0 01 04 24 | |
| 4 # mov %edi,%edi | |
| 5 # lea (%r15,%rdi),%rdi | |
| 6 # rep stos %eax,%es:(%rdi) | |
| 7 89 FF | |
| 8 49 8D 3C 3F | |
| 9 F3 AB | |
| 10 # mov %edi,%edi | |
| 11 # lea (%r15,%rdi),%rdi | |
| 12 # repne scas %es:(%rdi),%al | |
| 13 89 FF | |
| 14 49 8D 3C 3F | |
| 15 F2 AE | |
| 16 # mov %ax, %ax | |
| 17 66 89 C0 | |
| 18 # rex jmp $ | |
| 19 40 EB FD | |
| 20 # Branch prediction prefixes. (for jz). | |
| 21 2e 74 02 | |
| 22 3e 74 02 | |
| 23 @rval: | |
| 24 VALIDATOR: 000000000000001d: 3e 74 02 jz 0
x22 | |
| 25 VALIDATOR: ERROR: Instruction jumps to bad address | |
| 26 VALIDATOR: Checking jump targets: 0 to 20 | |
| 27 VALIDATOR: ERROR: 1f: Bad jump target | |
| 28 VALIDATOR: Checking that basic blocks are aligned | |
| 29 *** <input> IS UNSAFE *** | |
| 30 @rvald: | |
| 31 VALIDATOR: 000000000000001d: 3e 74 02 jz 0
x22 | |
| 32 VALIDATOR: ERROR: Instruction jumps to bad address | |
| 33 VALIDATOR: Checking block alignment and jump targets: 0 to 20 | |
| 34 VALIDATOR: 000000000000001a: 2e 74 02 jz 0
x1f | |
| 35 VALIDATOR: ERROR: Doesn't jump to instruction address | |
| 36 *** <input> IS UNSAFE *** | |
| 37 @vd-rval: | |
| 38 VALIDATOR: 000000000000001d: 3e 74 02 [P]
dontcarecondjump %rip (s), 0x22 (u) | |
| 39 VALIDATOR: ERROR: Instruction jumps to bad address | |
| 40 VALIDATOR: Checking jump targets: 0 to 20 | |
| 41 VALIDATOR: ERROR: 1f: Bad jump target | |
| 42 VALIDATOR: Checking that basic blocks are aligned | |
| 43 *** <input> IS UNSAFE *** | |
| 44 @dis: | |
| 45 0000000000000000: f0 01 04 24 add [%rsp], %ea
x | |
| 46 0000000000000004: 89 ff mov %edi, %edi | |
| 47 0000000000000006: 49 8d 3c 3f lea %rdi, [%r15
+%rdi*1] | |
| 48 000000000000000a: f3 ab stosd [%rdi] | |
| 49 000000000000000c: 89 ff mov %edi, %edi | |
| 50 000000000000000e: 49 8d 3c 3f lea %rdi, [%r15
+%rdi*1] | |
| 51 0000000000000012: f2 ae scasb [%rdi] | |
| 52 0000000000000014: 66 89 c0 mov %ax, %ax | |
| 53 0000000000000017: 40 eb fd jmp 0x17 | |
| 54 000000000000001a: 2e 74 02 jz 0x1f | |
| 55 000000000000001d: 3e 74 02 jz 0x22 | |
| 56 @vdis: | |
| 57 0000000000000000: f0 01 04 24 add [%rsp], %ea
x | |
| 58 0000000000000004: 89 ff mov %edi, %edi | |
| 59 0000000000000006: 49 8d 3c 3f lea %rdi, [%r15
+%rdi*1] | |
| 60 000000000000000a: f3 ab [P] dontcare [%
rdi] (s), %eax (u) | |
| 61 000000000000000c: 89 ff mov %edi, %edi | |
| 62 000000000000000e: 49 8d 3c 3f lea %rdi, [%r15
+%rdi*1] | |
| 63 0000000000000012: f2 ae [P] dontcare %a
l (u), [%rdi] (u) | |
| 64 0000000000000014: 66 89 c0 mov %ax, %ax | |
| 65 0000000000000017: 40 eb fd [P] dontcarejum
p %rip (s), 0x17 (u) | |
| 66 000000000000001a: 2e 74 02 [P] dontcarecon
djump %rip (s), 0x1f (u) | |
| 67 000000000000001d: 3e 74 02 [P] dontcarecon
djump %rip (s), 0x22 (u) | |
| 68 @rdfa_output: | |
| 69 1a: [0] bad jump target | |
| 70 1d: [0] direct jump out of range | |
| 71 return code: 1 | |
| 72 @validators_disagree: | |
| 73 Because rdfaval reported jump location, not target. | |
| 74 ---------------------------------------------------------------------- | |
| 75 @hex: | |
| 76 # Forbidden prefixes. | |
| 77 # rep push %eax | |
| 78 F3 50 | |
| 79 # mov %edi,%edi | |
| 80 # lea (%r15,%rdi),%rdi | |
| 81 # repne stos %eax,%es:(%rdi) | |
| 82 89 FF | |
| 83 49 8D 3C 3F | |
| 84 F2 AB | |
| 85 @rval: | |
| 86 VALIDATOR: 0000000000000000: f3 50 push
%rax | |
| 87 VALIDATOR: ERROR: Use of REP (F3) prefix for instruction not allowed by Native
Client | |
| 88 VALIDATOR: 0000000000000008: f2 ab stos
d [%rdi] | |
| 89 VALIDATOR: ERROR: Use of REPNE (F2) prefix for instruction not allowed by Nati
ve Client | |
| 90 VALIDATOR: Checking jump targets: 0 to a | |
| 91 VALIDATOR: Checking that basic blocks are aligned | |
| 92 *** <input> IS UNSAFE *** | |
| 93 @rvald: | |
| 94 VALIDATOR: 0000000000000000: f3 50 push
%rax | |
| 95 VALIDATOR: ERROR: Use of REP (F3) prefix for instruction not allowed by Native
Client | |
| 96 VALIDATOR: 0000000000000008: f2 ab stos
d [%rdi] | |
| 97 VALIDATOR: ERROR: Use of REPNE (F2) prefix for instruction not allowed by Nati
ve Client | |
| 98 VALIDATOR: Checking block alignment and jump targets: 0 to a | |
| 99 *** <input> IS UNSAFE *** | |
| 100 @vd-rval: | |
| 101 VALIDATOR: 0000000000000000: f3 50 push
%rax | |
| 102 VALIDATOR: ERROR: Use of REP (F3) prefix for instruction not allowed by Native
Client | |
| 103 VALIDATOR: 0000000000000008: f2 ab [P]
dontcare [%rdi] (s), %eax (u) | |
| 104 VALIDATOR: ERROR: Use of REPNE (F2) prefix for instruction not allowed by Nati
ve Client | |
| 105 VALIDATOR: Checking jump targets: 0 to a | |
| 106 VALIDATOR: Checking that basic blocks are aligned | |
| 107 *** <input> IS UNSAFE *** | |
| 108 @dis: | |
| 109 0000000000000000: f3 50 push %rax | |
| 110 0000000000000002: 89 ff mov %edi, %edi | |
| 111 0000000000000004: 49 8d 3c 3f lea %rdi, [%r15
+%rdi*1] | |
| 112 0000000000000008: f2 ab stosd [%rdi] | |
| 113 @vdis: | |
| 114 0000000000000000: f3 50 push %rax | |
| 115 0000000000000002: 89 ff mov %edi, %edi | |
| 116 0000000000000004: 49 8d 3c 3f lea %rdi, [%r15
+%rdi*1] | |
| 117 0000000000000008: f2 ab [P] dontcare [%
rdi] (s), %eax (u) | |
| 118 @rdfa_output: | |
| 119 0: [0] unrecognized instruction | |
| 120 8: [1] unrecognized instruction | |
| 121 return code: 1 | |
| 122 ---------------------------------------------------------------------- | |
| 123 @hex: | |
| 124 # fs mov %eax,%eax | |
| 125 64 89 C0 | |
| 126 # gs mov %eax,%eax | |
| 127 65 89 C0 | |
| 128 @rval: | |
| 129 VALIDATOR: 0000000000000000: 64 89 c0 mov
%eax, %eax | |
| 130 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 131 VALIDATOR: 0000000000000003: 65 89 c0 mov
%eax, %eax | |
| 132 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 133 VALIDATOR: Checking jump targets: 0 to 6 | |
| 134 VALIDATOR: Checking that basic blocks are aligned | |
| 135 *** <input> IS UNSAFE *** | |
| 136 @rvald: | |
| 137 VALIDATOR: 0000000000000000: 64 89 c0 mov
%eax, %eax | |
| 138 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 139 VALIDATOR: 0000000000000003: 65 89 c0 mov
%eax, %eax | |
| 140 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 141 VALIDATOR: Checking block alignment and jump targets: 0 to 6 | |
| 142 *** <input> IS UNSAFE *** | |
| 143 @vd-rval: | |
| 144 VALIDATOR: 0000000000000000: 64 89 c0 mov
%eax, %eax | |
| 145 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 146 VALIDATOR: 0000000000000003: 65 89 c0 mov
%eax, %eax | |
| 147 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 148 VALIDATOR: Checking jump targets: 0 to 6 | |
| 149 VALIDATOR: Checking that basic blocks are aligned | |
| 150 *** <input> IS UNSAFE *** | |
| 151 @dis: | |
| 152 0000000000000000: 64 89 c0 mov %eax, %eax | |
| 153 0000000000000003: 65 89 c0 mov %eax, %eax | |
| 154 @vdis: | |
| 155 0000000000000000: 64 89 c0 mov %eax, %eax | |
| 156 0000000000000003: 65 89 c0 mov %eax, %eax | |
| 157 @rdfa_output: | |
| 158 0: [0] unrecognized instruction | |
| 159 3: [1] unrecognized instruction | |
| 160 return code: 1 | |
| 161 ---------------------------------------------------------------------- | |
| 162 @hex: | |
| 163 # mov %eax,%cs:(%rsp) | |
| 164 2E 89 04 24 | |
| 165 # mov %eax,%ss:(%rsp) | |
| 166 36 89 04 24 | |
| 167 # mov %eax,%ds:(%rsp) | |
| 168 3E 89 04 24 | |
| 169 # mov %eax,%es:(%rsp) | |
| 170 26 89 04 24 | |
| 171 # mov %eax,%fs:(%rsp) | |
| 172 64 89 04 24 | |
| 173 # mov %eax,%gs:(%rsp) | |
| 174 65 89 04 24 | |
| 175 # mov %eax,(%esp) | |
| 176 67 89 04 24 | |
| 177 @rval: | |
| 178 VALIDATOR: 0000000000000000: 2e 89 04 24 mov
[%rsp], %eax | |
| 179 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 180 VALIDATOR: 0000000000000004: 36 89 04 24 mov
[%rsp], %eax | |
| 181 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 182 VALIDATOR: 0000000000000008: 3e 89 04 24 mov
[%rsp], %eax | |
| 183 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 184 VALIDATOR: 000000000000000c: 26 89 04 24 mov
[%rsp], %eax | |
| 185 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 186 VALIDATOR: 0000000000000010: 64 89 04 24 mov
%fs:[%rsp], %eax | |
| 187 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 188 VALIDATOR: 0000000000000010: 64 89 04 24 mov
%fs:[%rsp], %eax | |
| 189 VALIDATOR: ERROR: Segment memory reference not allowed | |
| 190 VALIDATOR: 0000000000000014: 65 89 04 24 mov
%gs:[%rsp], %eax | |
| 191 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 192 VALIDATOR: 0000000000000014: 65 89 04 24 mov
%gs:[%rsp], %eax | |
| 193 VALIDATOR: ERROR: Segment memory reference not allowed | |
| 194 VALIDATOR: 0000000000000018: 67 89 04 24 mov
[%esp], %eax | |
| 195 VALIDATOR: ERROR: Use of 67 (ADDR16) prefix not allowed by Native Client | |
| 196 VALIDATOR: 0000000000000018: 67 89 04 24 mov
[%esp], %eax | |
| 197 VALIDATOR: ERROR: Assignment to non-64 bit memory address | |
| 198 VALIDATOR: Checking jump targets: 0 to 1c | |
| 199 VALIDATOR: Checking that basic blocks are aligned | |
| 200 *** <input> IS UNSAFE *** | |
| 201 @rvald: | |
| 202 VALIDATOR: 0000000000000000: 2e 89 04 24 mov
[%rsp], %eax | |
| 203 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 204 VALIDATOR: 0000000000000004: 36 89 04 24 mov
[%rsp], %eax | |
| 205 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 206 VALIDATOR: 0000000000000008: 3e 89 04 24 mov
[%rsp], %eax | |
| 207 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 208 VALIDATOR: 000000000000000c: 26 89 04 24 mov
[%rsp], %eax | |
| 209 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 210 VALIDATOR: 0000000000000010: 64 89 04 24 mov
%fs:[%rsp], %eax | |
| 211 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 212 VALIDATOR: 0000000000000010: 64 89 04 24 mov
%fs:[%rsp], %eax | |
| 213 VALIDATOR: ERROR: Segment memory reference not allowed | |
| 214 VALIDATOR: 0000000000000014: 65 89 04 24 mov
%gs:[%rsp], %eax | |
| 215 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 216 VALIDATOR: 0000000000000014: 65 89 04 24 mov
%gs:[%rsp], %eax | |
| 217 VALIDATOR: ERROR: Segment memory reference not allowed | |
| 218 VALIDATOR: 0000000000000018: 67 89 04 24 mov
[%esp], %eax | |
| 219 VALIDATOR: ERROR: Use of 67 (ADDR16) prefix not allowed by Native Client | |
| 220 VALIDATOR: 0000000000000018: 67 89 04 24 mov
[%esp], %eax | |
| 221 VALIDATOR: ERROR: Assignment to non-64 bit memory address | |
| 222 VALIDATOR: Checking block alignment and jump targets: 0 to 1c | |
| 223 *** <input> IS UNSAFE *** | |
| 224 @vd-rval: | |
| 225 VALIDATOR: 0000000000000000: 2e 89 04 24 mov
[%rsp], %eax | |
| 226 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 227 VALIDATOR: 0000000000000004: 36 89 04 24 mov
[%rsp], %eax | |
| 228 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 229 VALIDATOR: 0000000000000008: 3e 89 04 24 mov
[%rsp], %eax | |
| 230 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 231 VALIDATOR: 000000000000000c: 26 89 04 24 mov
[%rsp], %eax | |
| 232 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 233 VALIDATOR: 0000000000000010: 64 89 04 24 mov
%fs:[%rsp], %eax | |
| 234 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 235 VALIDATOR: 0000000000000010: 64 89 04 24 mov
%fs:[%rsp], %eax | |
| 236 VALIDATOR: ERROR: Segment memory reference not allowed | |
| 237 VALIDATOR: 0000000000000014: 65 89 04 24 mov
%gs:[%rsp], %eax | |
| 238 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 239 VALIDATOR: 0000000000000014: 65 89 04 24 mov
%gs:[%rsp], %eax | |
| 240 VALIDATOR: ERROR: Segment memory reference not allowed | |
| 241 VALIDATOR: 0000000000000018: 67 89 04 24 mov
[%esp], %eax | |
| 242 VALIDATOR: ERROR: Use of 67 (ADDR16) prefix not allowed by Native Client | |
| 243 VALIDATOR: 0000000000000018: 67 89 04 24 mov
[%esp], %eax | |
| 244 VALIDATOR: ERROR: Assignment to non-64 bit memory address | |
| 245 VALIDATOR: Checking jump targets: 0 to 1c | |
| 246 VALIDATOR: Checking that basic blocks are aligned | |
| 247 *** <input> IS UNSAFE *** | |
| 248 @dis: | |
| 249 0000000000000000: 2e 89 04 24 mov [%rsp], %ea
x | |
| 250 0000000000000004: 36 89 04 24 mov [%rsp], %ea
x | |
| 251 0000000000000008: 3e 89 04 24 mov [%rsp], %ea
x | |
| 252 000000000000000c: 26 89 04 24 mov [%rsp], %ea
x | |
| 253 0000000000000010: 64 89 04 24 mov %fs:[%rsp],
%eax | |
| 254 0000000000000014: 65 89 04 24 mov %gs:[%rsp],
%eax | |
| 255 0000000000000018: 67 89 04 24 mov [%esp], %ea
x | |
| 256 @vdis: | |
| 257 0000000000000000: 2e 89 04 24 mov [%rsp], %ea
x | |
| 258 0000000000000004: 36 89 04 24 mov [%rsp], %ea
x | |
| 259 0000000000000008: 3e 89 04 24 mov [%rsp], %ea
x | |
| 260 000000000000000c: 26 89 04 24 mov [%rsp], %ea
x | |
| 261 0000000000000010: 64 89 04 24 mov %fs:[%rsp],
%eax | |
| 262 0000000000000014: 65 89 04 24 mov %gs:[%rsp],
%eax | |
| 263 0000000000000018: 67 89 04 24 mov [%esp], %ea
x | |
| 264 @rdfa_output: | |
| 265 0: [0] unrecognized instruction | |
| 266 4: [1] unrecognized instruction | |
| 267 8: [2] unrecognized instruction | |
| 268 c: [3] unrecognized instruction | |
| 269 10: [4] unrecognized instruction | |
| 270 14: [5] unrecognized instruction | |
| 271 18: [6] unrecognized instruction | |
| 272 return code: 1 | |
| 273 ---------------------------------------------------------------------- | |
| 274 @hex: | |
| 275 # cs jmp $ | |
| 276 2E EB FD | |
| 277 # ss jmp $ | |
| 278 36 EB FD | |
| 279 # ds jmp $ | |
| 280 3E EB FD | |
| 281 # es jmp $ | |
| 282 26 EB FD | |
| 283 # fs jmp $ | |
| 284 64 EB FD | |
| 285 # gs jmp $ | |
| 286 65 EB FD | |
| 287 # jmp dword $ | |
| 288 66 EB FD | |
| 289 # ss jz $ | |
| 290 36 74 02 | |
| 291 # fs jz $ | |
| 292 64 74 02 | |
| 293 # gs jz $ | |
| 294 65 74 02 | |
| 295 | |
| 296 # nops for bundle alignment | |
| 297 90 90 | |
| 298 | |
| 299 # es jz $ | |
| 300 26 74 02 | |
| 301 @rval: | |
| 302 VALIDATOR: 0000000000000000: 2e eb fd jmp
0x0 | |
| 303 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 304 VALIDATOR: 0000000000000003: 36 eb fd jmp
0x3 | |
| 305 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 306 VALIDATOR: 0000000000000006: 3e eb fd jmp
0x6 | |
| 307 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 308 VALIDATOR: 0000000000000009: 26 eb fd jmp
0x9 | |
| 309 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 310 VALIDATOR: 000000000000000c: 64 eb fd jmp
0xc | |
| 311 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 312 VALIDATOR: 000000000000000f: 65 eb fd jmp
0xf | |
| 313 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 314 VALIDATOR: 0000000000000012: 66 eb fd jmp
0x12 | |
| 315 VALIDATOR: ERROR: Use of DATA16 (66) prefix for instruction not allowed by Nat
ive Client | |
| 316 VALIDATOR: 0000000000000015: 36 74 02 jz 0
x1a | |
| 317 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 318 VALIDATOR: 0000000000000018: 64 74 02 jz 0
x1d | |
| 319 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 320 VALIDATOR: 000000000000001b: 65 74 02 jz 0
x20 | |
| 321 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 322 VALIDATOR: 0000000000000020: 26 74 02 jz 0
x25 | |
| 323 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 324 VALIDATOR: 0000000000000020: 26 74 02 jz 0
x25 | |
| 325 VALIDATOR: ERROR: Instruction jumps to bad address | |
| 326 VALIDATOR: Checking jump targets: 0 to 23 | |
| 327 VALIDATOR: ERROR: 1a: Bad jump target | |
| 328 VALIDATOR: ERROR: 1d: Bad jump target | |
| 329 VALIDATOR: Checking that basic blocks are aligned | |
| 330 *** <input> IS UNSAFE *** | |
| 331 @rvald: | |
| 332 VALIDATOR: 0000000000000000: 2e eb fd jmp
0x0 | |
| 333 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 334 VALIDATOR: 0000000000000003: 36 eb fd jmp
0x3 | |
| 335 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 336 VALIDATOR: 0000000000000006: 3e eb fd jmp
0x6 | |
| 337 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 338 VALIDATOR: 0000000000000009: 26 eb fd jmp
0x9 | |
| 339 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 340 VALIDATOR: 000000000000000c: 64 eb fd jmp
0xc | |
| 341 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 342 VALIDATOR: 000000000000000f: 65 eb fd jmp
0xf | |
| 343 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 344 VALIDATOR: 0000000000000012: 66 eb fd jmp
0x12 | |
| 345 VALIDATOR: ERROR: Use of DATA16 (66) prefix for instruction not allowed by Nat
ive Client | |
| 346 VALIDATOR: 0000000000000015: 36 74 02 jz 0
x1a | |
| 347 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 348 VALIDATOR: 0000000000000018: 64 74 02 jz 0
x1d | |
| 349 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 350 VALIDATOR: 000000000000001b: 65 74 02 jz 0
x20 | |
| 351 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 352 VALIDATOR: 0000000000000020: 26 74 02 jz 0
x25 | |
| 353 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 354 VALIDATOR: 0000000000000020: 26 74 02 jz 0
x25 | |
| 355 VALIDATOR: ERROR: Instruction jumps to bad address | |
| 356 VALIDATOR: Checking block alignment and jump targets: 0 to 23 | |
| 357 VALIDATOR: 0000000000000015: 36 74 02 jz 0
x1a | |
| 358 VALIDATOR: ERROR: Doesn't jump to instruction address | |
| 359 VALIDATOR: 0000000000000018: 64 74 02 jz 0
x1d | |
| 360 VALIDATOR: ERROR: Doesn't jump to instruction address | |
| 361 *** <input> IS UNSAFE *** | |
| 362 @vd-rval: | |
| 363 VALIDATOR: 0000000000000000: 2e eb fd [P]
dontcarejump %rip (s), 0x0 (u) | |
| 364 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 365 VALIDATOR: 0000000000000003: 36 eb fd [P]
dontcarejump %rip (s), 0x3 (u) | |
| 366 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 367 VALIDATOR: 0000000000000006: 3e eb fd [P]
dontcarejump %rip (s), 0x6 (u) | |
| 368 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 369 VALIDATOR: 0000000000000009: 26 eb fd [P]
dontcarejump %rip (s), 0x9 (u) | |
| 370 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 371 VALIDATOR: 000000000000000c: 64 eb fd [P]
dontcarejump %rip (s), 0xc (u) | |
| 372 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 373 VALIDATOR: 000000000000000f: 65 eb fd [P]
dontcarejump %rip (s), 0xf (u) | |
| 374 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 375 VALIDATOR: 0000000000000012: 66 eb fd [P]
dontcarejump %rip (s), 0x12 (u) | |
| 376 VALIDATOR: ERROR: Use of DATA16 (66) prefix for instruction not allowed by Nat
ive Client | |
| 377 VALIDATOR: 0000000000000015: 36 74 02 [P]
dontcarecondjump %rip (s), 0x1a (u) | |
| 378 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 379 VALIDATOR: 0000000000000018: 64 74 02 [P]
dontcarecondjump %rip (s), 0x1d (u) | |
| 380 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 381 VALIDATOR: 000000000000001b: 65 74 02 [P]
dontcarecondjump %rip (s), 0x20 (u) | |
| 382 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 383 VALIDATOR: 0000000000000020: 26 74 02 [P]
dontcarecondjump %rip (s), 0x25 (u) | |
| 384 VALIDATOR: ERROR: Uses a segment prefix byte not allowed by Native Client | |
| 385 VALIDATOR: 0000000000000020: 26 74 02 [P]
dontcarecondjump %rip (s), 0x25 (u) | |
| 386 VALIDATOR: ERROR: Instruction jumps to bad address | |
| 387 VALIDATOR: Checking jump targets: 0 to 23 | |
| 388 VALIDATOR: ERROR: 1a: Bad jump target | |
| 389 VALIDATOR: ERROR: 1d: Bad jump target | |
| 390 VALIDATOR: Checking that basic blocks are aligned | |
| 391 *** <input> IS UNSAFE *** | |
| 392 @dis: | |
| 393 0000000000000000: 2e eb fd jmp 0x0 | |
| 394 0000000000000003: 36 eb fd jmp 0x3 | |
| 395 0000000000000006: 3e eb fd jmp 0x6 | |
| 396 0000000000000009: 26 eb fd jmp 0x9 | |
| 397 000000000000000c: 64 eb fd jmp 0xc | |
| 398 000000000000000f: 65 eb fd jmp 0xf | |
| 399 0000000000000012: 66 eb fd jmp 0x12 | |
| 400 0000000000000015: 36 74 02 jz 0x1a | |
| 401 0000000000000018: 64 74 02 jz 0x1d | |
| 402 000000000000001b: 65 74 02 jz 0x20 | |
| 403 000000000000001e: 90 nop | |
| 404 000000000000001f: 90 nop | |
| 405 0000000000000020: 26 74 02 jz 0x25 | |
| 406 @vdis: | |
| 407 0000000000000000: 2e eb fd [P] dontcarejum
p %rip (s), 0x0 (u) | |
| 408 0000000000000003: 36 eb fd [P] dontcarejum
p %rip (s), 0x3 (u) | |
| 409 0000000000000006: 3e eb fd [P] dontcarejum
p %rip (s), 0x6 (u) | |
| 410 0000000000000009: 26 eb fd [P] dontcarejum
p %rip (s), 0x9 (u) | |
| 411 000000000000000c: 64 eb fd [P] dontcarejum
p %rip (s), 0xc (u) | |
| 412 000000000000000f: 65 eb fd [P] dontcarejum
p %rip (s), 0xf (u) | |
| 413 0000000000000012: 66 eb fd [P] dontcarejum
p %rip (s), 0x12 (u) | |
| 414 0000000000000015: 36 74 02 [P] dontcarecon
djump %rip (s), 0x1a (u) | |
| 415 0000000000000018: 64 74 02 [P] dontcarecon
djump %rip (s), 0x1d (u) | |
| 416 000000000000001b: 65 74 02 [P] dontcarecon
djump %rip (s), 0x20 (u) | |
| 417 000000000000001e: 90 [P] dontcare | |
| 418 000000000000001f: 90 [P] dontcare | |
| 419 0000000000000020: 26 74 02 [P] dontcarecon
djump %rip (s), 0x25 (u) | |
| 420 @rdfa_output: | |
| 421 0: [0] unrecognized instruction | |
| 422 3: [1] unrecognized instruction | |
| 423 6: [2] unrecognized instruction | |
| 424 9: [3] unrecognized instruction | |
| 425 c: [4] unrecognized instruction | |
| 426 f: [5] unrecognized instruction | |
| 427 12: [6] unrecognized instruction | |
| 428 15: [7] unrecognized instruction | |
| 429 18: [8] unrecognized instruction | |
| 430 1b: [9] unrecognized instruction | |
| 431 20: [0] unrecognized instruction | |
| 432 return code: 1 | |
| 433 @validators_disagree: | |
| 434 errors reported by old validator but not by rdfa one: | |
| 435 0x1a | |
| 436 0x1d | |
| 437 These are bad jump targets. RDFA validator did not recognize these jumps with | |
| 438 prefixes at all, so these offsets are nor reported. | |
| 439 ---------------------------------------------------------------------- | |
| 440 @hex: | |
| 441 # Mandatory prefix. | |
| 442 # phaddw %xmm0,%xmm1 | |
| 443 66 0f 38 01 c8 | |
| 444 # addsd %xmm0,%xmm1 | |
| 445 f2 0f 58 c8 | |
| 446 # cmpeqss %xmm0,%xmm1 | |
| 447 f3 0f c2 c8 00 | |
| 448 @rval: | |
| 449 VALIDATOR: Checking jump targets: 0 to e | |
| 450 VALIDATOR: Checking that basic blocks are aligned | |
| 451 *** <input> is safe *** | |
| 452 @rvald: | |
| 453 VALIDATOR: Checking block alignment and jump targets: 0 to e | |
| 454 *** <input> is safe *** | |
| 455 @vd-rval: | |
| 456 VALIDATOR: Checking jump targets: 0 to e | |
| 457 VALIDATOR: Checking that basic blocks are aligned | |
| 458 *** <input> is safe *** | |
| 459 @dis: | |
| 460 0000000000000000: 66 0f 38 01 c8 phaddw %xmm1, %
xmm0 | |
| 461 0000000000000005: f2 0f 58 c8 addsd %xmm1, %x
mm0 | |
| 462 0000000000000009: f3 0f c2 c8 00 cmpss %xmm1, %x
mm0, 0x0 | |
| 463 @vdis: | |
| 464 0000000000000000: 66 0f 38 01 c8 [P] dontcare %x
mm0 (u) | |
| 465 0000000000000005: f2 0f 58 c8 [P] dontcare %x
mm0 (u) | |
| 466 0000000000000009: f3 0f c2 c8 00 [P] dontcare %x
mm0 (u), 0x0 (u) | |
| 467 @rdfa_output: | |
| 468 return code: 0 | |
| OLD | NEW |