Date: Wed, 1 May 2013 00:00:04 -0600 From: Warner Losh <imp@bsdimp.com> To: Juli Mallett <jmallett@FreeBSD.org> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Warner Losh <imp@freebsd.org> Subject: Re: svn commit: r250134 - head/sys/mips/include Message-ID: <6739A162-749B-4BDF-B5FA-E36235EF404A@bsdimp.com> In-Reply-To: <CACVs6=9-oOmv%2BSpodH_qfwuVLvYT-ePvUo0eF8XDSXHgoachBA@mail.gmail.com> References: <201305010546.r415ktrA088822@svn.freebsd.org> <CACVs6=9-oOmv%2BSpodH_qfwuVLvYT-ePvUo0eF8XDSXHgoachBA@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Apr 30, 2013, at 11:55 PM, Juli Mallett wrote: > Warner, >=20 > May I ask why you're bringing in the 4.4BSD version and not the NetBSD > version, which already contained the appropriate ABI gunk? Do we > really need to duplicate their work improving the file since 4.4BSD? The NetBSD version didn't have the CSRG copyright, so I wanted to create = a clear chain of modifications. I'll be done with that within the = hour.... But it turns out I was confused about which file lacked a copyright (I = was also looking at elf_machdep.h), so I'll just bring NetBSD's in now. = Sorry for the churn... Warner > Thanks, > Juli. >=20 > On Tue, Apr 30, 2013 at 10:46 PM, Warner Losh <imp@freebsd.org> wrote: >> Author: imp >> Date: Wed May 1 05:46:54 2013 >> New Revision: 250134 >> URL: http://svnweb.freebsd.org/changeset/base/250134 >>=20 >> 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. >>=20 >> # This may break some mips stuff, which will be fixed in the next = commit. >>=20 >> Modified: >> head/sys/mips/include/regdef.h >>=20 >> Modified: head/sys/mips/include/regdef.h >> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >> --- 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__ */ >>=20 >> -#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 */
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6739A162-749B-4BDF-B5FA-E36235EF404A>