1# Copyright (c) 2007 The Hewlett-Packard Development Company
2# All rights reserved.
3#
4# The license below extends only to copyright in the software and shall
5# not be construed as granting a license to any other intellectual
6# property including but not limited to intellectual property relating
7# to a hardware implementation of the functionality of the software
8# licensed hereunder. You may use the software subject to the license

--- 47 unchanged lines hidden (view full) ---

56 ldst t1, seg, riprel, disp
57 or t1, t1, t2, flags=(OF,SF,ZF,PF,CF)
58 st t1, seg, riprel, disp
59};
60
61def macroop OR_LOCKED_M_I
62{
63 limm t2, imm
64 mfence
65 ldstl t1, seg, sib, disp
66 or t1, t1, t2, flags=(OF,SF,ZF,PF,CF)
67 stul t1, seg, sib, disp
68 mfence
69};
70
71def macroop OR_LOCKED_P_I
72{
73 limm t2, imm
74 rdip t7
75 mfence
76 ldstl t1, seg, riprel, disp
77 or t1, t1, t2, flags=(OF,SF,ZF,PF,CF)
78 stul t1, seg, riprel, disp
79 mfence
80};
81
82def macroop OR_M_R
83{
84 ldst t1, seg, sib, disp
85 or t1, t1, reg, flags=(OF,SF,ZF,PF,CF)
86 st t1, seg, sib, disp
87};
88
89def macroop OR_P_R
90{
91 rdip t7
92 ldst t1, seg, riprel, disp
93 or t1, t1, reg, flags=(OF,SF,ZF,PF,CF)
94 st t1, seg, riprel, disp
95};
96
97def macroop OR_LOCKED_M_R
98{
99 mfence
100 ldstl t1, seg, sib, disp
101 or t1, t1, reg, flags=(OF,SF,ZF,PF,CF)
102 stul t1, seg, sib, disp
103 mfence
104};
105
106def macroop OR_LOCKED_P_R
107{
108 rdip t7
109 mfence
110 ldstl t1, seg, riprel, disp
111 or t1, t1, reg, flags=(OF,SF,ZF,PF,CF)
112 stul t1, seg, riprel, disp
113 mfence
114};
115
116def macroop OR_R_M
117{
118 ld t1, seg, sib, disp
119 or reg, reg, t1, flags=(OF,SF,ZF,PF,CF)
120};
121

--- 36 unchanged lines hidden (view full) ---

158 ldst t1, seg, riprel, disp
159 xor t1, t1, t2, flags=(OF,SF,ZF,PF,CF)
160 st t1, seg, riprel, disp
161};
162
163def macroop XOR_LOCKED_M_I
164{
165 limm t2, imm
166 mfence
167 ldstl t1, seg, sib, disp
168 xor t1, t1, t2, flags=(OF,SF,ZF,PF,CF)
169 stul t1, seg, sib, disp
170 mfence
171};
172
173def macroop XOR_LOCKED_P_I
174{
175 limm t2, imm
176 rdip t7
177 mfence
178 ldstl t1, seg, riprel, disp
179 xor t1, t1, t2, flags=(OF,SF,ZF,PF,CF)
180 stul t1, seg, riprel, disp
181 mfence
182};
183
184def macroop XOR_M_R
185{
186 ldst t1, seg, sib, disp
187 xor t1, t1, reg, flags=(OF,SF,ZF,PF,CF)
188 st t1, seg, sib, disp
189};
190
191def macroop XOR_P_R
192{
193 rdip t7
194 ldst t1, seg, riprel, disp
195 xor t1, t1, reg, flags=(OF,SF,ZF,PF,CF)
196 st t1, seg, riprel, disp
197};
198
199def macroop XOR_LOCKED_M_R
200{
201 mfence
202 ldstl t1, seg, sib, disp
203 xor t1, t1, reg, flags=(OF,SF,ZF,PF,CF)
204 stul t1, seg, sib, disp
205 mfence
206};
207
208def macroop XOR_LOCKED_P_R
209{
210 rdip t7
211 mfence
212 ldstl t1, seg, riprel, disp
213 xor t1, t1, reg, flags=(OF,SF,ZF,PF,CF)
214 stul t1, seg, riprel, disp
215 mfence
216};
217
218def macroop XOR_R_M
219{
220 ld t1, seg, sib, disp
221 xor reg, reg, t1, flags=(OF,SF,ZF,PF,CF)
222};
223

--- 42 unchanged lines hidden (view full) ---

266 ldst t2, seg, riprel, disp
267 limm t1, imm
268 and t2, t2, t1, flags=(OF,SF,ZF,PF,CF)
269 st t2, seg, riprel, disp
270};
271
272def macroop AND_LOCKED_M_I
273{
274 mfence
275 ldstl t2, seg, sib, disp
276 limm t1, imm
277 and t2, t2, t1, flags=(OF,SF,ZF,PF,CF)
278 stul t2, seg, sib, disp
279 mfence
280};
281
282def macroop AND_LOCKED_P_I
283{
284 rdip t7
285 mfence
286 ldstl t2, seg, riprel, disp
287 limm t1, imm
288 and t2, t2, t1, flags=(OF,SF,ZF,PF,CF)
289 stul t2, seg, riprel, disp
290 mfence
291};
292
293def macroop AND_M_R
294{
295 ldst t1, seg, sib, disp
296 and t1, t1, reg, flags=(OF,SF,ZF,PF,CF)
297 st t1, seg, sib, disp
298};
299
300def macroop AND_P_R
301{
302 rdip t7
303 ldst t1, seg, riprel, disp
304 and t1, t1, reg, flags=(OF,SF,ZF,PF,CF)
305 st t1, seg, riprel, disp
306};
307
308def macroop AND_LOCKED_M_R
309{
310 mfence
311 ldstl t1, seg, sib, disp
312 and t1, t1, reg, flags=(OF,SF,ZF,PF,CF)
313 stul t1, seg, sib, disp
314 mfence
315};
316
317def macroop AND_LOCKED_P_R
318{
319 rdip t7
320 mfence
321 ldstl t1, seg, riprel, disp
322 and t1, t1, reg, flags=(OF,SF,ZF,PF,CF)
323 stul t1, seg, riprel, disp
324 mfence
325};
326
327def macroop NOT_R
328{
329 limm t1, -1
330 xor reg, reg, t1
331};
332

--- 12 unchanged lines hidden (view full) ---

345 ldst t2, seg, riprel, disp
346 xor t2, t2, t1
347 st t2, seg, riprel, disp
348};
349
350def macroop NOT_LOCKED_M
351{
352 limm t1, -1
353 mfence
354 ldstl t2, seg, sib, disp
355 xor t2, t2, t1
356 stul t2, seg, sib, disp
357 mfence
358};
359
360def macroop NOT_LOCKED_P
361{
362 limm t1, -1
363 rdip t7
364 mfence
365 ldstl t2, seg, riprel, disp
366 xor t2, t2, t1
367 stul t2, seg, riprel, disp
368 mfence
369};
370'''