asm.h (209975) | asm.h (218824) |
---|---|
1/*- 2 * Copyright (C) 1995, 1996 Wolfgang Solfrank. 3 * Copyright (C) 1995, 1996 TooLs GmbH. 4 * All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions 8 * are met: --- 15 unchanged lines hidden (view full) --- 24 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 25 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 26 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 27 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 28 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF 29 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 30 * 31 * $NetBSD: asm.h,v 1.6.18.1 2000/07/25 08:37:14 kleink Exp $ | 1/*- 2 * Copyright (C) 1995, 1996 Wolfgang Solfrank. 3 * Copyright (C) 1995, 1996 TooLs GmbH. 4 * All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions 8 * are met: --- 15 unchanged lines hidden (view full) --- 24 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 25 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 26 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 27 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 28 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF 29 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 30 * 31 * $NetBSD: asm.h,v 1.6.18.1 2000/07/25 08:37:14 kleink Exp $ |
32 * $FreeBSD: head/sys/powerpc/include/asm.h 209975 2010-07-13 05:32:19Z nwhitehorn $ | 32 * $FreeBSD: head/sys/powerpc/include/asm.h 218824 2011-02-18 21:44:53Z nwhitehorn $ |
33 */ 34 35#ifndef _MACHINE_ASM_H_ 36#define _MACHINE_ASM_H_ 37 38#include <sys/cdefs.h> 39 | 33 */ 34 35#ifndef _MACHINE_ASM_H_ 36#define _MACHINE_ASM_H_ 37 38#include <sys/cdefs.h> 39 |
40#ifdef PIC | 40#if defined(PIC) && !defined(__powerpc64__) |
41#define PIC_PROLOGUE XXX 42#define PIC_EPILOGUE XXX 43#define PIC_PLT(x) x@plt 44#ifdef __STDC__ 45#define PIC_GOT(x) XXX 46#else /* not __STDC__ */ 47#define PIC_GOT(x) XXX 48#endif /* __STDC__ */ 49#else 50#define PIC_PROLOGUE 51#define PIC_EPILOGUE 52#define PIC_PLT(x) x 53#define PIC_GOT(x) x 54#endif 55 | 41#define PIC_PROLOGUE XXX 42#define PIC_EPILOGUE XXX 43#define PIC_PLT(x) x@plt 44#ifdef __STDC__ 45#define PIC_GOT(x) XXX 46#else /* not __STDC__ */ 47#define PIC_GOT(x) XXX 48#endif /* __STDC__ */ 49#else 50#define PIC_PROLOGUE 51#define PIC_EPILOGUE 52#define PIC_PLT(x) x 53#define PIC_GOT(x) x 54#endif 55 |
56#ifdef __powerpc64__ 57#undef PIC_PLT 58#define PIC_PLT(x) __CONCAT(.,x) 59#endif 60 | |
61#define CNAME(csym) csym 62#define ASMNAME(asmsym) asmsym 63#ifdef __powerpc64__ 64#define HIDENAME(asmsym) __CONCAT(_,asmsym) 65#else 66#define HIDENAME(asmsym) __CONCAT(.,asmsym) 67#endif 68 69#define _GLOBAL(x) \ 70 .data; .align 2; .globl x; x: 71 72#ifdef __powerpc64__ 73#define _ENTRY(x) \ 74 .text; .align 2; .globl x; .section ".opd","aw"; \ 75 .align 3; x: \ | 56#define CNAME(csym) csym 57#define ASMNAME(asmsym) asmsym 58#ifdef __powerpc64__ 59#define HIDENAME(asmsym) __CONCAT(_,asmsym) 60#else 61#define HIDENAME(asmsym) __CONCAT(.,asmsym) 62#endif 63 64#define _GLOBAL(x) \ 65 .data; .align 2; .globl x; x: 66 67#ifdef __powerpc64__ 68#define _ENTRY(x) \ 69 .text; .align 2; .globl x; .section ".opd","aw"; \ 70 .align 3; x: \ |
76 .quad .x,.TOC.@tocbase,0; .previous; \ 77 .align 4; .globl .x; .type .x,@function; .x: | 71 .quad .L.x,.TOC.@tocbase,0; .size x,24; .previous; \ 72 .align 4; .type x,@function; .L.x: |
78#else 79#define _ENTRY(x) \ 80 .text; .align 4; .globl x; .type x,@function; x: 81#endif 82 83#if defined(PROF) || (defined(_KERNEL) && defined(GPROF)) 84# define _PROF_PROLOGUE mflr 0; stw 0,4(1); bl _mcount 85#else --- 31 unchanged lines hidden --- | 73#else 74#define _ENTRY(x) \ 75 .text; .align 4; .globl x; .type x,@function; x: 76#endif 77 78#if defined(PROF) || (defined(_KERNEL) && defined(GPROF)) 79# define _PROF_PROLOGUE mflr 0; stw 0,4(1); bl _mcount 80#else --- 31 unchanged lines hidden --- |