diff options
author | wchang0222%aol.com <devnull@localhost> | 2004-05-19 15:37:10 +0000 |
---|---|---|
committer | wchang0222%aol.com <devnull@localhost> | 2004-05-19 15:37:10 +0000 |
commit | 0828bac86710aa0700f6a4411f062dccbd44b9bd (patch) | |
tree | 9a78a1011f760cfa7660fcd0b7b44ae7fa05ea63 | |
parent | d017e753458692e2c142426afc012d79120ddc96 (diff) | |
download | nspr-hg-0828bac86710aa0700f6a4411f062dccbd44b9bd.tar.gz |
Bugzilla bug 244010: support NetBSD/sparc64. Accept more variants of theMOZILLA_1_8a1_RELEASE
arm architecture. The patch is contributed by Martin Husemann
<martin@NetBSD.ORG>. r=wtc.
Tag: NSPRPUB_PRE_4_2_CLIENT_BRANCH
-rw-r--r-- | pr/include/md/_netbsd.h | 28 |
1 files changed, 24 insertions, 4 deletions
diff --git a/pr/include/md/_netbsd.h b/pr/include/md/_netbsd.h index cd829df3..cc16f105 100644 --- a/pr/include/md/_netbsd.h +++ b/pr/include/md/_netbsd.h @@ -48,12 +48,15 @@ #define _PR_SI_ARCHITECTURE "m68k" #elif defined(__powerpc__) #define _PR_SI_ARCHITECTURE "powerpc" +#elif defined(__sparc_v9__) +#define _PR_SI_ARCHITECTURE "sparc64" #elif defined(__sparc__) #define _PR_SI_ARCHITECTURE "sparc" #elif defined(__mips__) #define _PR_SI_ARCHITECTURE "mips" -#elif defined(__arm32__) -#define _PR_SI_ARCHITECTURE "arm32" +#elif defined(__arm32__) || defined(__arm__) || defined(__armel__) \ + || defined(__armeb__) +#define _PR_SI_ARCHITECTURE "arm" #endif #if defined(__ELF__) @@ -86,6 +89,12 @@ #define _PR_INET6_PROBE #endif +#if __NetBSD_Version__ >= 106370000 +/* NetBSD 1.6ZK */ +#define _PR_HAVE_GETPROTO_R +#define _PR_HAVE_GETPROTO_R_INT +#endif + #define USE_SETJMP #ifndef _PR_PTHREADS @@ -108,7 +117,17 @@ } #define _MD_GET_SP(_thread) CONTEXT(_thread)[2] #endif -#ifdef __sparc__ +#ifdef __sparc_v9__ +#define _MD_INIT_CONTEXT(_thread, _sp, _main, status) \ +{ \ + sigsetjmp(CONTEXT(_thread), 1); \ + CONTEXT(_thread)[1] = (unsigned char*) ((_sp) - 176 - 0x7ff); \ + CONTEXT(_thread)[2] = (long) _main; \ + CONTEXT(_thread)[3] = (long) _main + 4; \ + *status = PR_TRUE; \ +} +#define _MD_GET_SP(_thread) (CONTEXT(_thread)[2]+0x7ff) +#elif defined(__sparc__) #define _MD_INIT_CONTEXT(_thread, _sp, _main, status) \ { \ sigsetjmp(CONTEXT(_thread), 1); \ @@ -150,7 +169,8 @@ } #define _MD_GET_SP(_thread) CONTEXT(_thread)[32] #endif -#ifdef __arm32__ +#if defined(__arm32__) || defined(__arm__) || defined(__armel__) \ + || defined(__armeb__) #define _MD_INIT_CONTEXT(_thread, _sp, _main, status) \ { \ sigsetjmp(CONTEXT(_thread), 1); \ |