Home | History | Annotate | Line # | Download | only in include
asm.h revision 1.3
      1  1.3      matt /*	$NetBSD: asm.h,v 1.3 2003/10/06 05:27:19 matt Exp $	*/
      2  1.1  fredette 
      3  1.1  fredette /*	$OpenBSD: asm.h,v 1.12 2001/03/29 02:15:57 mickey Exp $	*/
      4  1.1  fredette 
      5  1.1  fredette /*
      6  1.1  fredette  * Copyright (c) 1990,1991,1994 The University of Utah and
      7  1.1  fredette  * the Computer Systems Laboratory (CSL).  All rights reserved.
      8  1.1  fredette  *
      9  1.1  fredette  * Permission to use, copy, modify and distribute this software is hereby
     10  1.1  fredette  * granted provided that (1) source code retains these copyright, permission,
     11  1.1  fredette  * and disclaimer notices, and (2) redistributions including binaries
     12  1.1  fredette  * reproduce the notices in supporting documentation, and (3) all advertising
     13  1.1  fredette  * materials mentioning features or use of this software display the following
     14  1.1  fredette  * acknowledgement: ``This product includes software developed by the
     15  1.1  fredette  * Computer Systems Laboratory at the University of Utah.''
     16  1.1  fredette  *
     17  1.1  fredette  * THE UNIVERSITY OF UTAH AND CSL ALLOW FREE USE OF THIS SOFTWARE IN ITS "AS
     18  1.1  fredette  * IS" CONDITION.  THE UNIVERSITY OF UTAH AND CSL DISCLAIM ANY LIABILITY OF
     19  1.1  fredette  * ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
     20  1.1  fredette  *
     21  1.1  fredette  * CSL requests users of this software to return to csl-dist (at) cs.utah.edu any
     22  1.1  fredette  * improvements that they make and grant CSL redistribution rights.
     23  1.1  fredette  *
     24  1.1  fredette  *	Utah $Hdr: asm.h 1.8 94/12/14$
     25  1.1  fredette  */
     26  1.1  fredette 
     27  1.1  fredette #ifndef _HPPA_ASM_H_
     28  1.1  fredette #define _HPPA_ASM_H_
     29  1.1  fredette 
     30  1.1  fredette /*
     31  1.1  fredette  *	hppa assembler definitions
     32  1.1  fredette  */
     33  1.1  fredette 
     34  1.1  fredette #ifdef __STDC__
     35  1.1  fredette #define	__CONCAT(a,b)	a ## b
     36  1.1  fredette #else
     37  1.1  fredette #define	__CONCAT(a,b)	a/**/b
     38  1.1  fredette #endif
     39  1.1  fredette 
     40  1.1  fredette #ifdef PROF
     41  1.1  fredette #define	_PROF_PROLOGUE !\
     42  1.3      matt 	stw %rp, HPPA_FRAME_CRP(%sr0,%sp)	!\
     43  1.3      matt 	ldil L%_mcount,%r1		!\
     44  1.3      matt 	ble R%_mcount(%sr0,%r1)		!\
     45  1.3      matt 	ldo HPPA_FRAME_SIZE(%sp),%sp	!\
     46  1.3      matt 	ldw HPPA_FRAME_CRP(%sr0,%sp),%rp
     47  1.1  fredette #else
     48  1.1  fredette #define	_PROF_PROLOGUE
     49  1.1  fredette #endif
     50  1.1  fredette 
     51  1.1  fredette #define	LEAF_ENTRY(x) ! .text ! .align	4	!\
     52  1.1  fredette 	.export	x, entry ! .label x ! .proc	!\
     53  1.1  fredette 	.callinfo frame=0,no_calls,save_rp	!\
     54  1.1  fredette 	.entry ! _PROF_PROLOGUE
     55  1.1  fredette 
     56  1.1  fredette #define	ENTRY(x,n) ! .text ! .align 4			!\
     57  1.1  fredette 	.export	x, entry ! .label x ! .proc		!\
     58  1.1  fredette 	.callinfo frame=n,calls, save_rp, save_sp	!\
     59  1.1  fredette 	.entry ! _PROF_PROLOGUE
     60  1.2   thorpej 
     61  1.2   thorpej #define	ENTRY_NOPROFILE(x,n) ! .text ! .align 4		!\
     62  1.2   thorpej 	.export x, entry ! .label x ! .proc		!\
     63  1.2   thorpej 	.callinfo frame=n,calls, save_rp, save_sp	!\
     64  1.2   thorpej 	.entry
     65  1.1  fredette 
     66  1.1  fredette #define ALTENTRY(x) ! .export x, entry ! .label  x
     67  1.1  fredette #define EXIT(x) ! .exit ! .procend
     68  1.1  fredette 
     69  1.1  fredette #define RCSID(x)	.text			!	\
     70  1.1  fredette 			.asciz x		!	\
     71  1.1  fredette 			.align	4
     72  1.1  fredette 
     73  1.1  fredette #define WEAK_ALIAS(alias,sym)				\
     74  1.1  fredette 	.weak alias !					\
     75  1.1  fredette 	alias = sym
     76  1.1  fredette 
     77  1.1  fredette /* XXX unimplemented */
     78  1.1  fredette #define WARN_REFERENCES(sym, msg)
     79  1.1  fredette 
     80  1.1  fredette #endif /* _HPPA_ASM_H_ */
     81