diff options
Diffstat (limited to 'src/libthread')
-rw-r--r-- | src/libthread/label.h | 15 | ||||
-rw-r--r-- | src/libthread/mkfile | 1 |
2 files changed, 16 insertions, 0 deletions
diff --git a/src/libthread/label.h b/src/libthread/label.h index 5161e373..c3cef2d0 100644 --- a/src/libthread/label.h +++ b/src/libthread/label.h @@ -40,6 +40,21 @@ struct Label ulong sp; /* %o6 */ ulong link; /* %o7 */ }; +#elif defined(__powerpc__) +struct Label +{ + ulong pc; /* lr */ + ulong cr; /* mfcr */ + ulong ctr; /* mfcr */ + ulong xer; /* mfcr */ + ulong sp; /* callee saved: r1 */ + ulong toc; /* callee saved: r2 */ + ulong gpr[19]; /* callee saved: r13-r31 */ +// XXX: currently do not save vector registers or floating-point state +// ulong pad; +// uvlong fpr[18]; /* callee saved: f14-f31 */ +// ulong vr[4*12]; /* callee saved: v20-v31, 256-bits each */ +}; #else #error "Unknown or unsupported architecture" #endif diff --git a/src/libthread/mkfile b/src/libthread/mkfile index f8ec8e80..221cb818 100644 --- a/src/libthread/mkfile +++ b/src/libthread/mkfile @@ -53,6 +53,7 @@ trend: trend.$O $PLAN9/lib/$LIB CLEANFILES=$CLEANFILES tprimes texec +asm-Linux-ppc.$O: asm-Linux-386.s asm-Linux-386.$O: asm-FreeBSD-386.s asm-NetBSD-386.$O: asm-FreeBSD-386.s asm-OpenBSD-386.$O: asm-FreeBSD-386.s |