summaryrefslogtreecommitdiff
path: root/alpha/include/ape/ureg.h
diff options
context:
space:
mode:
Diffstat (limited to 'alpha/include/ape/ureg.h')
-rw-r--r--alpha/include/ape/ureg.h57
1 files changed, 57 insertions, 0 deletions
diff --git a/alpha/include/ape/ureg.h b/alpha/include/ape/ureg.h
new file mode 100644
index 000000000..58307aa16
--- /dev/null
+++ b/alpha/include/ape/ureg.h
@@ -0,0 +1,57 @@
+#ifndef __UREG_H
+#define __UREG_H
+#if !defined(_PLAN9_SOURCE)
+ This header file is an extension to ANSI/POSIX
+#endif
+
+struct Ureg
+{
+ /* l.s saves 31 64-bit values: */
+ unsigned long long type;
+ unsigned long long a0;
+ unsigned long long a1;
+ unsigned long long a2;
+
+ unsigned long long r0;
+ unsigned long long r1;
+ unsigned long long r2;
+ unsigned long long r3;
+ unsigned long long r4;
+ unsigned long long r5;
+ unsigned long long r6;
+ unsigned long long r7;
+ unsigned long long r8;
+ unsigned long long r9;
+ unsigned long long r10;
+ unsigned long long r11;
+ unsigned long long r12;
+ unsigned long long r13;
+ unsigned long long r14;
+ unsigned long long r15;
+
+ unsigned long long r19;
+ unsigned long long r20;
+ unsigned long long r21;
+ unsigned long long r22;
+ unsigned long long r23;
+ unsigned long long r24;
+ unsigned long long r25;
+ unsigned long long r26;
+ unsigned long long r27;
+ unsigned long long r28;
+ union {
+ unsigned long long r30;
+ unsigned long long usp;
+ unsigned long long sp;
+ };
+
+ /* OSF/1 PALcode frame: */
+ unsigned long long status; /* PS */
+ unsigned long long pc;
+ unsigned long long r29; /* GP */
+ unsigned long long r16; /* a0 */
+ unsigned long long r17; /* a1 */
+ unsigned long long r18; /* a2 */
+};
+
+#endif