~galfy/helenos/bird-port-mainline

« back to all changes in this revision

Viewing changes to boot/arch/ia64/loader/gefi/lib/ia64/palproc.h

  • Committer: Martin Decky
  • Date: 2009-08-04 11:19:19 UTC
  • Revision ID: martin@uranus.dsrg.hide.ms.mff.cuni.cz-20090804111919-evyclddlr3v5lhmp
Initial import

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
// 
 
2
// 
 
3
//       Copyright (c) 1996-99 Intel Corp.            
 
4
//         All Rights Reserved   
 
5
// 
 
6
//       INTEL CORPORATION PROPRIETARY INFORMATION
 
7
// 
 
8
//       This software is supplied under the terms of a license
 
9
//       agreement or nondisclosure agreement with Intel Corpo-
 
10
//       ration and may not be copied or disclosed except in
 
11
//       accordance with the terms of that agreement.
 
12
// 
 
13
// 
 
14
// 
 
15
//Module Name:
 
16
// 
 
17
//   palproc.h
 
18
// 
 
19
//Abstract:
 
20
// 
 
21
//   This module contains generic macros for an IA64 assembly writer.
 
22
// 
 
23
// 
 
24
//Revision History
 
25
// 
 
26
 
 
27
#ifndef _PALPROC_H
 
28
#define _PALPROC_H
 
29
 
 
30
#define PROCEDURE_ENTRY(name)   .##text;            \
 
31
                .##type name, @function;    \
 
32
                .##global name;           \
 
33
                .##proc name;           \
 
34
name:
 
35
 
 
36
#define PROCEDURE_EXIT(name)    .##endp name
 
37
 
 
38
// Note: use of NESTED_SETUP requires number of locals (l) >= 3
 
39
 
 
40
#define NESTED_SETUP(i,l,o,r) \
 
41
         alloc loc1=ar##.##pfs,i,l,o,r ;\
 
42
         mov loc0=b0
 
43
 
 
44
#define NESTED_RETURN \
 
45
         mov b0=loc0 ;\
 
46
         mov ar##.##pfs=loc1 ;;\
 
47
         br##.##ret##.##dpnt  b0;;
 
48
 
 
49
 
 
50
// defines needed in palproc.s
 
51
 
 
52
#define PAL_MC_CLEAR_LOG                                0x0015
 
53
#define PAL_MC_DRAIN                                    0x0016
 
54
#define PAL_MC_EXPECTED                                 0x0017
 
55
#define PAL_MC_DYNAMIC_STATE                            0x0018
 
56
#define PAL_MC_ERROR_INFO                               0x0019
 
57
#define PAL_MC_RESUME                                   0x001a
 
58
#define PAL_MC_REGISTER_MEM                             0x001b
 
59
 
 
60
#endif  // _PALPROC_H