]> git.proxmox.com Git - mirror_edk2.git/blame - MdePkg/Library/BaseLib/Ipf/ReadCr.s
1. Removal PalCallStatic API
[mirror_edk2.git] / MdePkg / Library / BaseLib / Ipf / ReadCr.s
CommitLineData
aad6137d 1/// @file\r
2/// IPF specific control register reading functions\r
3///\r
4/// Copyright (c) 2008, Intel Corporation\r
5/// All rights reserved. This program and the accompanying materials\r
6/// are licensed and made available under the terms and conditions of the BSD License\r
7/// which accompanies this distribution. The full text of the license may be found at\r
8/// http://opensource.org/licenses/bsd-license.php\r
9///\r
10/// THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
11/// WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
12///\r
13///\r
14///\r
15\r
16\r
17.text\r
18.type AsmReadControlRegisterDcr, @function\r
19.proc AsmReadControlRegisterDcr\r
20//\r
21// Reads control register DCR.\r
22//\r
23// This is a worker function for AsmReadControlRegister()\r
24// when its parameter Index is IPF_CONTROL_REGISTER_DCR\r
25//\r
26// @return The 64-bit control register DCR.\r
27//\r
28AsmReadControlRegisterDcr::\r
29 mov r8 = cr.dcr;;\r
30 br.ret.dpnt b0;;\r
31.endp AsmReadControlRegisterDcr\r
32\r
33\r
34\r
35.text\r
36.type AsmReadControlRegisterItm, @function\r
37.proc AsmReadControlRegisterItm\r
38//\r
39// Reads control register ITM.\r
40//\r
41// This is a worker function for AsmReadControlRegister()\r
42// when its parameter Index is IPF_CONTROL_REGISTER_ITM\r
43//\r
44// @return The 64-bit control register ITM.\r
45//\r
46AsmReadControlRegisterItm::\r
47 mov r8 = cr.itm;;\r
48 br.ret.dpnt b0;;\r
49.endp AsmReadControlRegisterItm\r
50\r
51\r
52\r
53.text\r
54.type AsmReadControlRegisterIva, @function\r
55.proc AsmReadControlRegisterIva\r
56//\r
57// Reads control register IVA.\r
58//\r
59// This is a worker function for AsmReadControlRegister()\r
60// when its parameter Index is IPF_CONTROL_REGISTER_IVA\r
61//\r
62// @return The 64-bit control register IVA.\r
63//\r
64AsmReadControlRegisterIva::\r
65 mov r8 = cr.iva;;\r
66 br.ret.dpnt b0;;\r
67.endp AsmReadControlRegisterIva\r
68\r
69\r
70\r
71.text\r
72.type AsmReadControlRegisterPta, @function\r
73.proc AsmReadControlRegisterPta\r
74//\r
75// Reads control register PTA.\r
76//\r
77// This is a worker function for AsmReadControlRegister()\r
78// when its parameter Index is IPF_CONTROL_REGISTER_PTA\r
79//\r
80// @return The 64-bit control register PTA.\r
81//\r
82AsmReadControlRegisterPta::\r
83 mov r8 = cr.pta;;\r
84 br.ret.dpnt b0;;\r
85.endp AsmReadControlRegisterPta\r
86\r
87\r
88\r
89.text\r
90.type AsmReadControlRegisterIpsr, @function\r
91.proc AsmReadControlRegisterIpsr\r
92//\r
93// Reads control register IPSR.\r
94//\r
95// This is a worker function for AsmReadControlRegister()\r
96// when its parameter Index is IPF_CONTROL_REGISTER_IPSR\r
97//\r
98// @return The 64-bit control register IPSR.\r
99//\r
100AsmReadControlRegisterIpsr::\r
101 mov r8 = cr.ipsr;;\r
102 br.ret.dpnt b0;;\r
103.endp AsmReadControlRegisterIpsr\r
104\r
105\r
106\r
107.text\r
108.type AsmReadControlRegisterIsr, @function\r
109.proc AsmReadControlRegisterIsr\r
110//\r
111// Reads control register ISR.\r
112//\r
113// This is a worker function for AsmReadControlRegister()\r
114// when its parameter Index is IPF_CONTROL_REGISTER_ISR\r
115//\r
116// @return The 64-bit control register ISR.\r
117//\r
118AsmReadControlRegisterIsr::\r
119 mov r8 = cr.isr;;\r
120 br.ret.dpnt b0;;\r
121.endp AsmReadControlRegisterIsr\r
122\r
123\r
124\r
125.text\r
126.type AsmReadControlRegisterIip, @function\r
127.proc AsmReadControlRegisterIip\r
128//\r
129// Reads control register IIP.\r
130//\r
131// This is a worker function for AsmReadControlRegister()\r
132// when its parameter Index is IPF_CONTROL_REGISTER_IIP\r
133//\r
134// @return The 64-bit control register IIP.\r
135//\r
136AsmReadControlRegisterIip::\r
137 mov r8 = cr.iip;;\r
138 br.ret.dpnt b0;;\r
139.endp AsmReadControlRegisterIip\r
140\r
141\r
142\r
143.text\r
144.type AsmReadControlRegisterIfa, @function\r
145.proc AsmReadControlRegisterIfa\r
146//\r
147// Reads control register IFA.\r
148//\r
149// This is a worker function for AsmReadControlRegister()\r
150// when its parameter Index is IPF_CONTROL_REGISTER_IFA\r
151//\r
152// @return The 64-bit control register IFA.\r
153//\r
154AsmReadControlRegisterIfa::\r
155 mov r8 = cr.ifa;;\r
156 br.ret.dpnt b0;;\r
157.endp AsmReadControlRegisterIfa\r
158\r
159\r
160\r
161.text\r
162.type AsmReadControlRegisterItir, @function\r
163.proc AsmReadControlRegisterItir\r
164//\r
165// Reads control register ITIR.\r
166//\r
167// This is a worker function for AsmReadControlRegister()\r
168// when its parameter Index is IPF_CONTROL_REGISTER_ITIR\r
169//\r
170// @return The 64-bit control register ITIR.\r
171//\r
172AsmReadControlRegisterItir::\r
173 mov r8 = cr.itir;;\r
174 br.ret.dpnt b0;;\r
175.endp AsmReadControlRegisterItir\r
176\r
177\r
178\r
179.text\r
180.type AsmReadControlRegisterIipa, @function\r
181.proc AsmReadControlRegisterIipa\r
182//\r
183// Reads control register IIPA.\r
184//\r
185// This is a worker function for AsmReadControlRegister()\r
186// when its parameter Index is IPF_CONTROL_REGISTER_IIPA\r
187//\r
188// @return The 64-bit control register IIPA.\r
189//\r
190AsmReadControlRegisterIipa::\r
191 mov r8 = cr.iipa;;\r
192 br.ret.dpnt b0;;\r
193.endp AsmReadControlRegisterIipa\r
194\r
195\r
196\r
197.text\r
198.type AsmReadControlRegisterIfs, @function\r
199.proc AsmReadControlRegisterIfs\r
200//\r
201// Reads control register IFS.\r
202//\r
203// This is a worker function for AsmReadControlRegister()\r
204// when its parameter Index is IPF_CONTROL_REGISTER_IFS\r
205//\r
206// @return The 64-bit control register IFS.\r
207//\r
208AsmReadControlRegisterIfs::\r
209 mov r8 = cr.ifs;;\r
210 br.ret.dpnt b0;;\r
211.endp AsmReadControlRegisterIfs\r
212\r
213\r
214\r
215.text\r
216.type AsmReadControlRegisterIim, @function\r
217.proc AsmReadControlRegisterIim\r
218//\r
219// Reads control register IIM.\r
220//\r
221// This is a worker function for AsmReadControlRegister()\r
222// when its parameter Index is IPF_CONTROL_REGISTER_IIM\r
223//\r
224// @return The 64-bit control register IIM.\r
225//\r
226AsmReadControlRegisterIim::\r
227 mov r8 = cr.iim;;\r
228 br.ret.dpnt b0;;\r
229.endp AsmReadControlRegisterIim\r
230\r
231\r
232\r
233.text\r
234.type AsmReadControlRegisterIha, @function\r
235.proc AsmReadControlRegisterIha\r
236//\r
237// Reads control register IHA.\r
238//\r
239// This is a worker function for AsmReadControlRegister()\r
240// when its parameter Index is IPF_CONTROL_REGISTER_IHA\r
241//\r
242// @return The 64-bit control register IHA.\r
243//\r
244AsmReadControlRegisterIha::\r
245 mov r8 = cr.iha;;\r
246 br.ret.dpnt b0;;\r
247.endp AsmReadControlRegisterIha\r
248\r
249\r
250\r
251.text\r
252.type AsmReadControlRegisterLid, @function\r
253.proc AsmReadControlRegisterLid\r
254//\r
255// Reads control register LID.\r
256//\r
257// This is a worker function for AsmReadControlRegister()\r
258// when its parameter Index is IPF_CONTROL_REGISTER_LID\r
259//\r
260// @return The 64-bit control register LID.\r
261//\r
262AsmReadControlRegisterLid::\r
263 mov r8 = cr.lid;;\r
264 br.ret.dpnt b0;;\r
265.endp AsmReadControlRegisterLid\r
266\r
267\r
268\r
269.text\r
270.type AsmReadControlRegisterIvr, @function\r
271.proc AsmReadControlRegisterIvr\r
272//\r
273// Reads control register IVR.\r
274//\r
275// This is a worker function for AsmReadControlRegister()\r
276// when its parameter Index is IPF_CONTROL_REGISTER_IVR\r
277//\r
278// @return The 64-bit control register IVR.\r
279//\r
280AsmReadControlRegisterIvr::\r
281 mov r8 = cr.ivr;;\r
282 br.ret.dpnt b0;;\r
283.endp AsmReadControlRegisterIvr\r
284\r
285\r
286\r
287.text\r
288.type AsmReadControlRegisterTpr, @function\r
289.proc AsmReadControlRegisterTpr\r
290//\r
291// Reads control register TPR.\r
292//\r
293// This is a worker function for AsmReadControlRegister()\r
294// when its parameter Index is IPF_CONTROL_REGISTER_TPR\r
295//\r
296// @return The 64-bit control register TPR.\r
297//\r
298AsmReadControlRegisterTpr::\r
299 mov r8 = cr.tpr;;\r
300 br.ret.dpnt b0;;\r
301.endp AsmReadControlRegisterTpr\r
302\r
303\r
304\r
305.text\r
306.type AsmReadControlRegisterEoi, @function\r
307.proc AsmReadControlRegisterEoi\r
308//\r
309// Reads control register EOI.\r
310//\r
311// This is a worker function for AsmReadControlRegister()\r
312// when its parameter Index is IPF_CONTROL_REGISTER_EOI\r
313//\r
314// @return The 64-bit control register EOI.\r
315//\r
316AsmReadControlRegisterEoi::\r
317 mov r8 = cr.eoi;;\r
318 br.ret.dpnt b0;;\r
319.endp AsmReadControlRegisterEoi\r
320\r
321\r
322\r
323.text\r
324.type AsmReadControlRegisterIrr0, @function\r
325.proc AsmReadControlRegisterIrr0\r
326//\r
327// Reads control register IRR0.\r
328//\r
329// This is a worker function for AsmReadControlRegister()\r
330// when its parameter Index is IPF_CONTROL_REGISTER_IRR0\r
331//\r
332// @return The 64-bit control register IRR0.\r
333//\r
334AsmReadControlRegisterIrr0::\r
335 mov r8 = cr.irr0;;\r
336 br.ret.dpnt b0;;\r
337.endp AsmReadControlRegisterIrr0\r
338\r
339\r
340\r
341.text\r
342.type AsmReadControlRegisterIrr1, @function\r
343.proc AsmReadControlRegisterIrr1\r
344//\r
345// Reads control register IRR1.\r
346//\r
347// This is a worker function for AsmReadControlRegister()\r
348// when its parameter Index is IPF_CONTROL_REGISTER_IRR1\r
349//\r
350// @return The 64-bit control register IRR1.\r
351//\r
352AsmReadControlRegisterIrr1::\r
353 mov r8 = cr.irr1;;\r
354 br.ret.dpnt b0;;\r
355.endp AsmReadControlRegisterIrr1\r
356\r
357\r
358\r
359.text\r
360.type AsmReadControlRegisterIrr2, @function\r
361.proc AsmReadControlRegisterIrr2\r
362//\r
363// Reads control register IRR2.\r
364//\r
365// This is a worker function for AsmReadControlRegister()\r
366// when its parameter Index is IPF_CONTROL_REGISTER_IRR2\r
367//\r
368// @return The 64-bit control register IRR2.\r
369//\r
370AsmReadControlRegisterIrr2::\r
371 mov r8 = cr.irr2;;\r
372 br.ret.dpnt b0;;\r
373.endp AsmReadControlRegisterIrr2\r
374\r
375\r
376\r
377.text\r
378.type AsmReadControlRegisterIrr3, @function\r
379.proc AsmReadControlRegisterIrr3\r
380//\r
381// Reads control register IRR3.\r
382//\r
383// This is a worker function for AsmReadControlRegister()\r
384// when its parameter Index is IPF_CONTROL_REGISTER_IRR3\r
385//\r
386// @return The 64-bit control register IRR3.\r
387//\r
388AsmReadControlRegisterIrr3::\r
389 mov r8 = cr.irr3;;\r
390 br.ret.dpnt b0;;\r
391.endp AsmReadControlRegisterIrr3\r
392\r
393\r
394\r
395.text\r
396.type AsmReadControlRegisterItv, @function\r
397.proc AsmReadControlRegisterItv\r
398//\r
399// Reads control register ITV.\r
400//\r
401// This is a worker function for AsmReadControlRegister()\r
402// when its parameter Index is IPF_CONTROL_REGISTER_ITV\r
403//\r
404// @return The 64-bit control register ITV.\r
405//\r
406AsmReadControlRegisterItv::\r
407 mov r8 = cr.itv;;\r
408 br.ret.dpnt b0;;\r
409.endp AsmReadControlRegisterItv\r
410\r
411\r
412\r
413.text\r
414.type AsmReadControlRegisterPmv, @function\r
415.proc AsmReadControlRegisterPmv\r
416//\r
417// Reads control register PMV.\r
418//\r
419// This is a worker function for AsmReadControlRegister()\r
420// when its parameter Index is IPF_CONTROL_REGISTER_PMV\r
421//\r
422// @return The 64-bit control register PMV.\r
423//\r
424AsmReadControlRegisterPmv::\r
425 mov r8 = cr.pmv;;\r
426 br.ret.dpnt b0;;\r
427.endp AsmReadControlRegisterPmv\r
428\r
429\r
430\r
431.text\r
432.type AsmReadControlRegisterCmcv, @function\r
433.proc AsmReadControlRegisterCmcv\r
434//\r
435// Reads control register CMCV.\r
436//\r
437// This is a worker function for AsmReadControlRegister()\r
438// when its parameter Index is IPF_CONTROL_REGISTER_CMCV\r
439//\r
440// @return The 64-bit control register CMCV.\r
441//\r
442AsmReadControlRegisterCmcv::\r
443 mov r8 = cr.cmcv;;\r
444 br.ret.dpnt b0;;\r
445.endp AsmReadControlRegisterCmcv\r
446\r
447\r
448\r
449.text\r
450.type AsmReadControlRegisterLrr0, @function\r
451.proc AsmReadControlRegisterLrr0\r
452//\r
453// Reads control register LRR0.\r
454//\r
455// This is a worker function for AsmReadControlRegister()\r
456// when its parameter Index is IPF_CONTROL_REGISTER_LRR0\r
457//\r
458// @return The 64-bit control register LRR0.\r
459//\r
460AsmReadControlRegisterLrr0::\r
461 mov r8 = cr.lrr0;;\r
462 br.ret.dpnt b0;;\r
463.endp AsmReadControlRegisterLrr0\r
464\r
465\r
466\r
467.text\r
468.type AsmReadControlRegisterLrr1, @function\r
469.proc AsmReadControlRegisterLrr1\r
470//\r
471// Reads control register LRR1.\r
472//\r
473// This is a worker function for AsmReadControlRegister()\r
474// when its parameter Index is IPF_CONTROL_REGISTER_LRR1\r
475//\r
476// @return The 64-bit control register LRR1.\r
477//\r
478AsmReadControlRegisterLrr1::\r
479 mov r8 = cr.lrr1;;\r
480 br.ret.dpnt b0;;\r
481.endp AsmReadControlRegisterLrr1\r
482\r