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