Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 24 Apr 2003 16:06:55 -0700 (PDT)
From:      Peter Wemm <peter@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 29645 for review
Message-ID:  <200304242306.h3ON6tjv036407@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=29645

Change 29645 by peter@peter_daintree on 2003/04/24 16:05:56

	update for the current state of the world. Leave out
	the tXXX defines for the moment, foolishly trusing the comment
	that they are not used...  I bet gdb uses them.

Affected files ...

.. //depot/projects/hammer/sys/x86_64/include/reg.h#6 edit

Differences ...

==== //depot/projects/hammer/sys/x86_64/include/reg.h#6 (text+ko) ====

@@ -41,65 +41,31 @@
 #define	_MACHINE_REG_H_
 
 /*
- * Indices for registers in `struct trapframe' and `struct regs'.
- *
- * This interface is deprecated.  In the kernel, it is only used in FPU
- * emulators to convert from register numbers encoded in instructions to
- * register values.  Everything else just accesses the relevant struct
- * members.  In userland, debuggers tend to abuse this interface since
- * they don't understand that `struct regs' is a struct.  I hope they have
- * stopped accessing the registers in the trap frame via PT_{READ,WRITE}_U
- * and we can stop supporting the user area soon.
- */
-#define	tFS	(0)
-#define	tES	(1)
-#define	tDS	(2)
-#define	tEDI	(3)
-#define	tESI	(4)
-#define	tEBP	(5)
-#define	tISP	(6)
-#define	tEBX	(7)
-#define	tEDX	(8)
-#define	tECX	(9)
-#define	tEAX	(10)
-#define	tERR	(12)
-#define	tEIP	(13)
-#define	tCS	(14)
-#define	tEFLAGS	(15)
-#define	tESP	(16)
-#define	tSS	(17)
-
-/*
- * Indices for registers in `struct regs' only.
- *
- * Some registers live in the pcb and are only in an "array" with the
- * other registers in application interfaces that copy all the registers
- * to or from a `struct regs'.
- */
-#define	tGS	(18)
-
-/*
  * Register set accessible via /proc/$pid/regs and PT_{SET,GET}REGS.
  */
 struct reg {
-	unsigned int	r_fs;
-	unsigned int	r_es;
-	unsigned int	r_ds;
-	unsigned int	r_rdi;
-	unsigned int	r_rsi;
-	unsigned int	r_rbp;
-	unsigned int	r_rbx;
-	unsigned int	r_rdx;
-	unsigned int	r_rcx;
-	unsigned int	r_rax;
-	unsigned int	r_trapno;
-	unsigned int	r_err;
-	unsigned int	r_rip;
-	unsigned int	r_cs;
-	unsigned int	r_rflags;
-	unsigned int	r_rsp;
-	unsigned int	r_ss;
-	unsigned int	r_gs;
+	register_t	r_r15;
+	register_t	r_r14;
+	register_t	r_r13;
+	register_t	r_r12;
+	register_t	r_r11;
+	register_t	r_r10;
+	register_t	r_r9;
+	register_t	r_r8;
+	register_t	r_rdi;
+	register_t	r_rsi;
+	register_t	r_rbp;
+	register_t	r_rbx;
+	register_t	r_rdx;
+	register_t	r_rcx;
+	register_t	r_rax;
+	register_t	r_trapno;
+	register_t	r_err;
+	register_t	r_rip;
+	register_t	r_cs;
+	register_t	r_rflags;
+	register_t	r_rsp;
+	register_t	r_ss;
 };
 
 /*



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200304242306.h3ON6tjv036407>