svn commit: r233125 - in head/sys: amd64/ia32 compat/ia32 ia64/ia32 ia64/include x86/include

Tijl Coosemans tijl at coosemans.org
Sun Mar 18 19:25:38 UTC 2012


On Sunday 18 March 2012 20:12:12 Tijl Coosemans wrote:
> Author: tijl
> Date: Sun Mar 18 19:12:11 2012
> New Revision: 233125
> URL: http://svn.freebsd.org/changeset/base/233125
> 
> Log:
>   Eliminate ia32_reg.h by moving its contents to x86 and ia64 reg.h.
>   
>   Reviewed by:	kib
> 
> Deleted:
>   head/sys/compat/ia32/ia32_reg.h
> Modified:
>   head/sys/amd64/ia32/ia32_reg.c
>   head/sys/ia64/ia32/ia32_reg.c
>   head/sys/ia64/include/reg.h
>   head/sys/x86/include/reg.h
> 
> Modified: head/sys/amd64/ia32/ia32_reg.c
> ==============================================================================
> --- head/sys/amd64/ia32/ia32_reg.c	Sun Mar 18 19:06:38 2012	(r233124)
> +++ head/sys/amd64/ia32/ia32_reg.c	Sun Mar 18 19:12:11 2012	(r233125)
> @@ -65,7 +65,6 @@ __FBSDID("$FreeBSD$");
>  #include <compat/freebsd32/freebsd32_util.h>
>  #include <compat/freebsd32/freebsd32_proto.h>
>  #include <machine/fpu.h>
> -#include <compat/ia32/ia32_reg.h>
>  #include <machine/psl.h>
>  #include <machine/segments.h>
>  #include <machine/specialreg.h>
> 
> Modified: head/sys/ia64/ia32/ia32_reg.c
> ==============================================================================
> --- head/sys/ia64/ia32/ia32_reg.c	Sun Mar 18 19:06:38 2012	(r233124)
> +++ head/sys/ia64/ia32/ia32_reg.c	Sun Mar 18 19:12:11 2012	(r233125)
> @@ -27,13 +27,13 @@
>  #include <sys/cdefs.h>
>  __FBSDID("$FreeBSD$");
>  
> +#include "opt_compat.h"
> +
>  #include <sys/param.h>
>  #include <sys/systm.h>
>  #include <sys/proc.h>
>  #include <sys/procfs.h>
>  
> -#include <compat/ia32/ia32_reg.h>
> -
>  int
>  fill_regs32(struct thread *td, struct reg32 *regs)
>  {
> 
> Modified: head/sys/ia64/include/reg.h
> ==============================================================================
> --- head/sys/ia64/include/reg.h	Sun Mar 18 19:06:38 2012	(r233124)
> +++ head/sys/ia64/include/reg.h	Sun Mar 18 19:12:11 2012	(r233125)
> @@ -31,9 +31,27 @@
>  
>  #include <machine/_regset.h>
>  
> -#if defined(_KERNEL) && !defined(_STANDALONE)
> -#include "opt_compat.h"
> -#endif
> +struct reg32 {
> +	unsigned int	r_fs;
> +	unsigned int	r_es;
> +	unsigned int	r_ds;
> +	unsigned int	r_edi;
> +	unsigned int	r_esi;
> +	unsigned int	r_ebp;
> +	unsigned int	r_isp;
> +	unsigned int	r_ebx;
> +	unsigned int	r_edx;
> +	unsigned int	r_ecx;
> +	unsigned int	r_eax;
> +	unsigned int	r_trapno;
> +	unsigned int	r_err;
> +	unsigned int	r_eip;
> +	unsigned int	r_cs;
> +	unsigned int	r_eflags;
> +	unsigned int	r_esp;
> +	unsigned int	r_ss;
> +	unsigned int	r_gs;
> +};
>  
>  struct reg {
>  	struct _special		r_special;
> @@ -41,22 +59,28 @@ struct reg {
>  	struct _caller_saved	r_scratch;
>  };
>  
> +struct fpreg32 {
> +	unsigned int	fpr_env[7];
> +	unsigned char	fpr_acc[8][10];
> +	unsigned int	fpr_ex_sw;
> +	unsigned char	fpr_pad[64];
> +};
> +
>  struct fpreg {
>  	struct _callee_saved_fp	fpr_preserved;
>  	struct _caller_saved_fp	fpr_scratch;
>  	struct _high_fp		fpr_high;
>  };
>  
> +struct dbreg32 {
> +	unsigned int	dr[8];
> +};
> +
>  struct dbreg {
>  	unsigned long	dbr_data[8];
>  	unsigned long	dbr_inst[8];
>  };
>  
> -#ifdef COMPAT_FREEBSD32
> -#include <machine/fpu.h>
> -#include <compat/ia32/ia32_reg.h>
> -#endif
> -
>  #ifdef _KERNEL
>  struct thread;
>  
> @@ -67,6 +91,14 @@ int	fill_fpregs(struct thread *, struct 
>  int	set_fpregs(struct thread *, struct fpreg *);
>  int	fill_dbregs(struct thread *, struct dbreg *);
>  int	set_dbregs(struct thread *, struct dbreg *);
> +#ifdef COMPAT_FREEBSD32
> +int	fill_regs32(struct thread *, struct reg32 *);
> +int	set_regs32(struct thread *, struct reg32 *);
> +int	fill_fpregs32(struct thread *, struct fpreg32 *);
> +int	set_fpregs32(struct thread *, struct fpreg32 *);
> +int	fill_dbregs32(struct thread *, struct dbreg32 *);
> +int	set_dbregs32(struct thread *, struct dbreg32 *);
> +#endif
>  #endif
>  
>  #endif /* _MACHINE_REG_H_ */
> 
> Modified: head/sys/x86/include/reg.h
> ==============================================================================
> --- head/sys/x86/include/reg.h	Sun Mar 18 19:06:38 2012	(r233124)
> +++ head/sys/x86/include/reg.h	Sun Mar 18 19:12:11 2012	(r233125)
> @@ -232,11 +232,6 @@ struct __dbreg64 {
>  #undef __dbreg32
>  #undef __dbreg64
>  
> -#ifdef COMPAT_FREEBSD32
> -#include <machine/fpu.h>
> -#include <compat/ia32/ia32_reg.h>
> -#endif
> -
>  #ifdef _KERNEL
>  /*
>   * XXX these interfaces are MI, so they should be declared in a MI place.

I didn't want to move them to an MI place in this patch because it
involves all other architectures, but this might be a good time to
discuss what that MI place should be.

> @@ -248,6 +243,14 @@ int	fill_fpregs(struct thread *, struct 
>  int	set_fpregs(struct thread *, struct fpreg *);
>  int	fill_dbregs(struct thread *, struct dbreg *);
>  int	set_dbregs(struct thread *, struct dbreg *);
> +#ifdef COMPAT_FREEBSD32
> +int	fill_regs32(struct thread *, struct reg32 *);
> +int	set_regs32(struct thread *, struct reg32 *);
> +int	fill_fpregs32(struct thread *, struct fpreg32 *);
> +int	set_fpregs32(struct thread *, struct fpreg32 *);
> +int	fill_dbregs32(struct thread *, struct dbreg32 *);
> +int	set_dbregs32(struct thread *, struct dbreg32 *);
> +#endif
>  #endif
>  
>  #endif /* !_MACHINE_REG_H_ */
> 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 228 bytes
Desc: This is a digitally signed message part.
Url : http://lists.freebsd.org/pipermail/svn-src-head/attachments/20120318/317a040c/attachment.pgp


More information about the svn-src-head mailing list