Home | History | Annotate | Line # | Download | only in ia64
      1  1.1  jakllsch /*	$NetBSD: palproc.h,v 1.1.1.1 2014/04/01 16:16:07 jakllsch Exp $	*/
      2  1.1  jakllsch 
      3  1.1  jakllsch //
      4  1.1  jakllsch //
      5  1.1  jakllsch //       Copyright (c) 1996-99 Intel Corp.
      6  1.1  jakllsch //
      7  1.1  jakllsch //
      8  1.1  jakllsch //Module Name:
      9  1.1  jakllsch //
     10  1.1  jakllsch //   palproc.h
     11  1.1  jakllsch //
     12  1.1  jakllsch //Abstract:
     13  1.1  jakllsch //
     14  1.1  jakllsch //   This module contains generic macros for an IA64 assembly writer.
     15  1.1  jakllsch //
     16  1.1  jakllsch //
     17  1.1  jakllsch //Revision History
     18  1.1  jakllsch //
     19  1.1  jakllsch 
     20  1.1  jakllsch #ifndef _PALPROC_H
     21  1.1  jakllsch #define _PALPROC_H
     22  1.1  jakllsch 
     23  1.1  jakllsch #define PROCEDURE_ENTRY(name)   .##text;            \
     24  1.1  jakllsch                 .##type name, @function;    \
     25  1.1  jakllsch                 .##global name;           \
     26  1.1  jakllsch                 .##proc name;           \
     27  1.1  jakllsch name:
     28  1.1  jakllsch 
     29  1.1  jakllsch #define PROCEDURE_EXIT(name)    .##endp name
     30  1.1  jakllsch 
     31  1.1  jakllsch // Note: use of NESTED_SETUP requires number of locals (l) >= 3
     32  1.1  jakllsch 
     33  1.1  jakllsch #define NESTED_SETUP(i,l,o,r) \
     34  1.1  jakllsch          alloc loc1=ar##.##pfs,i,l,o,r ;\
     35  1.1  jakllsch          mov loc0=b0
     36  1.1  jakllsch 
     37  1.1  jakllsch #define NESTED_RETURN \
     38  1.1  jakllsch          mov b0=loc0 ;\
     39  1.1  jakllsch          mov ar##.##pfs=loc1 ;;\
     40  1.1  jakllsch          br##.##ret##.##dpnt  b0;;
     41  1.1  jakllsch 
     42  1.1  jakllsch 
     43  1.1  jakllsch // defines needed in palproc.s
     44  1.1  jakllsch 
     45  1.1  jakllsch #define PAL_MC_CLEAR_LOG                                0x0015
     46  1.1  jakllsch #define PAL_MC_DRAIN                                    0x0016
     47  1.1  jakllsch #define PAL_MC_EXPECTED                                 0x0017
     48  1.1  jakllsch #define PAL_MC_DYNAMIC_STATE                            0x0018
     49  1.1  jakllsch #define PAL_MC_ERROR_INFO                               0x0019
     50  1.1  jakllsch #define PAL_MC_RESUME                                   0x001a
     51  1.1  jakllsch #define PAL_MC_REGISTER_MEM                             0x001b
     52  1.1  jakllsch 
     53  1.1  jakllsch #endif  // _PALPROC_H
     54