svn commit: r250134 - head/sys/mips/include

Warner Losh imp at FreeBSD.org
Wed May 1 05:46:55 UTC 2013


Author: imp
Date: Wed May  1 05:46:54 2013
New Revision: 250134
URL: http://svnweb.freebsd.org/changeset/base/250134

Log:
  Import virgin regdef.h from 4.4 Lite 2's sys/pmax/include/regdef.h,
  expand the %sccs.include.redist.c% directive with the standard
  3-clause license, and add $FreeBSD$ to keep the commit script happy.
  
  # This may break some mips stuff, which will be fixed in the next commit.

Modified:
  head/sys/mips/include/regdef.h

Modified: head/sys/mips/include/regdef.h
==============================================================================
--- head/sys/mips/include/regdef.h	Wed May  1 05:14:59 2013	(r250133)
+++ head/sys/mips/include/regdef.h	Wed May  1 05:46:54 2013	(r250134)
@@ -1,86 +1,67 @@
-/*-
- * Copyright (c) 2001, Juniper Networks, Inc.
- * All rights reserved.
- * Truman Joe, February 2001.
+/*
+ * Copyright (c) 1992, 1993
+ *      The Regents of the University of California.  All rights reserved.
  *
- * regdef.h -- MIPS register definitions.
+ * This code is derived from software contributed to Berkeley by
+ * Ralph Campbell. This file is derived from the MIPS RISC
+ * Architecture book by Gerry Kane.
  *
- *	JNPR: regdef.h,v 1.3 2006/08/07 05:38:57 katta
- * $FreeBSD$
- */
-
-#ifndef _MACHINE_REGDEF_H_
-#define	_MACHINE_REGDEF_H_
-
-#include <machine/cdefs.h>		/* For API selection */
-
-#if defined(__ASSEMBLER__)
-/* General purpose CPU register names */
-#define	zero	$0	/* wired zero */
-#define	AT	$at	/* assembler temp */
-#define	v0	$2	/* return value */
-#define	v1	$3
-#define	a0	$4	/* argument registers */
-#define	a1	$5
-#define	a2	$6
-#define	a3	$7
-#if defined(__mips_n32) || defined(__mips_n64)
-#define	a4	$8
-#define	a5	$9
-#define	a6	$10
-#define	a7	$11
-#define	t0	$12	/* Temp regs, not saved accross subroutine calls */
-#define	t1	$13
-#define	t2	$14
-#define	t3	$15
-#else
-#define	t0	$8	/* caller saved */
-#define	t1	$9
-#define	t2	$10
-#define	t3	$11
-#define	t4	$12	/* caller saved - 32 bit env arg reg 64 bit */
-#define	t5	$13
-#define	t6	$14
-#define	t7	$15
-#endif
-#define	s0	$16	/* callee saved */
-#define	s1	$17
-#define	s2	$18
-#define	s3	$19
-#define	s4	$20
-#define	s5	$21
-#define	s6	$22
-#define	s7	$23
-#define	t8	$24	/* code generator */
-#define	t9	$25
-#define	k0	$26	/* kernel temporary */
-#define	k1	$27
-#define	gp	$28	/* global pointer */
-#define	sp	$29	/* stack pointer */
-#define	fp	$30	/* frame pointer */
-#define	s8	$30	/* callee saved */
-#define	ra	$31	/* return address */
-
-/*
- * These are temp registers whose names can be used in either the old
- * or new ABI, although they map to different physical registers.  In
- * the old ABI, they map to t4-t7, and in the new ABI, they map to a4-a7.
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 4. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
  *
- * Because they overlap with the last 4 arg regs in the new ABI, ta0-ta3
- * should be used only when we need more than t0-t3.
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *      @(#)regdef.h    8.1 (Berkeley) 06/10/93
+ * $FreeBSD$
  */
-#if defined(__mips_n32) || defined(__mips_n64)
-#define	ta0	$8
-#define	ta1	$9
-#define	ta2	$10
-#define	ta3	$11
-#else
-#define	ta0	$12
-#define	ta1	$13
-#define	ta2	$14
-#define	ta3	$15
-#endif /* __mips_n32 || __mips_n64 */
-
-#endif /* __ASSEMBLER__ */
 
-#endif /* !_MACHINE_REGDEF_H_ */
+#define zero    $0      /* always zero */
+#define AT      $at     /* assembler temp */
+#define v0      $2      /* return value */
+#define v1      $3
+#define a0      $4      /* argument registers */
+#define a1      $5
+#define a2      $6
+#define a3      $7
+#define t0      $8      /* temp registers (not saved across subroutine calls) */
+#define t1      $9
+#define t2      $10
+#define t3      $11
+#define t4      $12
+#define t5      $13
+#define t6      $14
+#define t7      $15
+#define s0      $16     /* saved across subroutine calls (callee saved) */
+#define s1      $17
+#define s2      $18
+#define s3      $19
+#define s4      $20
+#define s5      $21
+#define s6      $22
+#define s7      $23
+#define t8      $24     /* two more temp registers */
+#define t9      $25
+#define k0      $26     /* kernel temporary */
+#define k1      $27
+#define gp      $28     /* global pointer */
+#define sp      $29     /* stack pointer */
+#define s8      $30     /* one more callee saved */
+#define ra      $31     /* return address */


More information about the svn-src-head mailing list