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

Side by Side Diff: src/trusted/validator/validation_rewrite_64_test_data.S

Issue 1269113003: Rewrite non-temporal instructions Base URL: https://chromium.googlesource.com/native_client/src/native_client.git@master
Patch Set: Format Created 5 years, 4 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
OLDNEW
(Empty)
1 /*
2 * Copyright 2015 The Native Client Authors. All rights reserved.
3 * Use of this source code is governed by a BSD-style license that can be
4 * found in the LICENSE file.
5 */
6
7 #include "native_client/src/include/nacl_asm.h"
8
9 #define GLOBAL_SYM(name) .global IDENTIFIER(name); IDENTIFIER(name):
10
11 .data
12
13 GLOBAL_SYM(no_rewrite_code)
14 mov %edi,%edi
15 movnti %rax,0x68(%r15,%rdi,1)
16 GLOBAL_SYM(no_rewrite_code_end)
17
18 GLOBAL_SYM(no_rewrite_code_post_rewrite)
19 mov %edi,%edi
20 movnti %rax,0x68(%r15,%rdi,1)
21 GLOBAL_SYM(no_rewrite_code_post_rewrite_end)
22
23 GLOBAL_SYM(off_webstore_movnt_code)
24 mov %ebx,%ebx
25 movntq %mm0,(%rbx)
26 GLOBAL_SYM(off_webstore_movnt_code_end)
27
28 GLOBAL_SYM(off_webstore_movnt_code_post_rewrite)
29 mov %ebx,%ebx
30 movntq %mm0,(%rbx)
31 GLOBAL_SYM(off_webstore_movnt_code_post_rewrite_end)
32
33 GLOBAL_SYM(prefetchnta_code)
34 mov %edi,%edi
35 prefetchnta (%r15,%rdi,1)
36 GLOBAL_SYM(prefetchnta_code_end)
37
38 GLOBAL_SYM(prefetchnta_code_post_rewrite)
39 mov %edi,%edi
40 nop
41 nop
42 nop
43 nop
44 nop
45 GLOBAL_SYM(prefetchnta_code_post_rewrite_end)
46
47 GLOBAL_SYM(movntps_code)
48 mov %ebx,%ebx
49 movntps %xmm0,(%r15,%rbx,1)
50 GLOBAL_SYM(movntps_code_end)
51
52 GLOBAL_SYM(movntps_code_post_rewrite)
53 mov %ebx,%ebx
54 movaps %xmm0,(%r15,%rbx,1)
55 GLOBAL_SYM(movntps_code_post_rewrite_end)
56
57 GLOBAL_SYM(movnti_code)
58 mov %edi,%edi
59 movnti %rax,0x68(%r15,%rdi,1)
60 GLOBAL_SYM(movnti_code_end)
61
62 GLOBAL_SYM(movnti_code_post_rewrite)
63 mov %edi,%edi
64 mov %rax,0x68(%r15,%rdi,1)
65 nop
66 GLOBAL_SYM(movnti_code_post_rewrite_end)
67
68 GLOBAL_SYM(movnti_code2)
69 mov %edx,%edx
70 movnti %r9d,(%r15,%rdx,1)
71 GLOBAL_SYM(movnti_code2_end)
72
73 GLOBAL_SYM(movnti_code2_post_rewrite)
74 mov %edx,%edx
75 mov %r9d,(%r15,%rdx,1)
76 nop
77 GLOBAL_SYM(movnti_code2_post_rewrite_end)
78
79 GLOBAL_SYM(movnti_rip_relative_code)
80 movnti %rax,0x20(%rip)
81 GLOBAL_SYM(movnti_rip_relative_code_end)
82
83 GLOBAL_SYM(movnti_rip_relative_code_post_rewrite)
84 nop
85 mov %rax,0x20(%rip)
86 GLOBAL_SYM(movnti_rip_relative_code_post_rewrite_end)
87
88 GLOBAL_SYM(movntdq_code)
89 mov %edx,%edx
90 movntdq %xmm0,0x10(%r15,%rdx,1)
91 GLOBAL_SYM(movntdq_code_end)
92
93 GLOBAL_SYM(movntdq_code_post_rewrite)
94 mov %edx,%edx
95 movdqa %xmm0,0x10(%r15,%rdx,1)
96 GLOBAL_SYM(movntdq_code_post_rewrite_end)
97
98 GLOBAL_SYM(movntdq_code2)
99 mov %ecx,%ecx
100 movntdq %xmm15,(%r15,%rcx,1)
101 GLOBAL_SYM(movntdq_code2_end)
102
103 GLOBAL_SYM(movntdq_code2_post_rewrite)
104 mov %ecx,%ecx
105 movdqa %xmm15,(%r15,%rcx,1)
106 GLOBAL_SYM(movntdq_code2_post_rewrite_end)
107
108 GLOBAL_SYM(multiple_movnt_code)
109 mov %edi,%edi
110 movnti %rax,0x68(%r15,%rdi,1)
111 mov %edx,%edx
112 movntdq %xmm0,0x10(%r15,%rdx,1)
113 GLOBAL_SYM(multiple_movnt_code_end)
114
115 GLOBAL_SYM(multiple_movnt_code_post_rewrite)
116 mov %edi,%edi
117 mov %rax,0x68(%r15,%rdi,1)
118 nop
119 mov %edx,%edx
120 movdqa %xmm0,0x10(%r15,%rdx,1)
121 GLOBAL_SYM(multiple_movnt_code_post_rewrite_end)
122
123 /* size = 32 bytes */
124 GLOBAL_SYM(one_bundle_movnt_code)
125 mov %ecx,%ecx
126 movntdq %xmm15,(%r15,%rcx,1)
127 mov %ecx,%ecx
128 movntdq %xmm15,(%r15,%rcx,1)
129 mov %ecx,%ecx
130 movntdq %xmm15,(%r15,%rcx,1)
131 mov %ecx,%ecx
132 movntdq %xmm15,(%r15,%rcx,1)
133 GLOBAL_SYM(one_bundle_movnt_code_end)
134
135 /* size = 32 bytes */
136 GLOBAL_SYM(one_bundle_movnt_code_post_rewrite)
137 mov %ecx,%ecx
138 movdqa %xmm15,(%r15,%rcx,1)
139 mov %ecx,%ecx
140 movdqa %xmm15,(%r15,%rcx,1)
141 mov %ecx,%ecx
142 movdqa %xmm15,(%r15,%rcx,1)
143 mov %ecx,%ecx
144 movdqa %xmm15,(%r15,%rcx,1)
145 GLOBAL_SYM(one_bundle_movnt_code_post_rewrite_end)
146
147 GLOBAL_SYM(last_movnti_cross_bundle_by_one)
148 mov %ecx,%ecx /* offset 0, length 2 */
149 movntdq %xmm15,(%r15,%rcx,1) /* offset 2, length 6 */
150 mov %ecx,%ecx /* offset 8, length 2 */
151 movntdq %xmm15,(%r15,%rcx,1) /* offset 10, length 6 */
152 mov %ecx,%ecx /* offset 16, length 2 */
153 movntdq %xmm15,(%r15,%rcx,1) /* offset 18, length 6 */
154 nop /* offset 24, length 1 */
155 mov %edx,%edx /* offset 25, length 2 */
156 /* the last byte of the following instruction is at offset 32 */
157 movnti %r9d,(%r15,%rdx,1) /* offset 27, length 5 */
158 GLOBAL_SYM(last_movnti_cross_bundle_by_one_end)
159
160 GLOBAL_SYM(last_movnti_cross_bundle_by_one_post_rewrite)
161 mov %ecx,%ecx /* offset 0, length 2 */
162 movdqa %xmm15,(%r15,%rcx,1) /* offset 2, length 6 */
163 mov %ecx,%ecx /* offset 8, length 2 */
164 movdqa %xmm15,(%r15,%rcx,1) /* offset 10, length 6 */
165 mov %ecx,%ecx /* offset 16, length 2 */
166 movdqa %xmm15,(%r15,%rcx,1) /* offset 18, length 6 */
167 nop /* offset 24, length 1 */
168 mov %edx,%edx /* offset 25, length 2 */
169 mov %r9d,(%r15,%rdx,1) /* offset 27, length 4 */
170 nop /* offset 32, length 1 */
171 GLOBAL_SYM(last_movnti_cross_bundle_by_one_post_rewrite_end)
OLDNEW
« no previous file with comments | « src/trusted/validator/validation_rewrite_64_test.cc ('k') | src/trusted/validator_ragel/dfa_validate_32.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698