2 /// IPF specific application register reading functions
4 /// Copyright (c) 2008, Intel Corporation
5 /// All rights reserved. This program and the accompanying materials
6 /// are licensed and made available under the terms and conditions of the BSD License
7 /// which accompanies this distribution. The full text of the license may be found at
8 /// http://opensource.org/licenses/bsd-license.php
10 /// THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 /// WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
19 .type AsmReadApplicationRegisterK0, @function
20 .proc AsmReadApplicationRegisterK0
22 // Reads appplication register K0.
24 // This is a worker function for AsmReadApplicationRegister()
25 // when its parameter Index is IPF_APPLICATION_REGISTER_K0
27 // @return The 64-bit application register K0.
29 AsmReadApplicationRegisterK0::
32 .endp AsmReadApplicationRegisterK0
37 .type AsmReadApplicationRegisterK1, @function
38 .proc AsmReadApplicationRegisterK1
40 // Reads appplication register K1.
42 // This is a worker function for AsmReadApplicationRegister()
43 // when its parameter Index is IPF_APPLICATION_REGISTER_K1
45 // @return The 64-bit application register K1.
47 AsmReadApplicationRegisterK1::
50 .endp AsmReadApplicationRegisterK1
55 .type AsmReadApplicationRegisterK2, @function
56 .proc AsmReadApplicationRegisterK2
58 // Reads appplication register K2.
60 // This is a worker function for AsmReadApplicationRegister()
61 // when its parameter Index is IPF_APPLICATION_REGISTER_K2
63 // @return The 64-bit application register K2.
65 AsmReadApplicationRegisterK2::
68 .endp AsmReadApplicationRegisterK2
73 .type AsmReadApplicationRegisterK3, @function
74 .proc AsmReadApplicationRegisterK3
76 // Reads appplication register K3.
78 // This is a worker function for AsmReadApplicationRegister()
79 // when its parameter Index is IPF_APPLICATION_REGISTER_K3
81 // @return The 64-bit application register K3.
83 AsmReadApplicationRegisterK3::
86 .endp AsmReadApplicationRegisterK3
91 .type AsmReadApplicationRegisterK4, @function
92 .proc AsmReadApplicationRegisterK4
94 // Reads appplication register K4.
96 // This is a worker function for AsmReadApplicationRegister()
97 // when its parameter Index is IPF_APPLICATION_REGISTER_K4
99 // @return The 64-bit application register K4.
101 AsmReadApplicationRegisterK4::
104 .endp AsmReadApplicationRegisterK4
109 .type AsmReadApplicationRegisterK5, @function
110 .proc AsmReadApplicationRegisterK5
112 // Reads appplication register K5.
114 // This is a worker function for AsmReadApplicationRegister()
115 // when its parameter Index is IPF_APPLICATION_REGISTER_K5
117 // @return The 64-bit application register K5.
119 AsmReadApplicationRegisterK5::
122 .endp AsmReadApplicationRegisterK5
127 .type AsmReadApplicationRegisterK6, @function
128 .proc AsmReadApplicationRegisterK6
130 // Reads appplication register K6.
132 // This is a worker function for AsmReadApplicationRegister()
133 // when its parameter Index is IPF_APPLICATION_REGISTER_K6
135 // @return The 64-bit application register K6.
137 AsmReadApplicationRegisterK6::
140 .endp AsmReadApplicationRegisterK6
145 .type AsmReadApplicationRegisterK7, @function
146 .proc AsmReadApplicationRegisterK7
148 // Reads appplication register K7.
150 // This is a worker function for AsmReadApplicationRegister()
151 // when its parameter Index is IPF_APPLICATION_REGISTER_K7
153 // @return The 64-bit application register K7.
155 AsmReadApplicationRegisterK7::
158 .endp AsmReadApplicationRegisterK7
163 .type AsmReadApplicationRegisterRsc, @function
164 .proc AsmReadApplicationRegisterRsc
166 // Reads appplication register RSC.
168 // This is a worker function for AsmReadApplicationRegister()
169 // when its parameter Index is IPF_APPLICATION_REGISTER_RSC
171 // @return The 64-bit application register RSC.
173 AsmReadApplicationRegisterRsc::
176 .endp AsmReadApplicationRegisterRsc
181 .type AsmReadApplicationRegisterBsp, @function
182 .proc AsmReadApplicationRegisterBsp
184 // Reads appplication register BSP.
186 // This is a worker function for AsmReadApplicationRegister()
187 // when its parameter Index is IPF_APPLICATION_REGISTER_BSP
189 // @return The 64-bit application register BSP.
191 AsmReadApplicationRegisterBsp::
194 .endp AsmReadApplicationRegisterBsp
199 .type AsmReadApplicationRegisterBspstore, @function
200 .proc AsmReadApplicationRegisterBspstore
202 // Reads appplication register BSPSTORE.
204 // This is a worker function for AsmReadApplicationRegister()
205 // when its parameter Index is IPF_APPLICATION_REGISTER_BSPSTORE
207 // @return The 64-bit application register BSPSTORE.
209 AsmReadApplicationRegisterBspstore::
210 mov r8 = ar.bspstore;;
212 .endp AsmReadApplicationRegisterBspstore
217 .type AsmReadApplicationRegisterRnat, @function
218 .proc AsmReadApplicationRegisterRnat
220 // Reads appplication register RNAT.
222 // This is a worker function for AsmReadApplicationRegister()
223 // when its parameter Index is IPF_APPLICATION_REGISTER_RNAT
225 // @return The 64-bit application register RNAT.
227 AsmReadApplicationRegisterRnat::
230 .endp AsmReadApplicationRegisterRnat
235 .type AsmReadApplicationRegisterFcr, @function
236 .proc AsmReadApplicationRegisterFcr
238 // Reads appplication register FCR.
240 // This is a worker function for AsmReadApplicationRegister()
241 // when its parameter Index is IPF_APPLICATION_REGISTER_FCR
243 // @return The 64-bit application register FCR.
245 AsmReadApplicationRegisterFcr::
248 .endp AsmReadApplicationRegisterFcr
253 .type AsmReadApplicationRegisterEflag, @function
254 .proc AsmReadApplicationRegisterEflag
256 // Reads appplication register EFLAG.
258 // This is a worker function for AsmReadApplicationRegister()
259 // when its parameter Index is IPF_APPLICATION_REGISTER_EFLAG
261 // @return The 64-bit application register EFLAG.
263 AsmReadApplicationRegisterEflag::
266 .endp AsmReadApplicationRegisterEflag
271 .type AsmReadApplicationRegisterCsd, @function
272 .proc AsmReadApplicationRegisterCsd
274 // Reads appplication register CSD.
276 // This is a worker function for AsmReadApplicationRegister()
277 // when its parameter Index is IPF_APPLICATION_REGISTER_CSD
279 // @return The 64-bit application register CSD.
281 AsmReadApplicationRegisterCsd::
284 .endp AsmReadApplicationRegisterCsd
289 .type AsmReadApplicationRegisterSsd, @function
290 .proc AsmReadApplicationRegisterSsd
292 // Reads appplication register SSD.
294 // This is a worker function for AsmReadApplicationRegister()
295 // when its parameter Index is IPF_APPLICATION_REGISTER_SSD
297 // @return The 64-bit application register SSD.
299 AsmReadApplicationRegisterSsd::
302 .endp AsmReadApplicationRegisterSsd
307 .type AsmReadApplicationRegisterCflg, @function
308 .proc AsmReadApplicationRegisterCflg
310 // Reads appplication register CFLG.
312 // This is a worker function for AsmReadApplicationRegister()
313 // when its parameter Index is IPF_APPLICATION_REGISTER_CFLG
315 // @return The 64-bit application register CFLG.
317 AsmReadApplicationRegisterCflg::
320 .endp AsmReadApplicationRegisterCflg
325 .type AsmReadApplicationRegisterFsr, @function
326 .proc AsmReadApplicationRegisterFsr
328 // Reads appplication register FSR.
330 // This is a worker function for AsmReadApplicationRegister()
331 // when its parameter Index is IPF_APPLICATION_REGISTER_FSR
333 // @return The 64-bit application register FSR.
335 AsmReadApplicationRegisterFsr::
338 .endp AsmReadApplicationRegisterFsr
343 .type AsmReadApplicationRegisterFir, @function
344 .proc AsmReadApplicationRegisterFir
346 // Reads appplication register FIR.
348 // This is a worker function for AsmReadApplicationRegister()
349 // when its parameter Index is IPF_APPLICATION_REGISTER_FIR
351 // @return The 64-bit application register FIR.
353 AsmReadApplicationRegisterFir::
356 .endp AsmReadApplicationRegisterFir
361 .type AsmReadApplicationRegisterFdr, @function
362 .proc AsmReadApplicationRegisterFdr
364 // Reads appplication register FDR.
366 // This is a worker function for AsmReadApplicationRegister()
367 // when its parameter Index is IPF_APPLICATION_REGISTER_FDR
369 // @return The 64-bit application register FDR.
371 AsmReadApplicationRegisterFdr::
374 .endp AsmReadApplicationRegisterFdr
379 .type AsmReadApplicationRegisterCcv, @function
380 .proc AsmReadApplicationRegisterCcv
382 // Reads appplication register CCV.
384 // This is a worker function for AsmReadApplicationRegister()
385 // when its parameter Index is IPF_APPLICATION_REGISTER_CCV
387 // @return The 64-bit application register CCV.
389 AsmReadApplicationRegisterCcv::
392 .endp AsmReadApplicationRegisterCcv
397 .type AsmReadApplicationRegisterUnat, @function
398 .proc AsmReadApplicationRegisterUnat
400 // Reads appplication register UNAT.
402 // This is a worker function for AsmReadApplicationRegister()
403 // when its parameter Index is IPF_APPLICATION_REGISTER_UNAT
405 // @return The 64-bit application register UNAT.
407 AsmReadApplicationRegisterUnat::
410 .endp AsmReadApplicationRegisterUnat
415 .type AsmReadApplicationRegisterFpsr, @function
416 .proc AsmReadApplicationRegisterFpsr
418 // Reads appplication register FPSR.
420 // This is a worker function for AsmReadApplicationRegister()
421 // when its parameter Index is IPF_APPLICATION_REGISTER_FPSR
423 // @return The 64-bit application register FPSR.
425 AsmReadApplicationRegisterFpsr::
428 .endp AsmReadApplicationRegisterFpsr
433 .type AsmReadApplicationRegisterItc, @function
434 .proc AsmReadApplicationRegisterItc
436 // Reads appplication register ITC.
438 // This is a worker function for AsmReadApplicationRegister()
439 // when its parameter Index is IPF_APPLICATION_REGISTER_ITC
441 // @return The 64-bit application register ITC.
443 AsmReadApplicationRegisterItc::
446 .endp AsmReadApplicationRegisterItc
451 .type AsmReadApplicationRegisterPfs, @function
452 .proc AsmReadApplicationRegisterPfs
454 // Reads appplication register PFS.
456 // This is a worker function for AsmReadApplicationRegister()
457 // when its parameter Index is IPF_APPLICATION_REGISTER_PFS
459 // @return The 64-bit application register PFS.
461 AsmReadApplicationRegisterPfs::
464 .endp AsmReadApplicationRegisterPfs
469 .type AsmReadApplicationRegisterLc, @function
470 .proc AsmReadApplicationRegisterLc
472 // Reads appplication register LC.
474 // This is a worker function for AsmReadApplicationRegister()
475 // when its parameter Index is IPF_APPLICATION_REGISTER_LC
477 // @return The 64-bit application register LC.
479 AsmReadApplicationRegisterLc::
482 .endp AsmReadApplicationRegisterLc
487 .type AsmReadApplicationRegisterEc, @function
488 .proc AsmReadApplicationRegisterEc
490 // Reads appplication register EC.
492 // This is a worker function for AsmReadApplicationRegister()
493 // when its parameter Index is IPF_APPLICATION_REGISTER_EC
495 // @return The 64-bit application register EC.
497 AsmReadApplicationRegisterEc::
500 .endp AsmReadApplicationRegisterEc