asm.h (103436) | asm.h (115084) |
---|---|
1/* $FreeBSD: head/sys/ia64/include/asm.h 103436 2002-09-17 01:49:00Z peter $ */ | 1/* $FreeBSD: head/sys/ia64/include/asm.h 115084 2003-05-16 21:26:42Z marcel $ */ |
2/* From: NetBSD: asm.h,v 1.18 1997/11/03 04:22:06 ross Exp */ 3 4/* 5 * Copyright (c) 1991,1990,1989,1994,1995,1996 Carnegie Mellon University 6 * All Rights Reserved. 7 * 8 * Permission to use, copy, modify and distribute this software and its 9 * documentation is hereby granted, provided that both the copyright --- 136 unchanged lines hidden (view full) --- 146#define ASCIZ .asciz 147#define MSG(msg,reg,label) \ 148 addl reg,@ltoff(label),gp;; \ 149 ld8 reg=[reg];; \ 150 .data; \ 151label: ASCIZ msg; \ 152 .text; 153 | 2/* From: NetBSD: asm.h,v 1.18 1997/11/03 04:22:06 ross Exp */ 3 4/* 5 * Copyright (c) 1991,1990,1989,1994,1995,1996 Carnegie Mellon University 6 * All Rights Reserved. 7 * 8 * Permission to use, copy, modify and distribute this software and its 9 * documentation is hereby granted, provided that both the copyright --- 136 unchanged lines hidden (view full) --- 146#define ASCIZ .asciz 147#define MSG(msg,reg,label) \ 148 addl reg,@ltoff(label),gp;; \ 149 ld8 reg=[reg];; \ 150 .data; \ 151label: ASCIZ msg; \ 152 .text; 153 |
154 |
|
154/* 155 * System call glue. 156 */ | 155/* 156 * System call glue. 157 */ |
157#define SYSCALLNUM(name) \ 158 SYS_ ## name | 158#define SYSCALLNUM(name) SYS_ ## name |
159 | 159 |
160#define CALLSYS_NOERROR(name) \ 161 mov r15=SYSCALLNUM(name); \ 162 break 0x100000 ;; | 160#define CALLSYS_NOERROR(name) \ 161{ .mmi ; \ 162 alloc r9 = ar.pfs, 0, 0, 8, 0 ; \ 163 mov r31 = ar.k5 ; \ 164 mov r10 = b0 ;; } \ 165{ .mib ; \ 166 mov r8 = SYSCALLNUM(name) ; \ 167 mov b7 = r31 ; \ 168 br.call.sptk b0 = b7 ;; } |
163 | 169 |
170 |
|
164/* 165 * WEAK_ALIAS: create a weak alias (ELF only). 166 */ 167#define WEAK_ALIAS(alias,sym) \ 168 .weak alias; \ 169 alias = sym 170 171/* 172 * ID tag macros 173 */ 174#if !defined(lint) && !defined(STRIP_FBSDID) 175#define __FBSDID(s) .ident s 176#else 177#define __FBSDID(s) /* nothing */ 178#endif /* not lint and not STRIP_FBSDID */ | 171/* 172 * WEAK_ALIAS: create a weak alias (ELF only). 173 */ 174#define WEAK_ALIAS(alias,sym) \ 175 .weak alias; \ 176 alias = sym 177 178/* 179 * ID tag macros 180 */ 181#if !defined(lint) && !defined(STRIP_FBSDID) 182#define __FBSDID(s) .ident s 183#else 184#define __FBSDID(s) /* nothing */ 185#endif /* not lint and not STRIP_FBSDID */ |