Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(71)

Side by Side Diff: src/trusted/validator_x86/testdata/64/rep_tests.tf

Issue 10908137: (abandoned) Validator tests: convert hexes to TFs and run on bots (for prod. validator only) (Closed) Base URL: svn://svn.chromium.org/native_client/trunk/src/native_client
Patch Set: restore 'read overflow' and 'SegmentationError' Created 8 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 BITS: 64
2 OUTCOME: invalid
3
4 # This file does some simple tests to see if we recognize when the REP/REPNE (F2 F3)
5 # prefix bytes are allowed.
6
7 # The following is an example of an instruction without the REP/REPNE prefix.
8 # add %al, %al
9 asm: add %al,%al
10 hex: 00 c0
11
12
13 # The following is the same instruction with an illegal REP prefix.
14 hex: f3 00 c0
15 nc_out: ERROR: Use of REP (F3) prefix for instruction not allowed by Native Clie nt
16
17
18 # The following is the same instruction with an illegal REPNE prefix.
19 hex: f2 00 c0
20 nc_out: ERROR: Use of REPNE (F2) prefix for instruction not allowed by Native Cl ient
21
22
23 # The following is an example of a multibyte instruction explicitly requiring
24 # a REP prefix.
25 # movss %xmm0, [%rdx]
26 asm: movss (%rdx),%xmm0
27 hex: f3 0f 10 02
28 nc_out: ERROR: Invalid base register in memory offset
29
30
31 # The following is an example of a multibyte instruction explicitly requiring
32 # a REPNE prefix.
33 # movsd [%rsp+0x10], %xmm2
34 asm: movsd %xmm2,0x10(%rsp)
35 hex: f2 0f 11 54 24 10
36
37
38 # The following is an example of an instruction that can get a REP prefix.
39 # insb
40 asm: insb (%dx),%es:(%rdi)
41 hex: 6c
42 nc_out: ERROR: This instruction has been marked illegal by Native Client
43 nc_out: ERROR: Segment memory reference not allowed
44
45
46 # The same instrucition with a REP prefix.
47 asm: rep insb (%dx),%es:(%rdi)
48 hex: f3 6c
49 nc_out: ERROR: This instruction has been marked illegal by Native Client
50 nc_out: ERROR: Segment memory reference not allowed
51
52
53 # The same instruction with a REPNE prefix.
54 asm: repnz insb (%dx),%es:(%rdi)
55 hex: f2 6c
56 nc_out: ERROR: This instruction has been marked illegal by Native Client
57 nc_out: ERROR: Use of REPNE (F2) prefix for instruction not allowed by Native Cl ient
58 nc_out: ERROR: Segment memory reference not allowed
59
60
61 # The following is an example of an instruction that can get a REP/REPNE prefix.
62 # cmpsb
63 asm: cmpsb %es:(%rdi),%ds:(%rsi)
64 hex: a6
65 nc_out: ERROR: Segment memory reference not allowed
66 nc_out: ERROR: Segment memory reference not allowed
67
68
69 # The same instruction with a REP prefix.
70 asm: repz cmpsb %es:(%rdi),%ds:(%rsi)
71 hex: f3 a6
72 nc_out: ERROR: Segment memory reference not allowed
73 nc_out: ERROR: Segment memory reference not allowed
74
75
76 # The same instruction with a REPNE prefix
77 asm: repnz cmpsb %es:(%rdi),%ds:(%rsi)
78 hex: f2 a6
79 nc_out: ERROR: Segment memory reference not allowed
80 nc_out: ERROR: Segment memory reference not allowed
81
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698