Date: Thu, 17 Jan 2013 15:45:45 +0000 (UTC) From: Brooks Davis <brooks@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r245552 - in projects/mtree: . bin/cp bin/pwait cddl/contrib/opensolaris/lib/libzfs/common contrib/gcc/config/arm etc/mtree etc/rc.d gnu/lib/csu gnu/lib/libgcc gnu/lib/libgcov gnu/lib/l... Message-ID: <201301171545.r0HFjjDw095348@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: brooks Date: Thu Jan 17 15:45:45 2013 New Revision: 245552 URL: http://svnweb.freebsd.org/changeset/base/245552 Log: MFH @ r245551 Added: projects/mtree/sys/libkern/arm/ldivmod.S - copied unchanged from r245551, head/sys/libkern/arm/ldivmod.S projects/mtree/sys/libkern/arm/ldivmod_helper.c - copied unchanged from r245551, head/sys/libkern/arm/ldivmod_helper.c projects/mtree/tools/build/options/WITH_ARM_EABI - copied unchanged from r245551, head/tools/build/options/WITH_ARM_EABI projects/mtree/tools/build/options/WITH_OPENSSH_NONE_CIPHER - copied unchanged from r245551, head/tools/build/options/WITH_OPENSSH_NONE_CIPHER Modified: projects/mtree/ObsoleteFiles.inc projects/mtree/bin/cp/cp.c projects/mtree/bin/pwait/pwait.c projects/mtree/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_status.c projects/mtree/contrib/gcc/config/arm/freebsd.h projects/mtree/etc/mtree/BSD.usr.dist projects/mtree/etc/rc.d/jail projects/mtree/gnu/lib/csu/Makefile projects/mtree/gnu/lib/libgcc/Makefile projects/mtree/gnu/lib/libgcov/Makefile projects/mtree/gnu/lib/libstdc++/Makefile projects/mtree/gnu/usr.bin/cc/Makefile.inc projects/mtree/gnu/usr.bin/cc/c++filt/Makefile projects/mtree/gnu/usr.bin/cc/cc1/Makefile projects/mtree/gnu/usr.bin/cc/cc1plus/Makefile projects/mtree/gnu/usr.bin/cc/cc_int/Makefile projects/mtree/gnu/usr.bin/cc/cc_tools/Makefile projects/mtree/gnu/usr.bin/cc/doc/Makefile projects/mtree/gnu/usr.bin/cc/gcov/Makefile projects/mtree/gnu/usr.bin/cc/include/Makefile projects/mtree/gnu/usr.bin/cc/libcpp/Makefile projects/mtree/gnu/usr.bin/cc/libdecnumber/Makefile projects/mtree/gnu/usr.bin/cc/libiberty/Makefile projects/mtree/sbin/geom/class/raid/graid.8 projects/mtree/sbin/setkey/Makefile projects/mtree/secure/lib/libssh/Makefile projects/mtree/secure/usr.bin/ssh/Makefile projects/mtree/secure/usr.sbin/sshd/Makefile projects/mtree/share/man/man4/rl.4 projects/mtree/share/man/man5/src.conf.5 projects/mtree/share/misc/committers-doc.dot projects/mtree/share/misc/committers-src.dot projects/mtree/share/mk/bsd.man.mk projects/mtree/share/mk/bsd.own.mk projects/mtree/share/mk/bsd.prog.mk projects/mtree/sys/arm/allwinner/console.c projects/mtree/sys/arm/arm/cpufunc.c projects/mtree/sys/arm/arm/db_trace.c projects/mtree/sys/arm/arm/swtch.S projects/mtree/sys/arm/arm/trap.c projects/mtree/sys/arm/include/atomic.h projects/mtree/sys/arm/include/proc.h projects/mtree/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/txg.c projects/mtree/sys/conf/files.arm projects/mtree/sys/conf/options projects/mtree/sys/dev/ath/if_ath.c projects/mtree/sys/dev/ath/if_ath_misc.h projects/mtree/sys/dev/ath/if_ath_sysctl.c projects/mtree/sys/dev/ath/if_ath_tx.c projects/mtree/sys/dev/ath/if_athvar.h projects/mtree/sys/dev/cxgbe/adapter.h projects/mtree/sys/dev/cxgbe/t4_main.c projects/mtree/sys/dev/cxgbe/tom/t4_connect.c projects/mtree/sys/dev/cxgbe/tom/t4_listen.c projects/mtree/sys/dev/puc/puc.c projects/mtree/sys/fs/nfs/nfs_commonkrpc.c projects/mtree/sys/fs/nfs/nfs_commonsubs.c projects/mtree/sys/fs/nfsclient/nfs_clport.c projects/mtree/sys/fs/nullfs/null_vfsops.c projects/mtree/sys/geom/raid/md_promise.c projects/mtree/sys/geom/raid/tr_concat.c projects/mtree/sys/kern/subr_param.c projects/mtree/sys/libkern/arm/divsi3.S projects/mtree/sys/net80211/ieee80211_power.c projects/mtree/sys/nfsclient/nfs_krpc.c projects/mtree/sys/nfsclient/nfs_subs.c projects/mtree/sys/pci/if_rl.c projects/mtree/sys/pci/if_rlreg.h projects/mtree/tools/tools/cxgbetool/cxgbetool.c projects/mtree/tools/tools/notescheck/notescheck.py projects/mtree/usr.bin/man/man.1 projects/mtree/usr.bin/man/man.sh projects/mtree/usr.sbin/cpucontrol/intel.c projects/mtree/usr.sbin/cpucontrol/via.c projects/mtree/usr.sbin/pw/pw_log.c Directory Properties: projects/mtree/ (props changed) projects/mtree/cddl/contrib/opensolaris/ (props changed) projects/mtree/cddl/contrib/opensolaris/lib/libzfs/ (props changed) projects/mtree/contrib/gcc/ (props changed) projects/mtree/gnu/lib/ (props changed) projects/mtree/gnu/usr.bin/cc/cc_tools/ (props changed) projects/mtree/sbin/ (props changed) projects/mtree/share/man/man4/ (props changed) projects/mtree/sys/ (props changed) projects/mtree/sys/cddl/contrib/opensolaris/ (props changed) projects/mtree/sys/conf/ (props changed) Modified: projects/mtree/ObsoleteFiles.inc ============================================================================== --- projects/mtree/ObsoleteFiles.inc Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/ObsoleteFiles.inc Thu Jan 17 15:45:45 2013 (r245552) @@ -38,6 +38,13 @@ # xargs -n1 | sort | uniq -d; # done +# 20130116: removed long unused directories for .1aout section manpages +OLD_FILES+=usr/share/man/en.ISO8859-1/man1aout +OLD_FILES+=usr/share/man/en.UTF-8/man1aout +OLD_DIRS+=usr/share/man/man1aout +OLD_DIRS+=usr/share/man/cat1aout +OLD_DIRS+=usr/share/man/en.ISO8859-1/cat1aout +OLD_DIRS+=usr/share/man/en.UTF-8/cat1aout # 20121230: libdisk removed OLD_FILES+=usr/share/man/man3/libdisk.3.gz usr/include/libdisk.h OLD_FILES+=usr/lib/libdisk.a usr/lib32/libdisk.a Modified: projects/mtree/bin/cp/cp.c ============================================================================== --- projects/mtree/bin/cp/cp.c Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/bin/cp/cp.c Thu Jan 17 15:45:45 2013 (r245552) @@ -98,30 +98,28 @@ main(int argc, char *argv[]) { struct stat to_stat, tmp_stat; enum op type; - int Hflag, Lflag, Pflag, ch, fts_options, r, have_trailing_slash; + int Hflag, Lflag, ch, fts_options, r, have_trailing_slash; char *target; fts_options = FTS_NOCHDIR | FTS_PHYSICAL; - Hflag = Lflag = Pflag = 0; + Hflag = Lflag = 0; while ((ch = getopt(argc, argv, "HLPRafilnprvx")) != -1) switch (ch) { case 'H': Hflag = 1; - Lflag = Pflag = 0; + Lflag = 0; break; case 'L': Lflag = 1; - Hflag = Pflag = 0; + Hflag = 0; break; case 'P': - Pflag = 1; Hflag = Lflag = 0; break; case 'R': Rflag = 1; break; case 'a': - Pflag = 1; pflag = 1; Rflag = 1; Hflag = Lflag = 0; @@ -146,7 +144,7 @@ main(int argc, char *argv[]) break; case 'r': rflag = Lflag = 1; - Hflag = Pflag = 0; + Hflag = 0; break; case 'v': vflag = 1; Modified: projects/mtree/bin/pwait/pwait.c ============================================================================== --- projects/mtree/bin/pwait/pwait.c Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/bin/pwait/pwait.c Thu Jan 17 15:45:45 2013 (r245552) @@ -141,5 +141,5 @@ main(int argc, char *argv[]) nleft -= n; } - return 0; + exit(EX_OK); } Modified: projects/mtree/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_status.c ============================================================================== --- projects/mtree/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_status.c Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_status.c Thu Jan 17 15:45:45 2013 (r245552) @@ -150,6 +150,16 @@ find_vdev_problem(nvlist_t *vdev, int (* return (B_TRUE); } + /* + * Check any L2 cache devs + */ + if (nvlist_lookup_nvlist_array(vdev, ZPOOL_CONFIG_L2CACHE, &child, + &children) == 0) { + for (c = 0; c < children; c++) + if (find_vdev_problem(child[c], func)) + return (B_TRUE); + } + return (B_FALSE); } Modified: projects/mtree/contrib/gcc/config/arm/freebsd.h ============================================================================== --- projects/mtree/contrib/gcc/config/arm/freebsd.h Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/contrib/gcc/config/arm/freebsd.h Thu Jan 17 15:45:45 2013 (r245552) @@ -29,8 +29,13 @@ { "fbsd_dynamic_linker", FBSD_DYNAMIC_LINKER } #undef SUBTARGET_EXTRA_ASM_SPEC +#ifdef TARGET_ARM_EABI +#define SUBTARGET_EXTRA_ASM_SPEC \ + "%{mabi=apcs-gnu|mabi=atpcs:-meabi=gnu;:-meabi=4} %{fpic|fpie:-k} %{fPIC|fPIE:-k}" +#else #define SUBTARGET_EXTRA_ASM_SPEC \ "-matpcs %{fpic|fpie:-k} %{fPIC|fPIE:-k}" +#endif /* Default to full FPA if -mhard-float is specified. */ #undef SUBTARGET_ASM_FLOAT_SPEC @@ -61,8 +66,25 @@ #define TARGET_ENDIAN_DEFAULT 0 #endif +#ifdef TARGET_ARM_EABI +/* We default to a soft-float ABI so that binaries can run on all + target hardware. */ +#undef TARGET_DEFAULT_FLOAT_ABI +#define TARGET_DEFAULT_FLOAT_ABI ARM_FLOAT_ABI_SOFT + +#undef ARM_DEFAULT_ABI +#define ARM_DEFAULT_ABI ARM_ABI_AAPCS_LINUX + +#undef TARGET_OS_CPP_BUILTINS +#define TARGET_OS_CPP_BUILTINS() \ + do \ + { \ + FBSD_TARGET_OS_CPP_BUILTINS(); \ + TARGET_BPABI_CPP_BUILTINS(); \ + } \ + while (false) +#else /* Default it to use ATPCS with soft-VFP. */ -#undef TARGET_DEFAULT #define TARGET_DEFAULT \ (MASK_APCS_FRAME \ | TARGET_ENDIAN_DEFAULT) @@ -70,6 +92,10 @@ #undef ARM_DEFAULT_ABI #define ARM_DEFAULT_ABI ARM_ABI_ATPCS +#undef FPUTYPE_DEFAULT +#define FPUTYPE_DEFAULT FPUTYPE_VFP +#endif + /* Define the actual types of some ANSI-mandated types. Needs to agree with <machine/ansi.h>. GCC defaults come from c-decl.c, c-common.c, and config/<arch>/<arch>.h. */ @@ -134,5 +160,3 @@ do \ } \ while (0) -#undef FPUTYPE_DEFAULT -#define FPUTYPE_DEFAULT FPUTYPE_VFP Modified: projects/mtree/etc/mtree/BSD.usr.dist ============================================================================== --- projects/mtree/etc/mtree/BSD.usr.dist Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/etc/mtree/BSD.usr.dist Thu Jan 17 15:45:45 2013 (r245552) @@ -756,8 +756,6 @@ /set uname=man cat1 .. - cat1aout - .. cat2 .. cat3 @@ -795,8 +793,6 @@ en.ISO8859-1 uname=root cat1 .. - cat1aout - .. cat2 .. cat3 @@ -835,8 +831,6 @@ en.UTF-8 uname=root cat1 .. - cat1aout - .. cat2 .. cat3 @@ -913,8 +907,6 @@ .. man1 .. - man1aout - .. man2 .. man3 Modified: projects/mtree/etc/rc.d/jail ============================================================================== --- projects/mtree/etc/rc.d/jail Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/etc/rc.d/jail Thu Jan 17 15:45:45 2013 (r245552) @@ -509,7 +509,7 @@ jail_handle_ips_option() esac case "${_type}" in inet) ;; - inet6) ;; + inet6) ipv6_address_count=$((ipv6_address_count + 1)) ;; *) warn "Could not determine address family. Not going" \ "to ${_action} address '${_addr}' for ${_jail}." continue @@ -546,6 +546,7 @@ jail_ips() esac # Handle addresses. + ipv6_address_count=0 jail_handle_ips_option ${_action} "${_ip}" # Handle jail_xxx_ip_multi<N> alias=0 @@ -558,6 +559,12 @@ jail_ips() ;; esac done + case ${ipv6_address_count} in + 0) ;; + *) # Sleep 1 second to let DAD complete before starting services. + sleep 1 + ;; + esac } jail_prestart() Modified: projects/mtree/gnu/lib/csu/Makefile ============================================================================== --- projects/mtree/gnu/lib/csu/Makefile Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/gnu/lib/csu/Makefile Thu Jan 17 15:45:45 2013 (r245552) @@ -24,6 +24,10 @@ CFLAGS+= -I${GCCLIB}/include -I${GCCDIR} CRTS_CFLAGS= -DCRTSTUFFS_O -DSHARED ${PICFLAG} MKDEP= -DCRT_BEGIN +.if ${TARGET_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" +CFLAGS+= -DTARGET_ARM_EABI +.endif + .if ${MACHINE_CPUARCH} == "ia64" BEGINSRC= crtbegin.asm ENDSRC= crtend.asm Modified: projects/mtree/gnu/lib/libgcc/Makefile ============================================================================== --- projects/mtree/gnu/lib/libgcc/Makefile Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/gnu/lib/libgcc/Makefile Thu Jan 17 15:45:45 2013 (r245552) @@ -15,6 +15,10 @@ MK_SSP= no .include "${.CURDIR}/../../usr.bin/cc/Makefile.tgt" +.if ${TARGET_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" +CFLAGS+= -DTARGET_ARM_EABI +.endif + .if ${TARGET_CPUARCH} == "mips" LIB= gcc .endif @@ -55,10 +59,13 @@ LIB2FUNCS+= _fixuns${mode}si .endfor # Likewise double-word routines. +.if ${TARGET_CPUARCH} != "arm" || ${MK_ARM_EABI} == "no" +# These are implemented in an ARM specific file but will not be filtered out .for mode in sf df xf tf LIB2FUNCS+= _fix${mode}di _fixuns${mode}di LIB2FUNCS+= _floatdi${mode} _floatundi${mode} .endfor +.endif LIB2ADD = $(LIB2FUNCS_EXTRA) LIB2ADD_ST = $(LIB2FUNCS_STATIC_EXTRA) @@ -115,15 +122,14 @@ CFLAGS+= -fheinous-gnu-extensions LIB1ASMSRC = lib1funcs.asm LIB1ASMFUNCS = _dvmd_tls _bb_init_func -LIB2FUNCS_EXTRA = floatunsidf.c floatunsisf.c +.if ${MK_ARM_EABI} != "no" +LIB1ASMFUNCS+= _addsubdf3 _addsubsf3 _cmpdf2 _cmpsf2 _fixdfsi _fixsfsi \ + _fixunsdfsi _fixunsdfsi _muldivdf3 _muldivsf3 _udivsi3 -# Not now -#LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_tls _bb_init_func -#LIB1ASMFUNCS+= _call_via_rX _interwork_call_via_rX \ -# _lshrdi3 _ashrdi3 _ashldi3 \ -# _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _fixunsdfsi \ -# _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \ -# _fixsfsi _fixunssfsi _floatdidf _floatdisf +LIB2ADDEH = unwind-arm.c libunwind.S pr-support.c unwind-c.c +.else +LIB2FUNCS_EXTRA = floatunsidf.c floatunsisf.c +.endif .endif .if ${TARGET_CPUARCH} == mips @@ -329,6 +335,9 @@ CLEANFILES += cs-*.h option* SHLIB_MKMAP = ${GCCDIR}/mkmap-symver.awk SHLIB_MKMAP_OPTS = SHLIB_MAPFILES = ${GCCDIR}/libgcc-std.ver +.if ${TARGET_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" +SHLIB_MAPFILES += ${GCCDIR}/config/arm/libgcc-bpabi.ver +.endif VERSION_MAP = libgcc.map libgcc.map: ${SHLIB_MKMAP} ${SHLIB_MAPFILES} ${SOBJS} ${OBJS:R:S/$/.So/} Modified: projects/mtree/gnu/lib/libgcov/Makefile ============================================================================== --- projects/mtree/gnu/lib/libgcov/Makefile Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/gnu/lib/libgcov/Makefile Thu Jan 17 15:45:45 2013 (r245552) @@ -15,6 +15,11 @@ CFLAGS+= -DIN_GCC -DIN_LIBGCC2 -D__GCC_F CFLAGS+= -D_PTHREADS -DGTHREAD_USE_WEAK CFLAGS+= -I${.CURDIR}/../../usr.bin/cc/cc_tools \ -I${GCCLIB}/include -I${GCCDIR}/config -I${GCCDIR} -I. + +.if ${TARGET_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" +CFLAGS+= -DTARGET_ARM_EABI +.endif + # # Library members defined in libgcov.c. # Defined in libgcov.c, included only in gcov library Modified: projects/mtree/gnu/lib/libstdc++/Makefile ============================================================================== --- projects/mtree/gnu/lib/libstdc++/Makefile Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/gnu/lib/libstdc++/Makefile Thu Jan 17 15:45:45 2013 (r245552) @@ -1,5 +1,7 @@ # $FreeBSD$ +.include <bsd.own.mk> + GCCVER= 4.2 GCCDIR= ${.CURDIR}/../../../contrib/gcc GCCLIB= ${.CURDIR}/../../../contrib/gcclibs @@ -14,7 +16,7 @@ LIB= stdc++ SHLIB_MAJOR= 6 CFLAGS+= -DIN_GLIBCPP_V3 -DHAVE_CONFIG_H -.if ${MACHINE_CPUARCH} == "arm" +.if ${MACHINE_CPUARCH} == "arm" && ${MK_ARM_EABI} == "no" CFLAGS+= -D_GLIBCXX_SJLJ_EXCEPTIONS=1 .endif CFLAGS+= -I${.CURDIR} -I${SUPDIR} -I${GCCDIR} -I${SRCDIR}/include @@ -594,7 +596,13 @@ gthr-default.h: ${GCCDIR}/gthr-posix.h CLEANFILES+= ${THRHDRS} +.if ${MACHINE_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" +unwind.h: ${GCCDIR}/config/arm/unwind-arm.h +.else unwind.h: ${GCCDIR}/unwind-generic.h +.endif + +unwind.h: ln -sf ${.ALLSRC} ${.TARGET} SRCS+= unwind.h Modified: projects/mtree/gnu/usr.bin/cc/Makefile.inc ============================================================================== --- projects/mtree/gnu/usr.bin/cc/Makefile.inc Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/gnu/usr.bin/cc/Makefile.inc Thu Jan 17 15:45:45 2013 (r245552) @@ -26,6 +26,10 @@ CSTD?= gnu89 CFLAGS+= -DCROSS_COMPILE .endif +.if ${TARGET_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" +CFLAGS+= -DTARGET_ARM_EABI +.endif + .if ${TARGET_ARCH} == "armeb" || ${TARGET_ARCH} == "armv6eb" CFLAGS += -DTARGET_ENDIAN_DEFAULT=MASK_BIG_END .endif Modified: projects/mtree/gnu/usr.bin/cc/c++filt/Makefile ============================================================================== --- projects/mtree/gnu/usr.bin/cc/c++filt/Makefile Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/gnu/usr.bin/cc/c++filt/Makefile Thu Jan 17 15:45:45 2013 (r245552) @@ -1,5 +1,8 @@ # $FreeBSD$ +NO_MAN= +.include <bsd.own.mk> + .include "../Makefile.inc" .include "../Makefile.fe" @@ -7,7 +10,6 @@ PROG= c++filt SRCS= cp-demangle.c -NO_MAN= CFLAGS+= -DSTANDALONE_DEMANGLER -DVERSION=\"$(GCC_VERSION)\" Modified: projects/mtree/gnu/usr.bin/cc/cc1/Makefile ============================================================================== --- projects/mtree/gnu/usr.bin/cc/cc1/Makefile Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/gnu/usr.bin/cc/cc1/Makefile Thu Jan 17 15:45:45 2013 (r245552) @@ -1,9 +1,10 @@ # $FreeBSD$ -.include "../Makefile.inc" NO_MAN= .include <bsd.own.mk> +.include "../Makefile.inc" + .PATH: ${GCCDIR} PROG= cc1 Modified: projects/mtree/gnu/usr.bin/cc/cc1plus/Makefile ============================================================================== --- projects/mtree/gnu/usr.bin/cc/cc1plus/Makefile Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/gnu/usr.bin/cc/cc1plus/Makefile Thu Jan 17 15:45:45 2013 (r245552) @@ -1,9 +1,10 @@ # $FreeBSD$ -.include "../Makefile.inc" NO_MAN= .include <bsd.own.mk> +.include "../Makefile.inc" + .PATH: ${GCCDIR}/cp ${GCCDIR} PROG= cc1plus Modified: projects/mtree/gnu/usr.bin/cc/cc_int/Makefile ============================================================================== --- projects/mtree/gnu/usr.bin/cc/cc_int/Makefile Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/gnu/usr.bin/cc/cc_int/Makefile Thu Jan 17 15:45:45 2013 (r245552) @@ -1,5 +1,7 @@ # $FreeBSD$ +.include <bsd.own.mk> + .include "../Makefile.inc" .include "../Makefile.ver" Modified: projects/mtree/gnu/usr.bin/cc/cc_tools/Makefile ============================================================================== --- projects/mtree/gnu/usr.bin/cc/cc_tools/Makefile Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/gnu/usr.bin/cc/cc_tools/Makefile Thu Jan 17 15:45:45 2013 (r245552) @@ -51,6 +51,9 @@ TARGET_INC+= ${GCC_CPU}/elf.h .endif .if ${TARGET_CPUARCH} == "arm" TARGET_INC+= ${GCC_CPU}/aout.h +.if ${MK_ARM_EABI} != "no" +TARGET_INC+= ${GCC_CPU}/bpabi.h +.endif .endif .if ${TARGET_ARCH} == "powerpc64" TARGET_INC+= ${GCC_CPU}/biarch64.h @@ -349,7 +352,13 @@ gthr-default.h: ${GCCDIR}/gthr-posix.h GENSRCS+= gthr-default.h +.if ${TARGET_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" +unwind.h: ${GCCDIR}/config/arm/unwind-arm.h +.else unwind.h: ${GCCDIR}/unwind-generic.h +.endif + +unwind.h: ln -sf ${.ALLSRC} ${.TARGET} GENSRCS+= unwind.h Modified: projects/mtree/gnu/usr.bin/cc/doc/Makefile ============================================================================== --- projects/mtree/gnu/usr.bin/cc/doc/Makefile Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/gnu/usr.bin/cc/doc/Makefile Thu Jan 17 15:45:45 2013 (r245552) @@ -1,5 +1,7 @@ # $FreeBSD$ +.include <bsd.own.mk> + .include "../Makefile.inc" .include "../Makefile.ver" Modified: projects/mtree/gnu/usr.bin/cc/gcov/Makefile ============================================================================== --- projects/mtree/gnu/usr.bin/cc/gcov/Makefile Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/gnu/usr.bin/cc/gcov/Makefile Thu Jan 17 15:45:45 2013 (r245552) @@ -1,5 +1,7 @@ # $FreeBSD$ +.include <bsd.own.mk> + .include "../Makefile.inc" .include "../Makefile.ver" Modified: projects/mtree/gnu/usr.bin/cc/include/Makefile ============================================================================== --- projects/mtree/gnu/usr.bin/cc/include/Makefile Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/gnu/usr.bin/cc/include/Makefile Thu Jan 17 15:45:45 2013 (r245552) @@ -1,5 +1,7 @@ # $FreeBSD$ +.include <bsd.own.mk> + .include "../Makefile.inc" INCSDIR=${INCLUDEDIR}/gcc/${GCCVER} Modified: projects/mtree/gnu/usr.bin/cc/libcpp/Makefile ============================================================================== --- projects/mtree/gnu/usr.bin/cc/libcpp/Makefile Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/gnu/usr.bin/cc/libcpp/Makefile Thu Jan 17 15:45:45 2013 (r245552) @@ -1,5 +1,7 @@ # $FreeBSD$ +.include <bsd.own.mk> + # Use our headers in preference to ones from ../cc_tools. CFLAGS+= -I${.CURDIR} -I. Modified: projects/mtree/gnu/usr.bin/cc/libdecnumber/Makefile ============================================================================== --- projects/mtree/gnu/usr.bin/cc/libdecnumber/Makefile Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/gnu/usr.bin/cc/libdecnumber/Makefile Thu Jan 17 15:45:45 2013 (r245552) @@ -1,5 +1,7 @@ # $FreeBSD$ +.include <bsd.own.mk> + # Use our headers in preference to ones from ../cc_tools. CFLAGS+= -I${.CURDIR} -I. Modified: projects/mtree/gnu/usr.bin/cc/libiberty/Makefile ============================================================================== --- projects/mtree/gnu/usr.bin/cc/libiberty/Makefile Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/gnu/usr.bin/cc/libiberty/Makefile Thu Jan 17 15:45:45 2013 (r245552) @@ -1,5 +1,7 @@ # $FreeBSD$ +.include <bsd.own.mk> + # # Make sure we will pick up our config.h file first, not the one from # cc_tools. Modified: projects/mtree/sbin/geom/class/raid/graid.8 ============================================================================== --- projects/mtree/sbin/geom/class/raid/graid.8 Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/sbin/geom/class/raid/graid.8 Thu Jan 17 15:45:45 2013 (r245552) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd September 13, 2012 +.Dd January 16, 2013 .Dt GRAID 8 .Os .Sh NAME @@ -274,7 +274,6 @@ complete it there. Do not run GEOM RAID class on migrating volumes under pain of possible data corruption! .Sh 2TiB BARRIERS -Promise metadata format does not support disks above 2TiB. NVIDIA metadata format does not support volumes above 2TiB. .Sh SYSCTL VARIABLES The following Modified: projects/mtree/sbin/setkey/Makefile ============================================================================== --- projects/mtree/sbin/setkey/Makefile Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/sbin/setkey/Makefile Thu Jan 17 15:45:45 2013 (r245552) @@ -61,7 +61,7 @@ CLEANFILES+= scriptdump y.tab.h #SCRIPTS= scriptdump -LOCALPREFIX= /usr +LOCALPREFIX= /usr/local scriptdump: scriptdump.pl sed -e 's#@LOCALPREFIX@#${LOCALPREFIX}#' < $> > scriptdump Modified: projects/mtree/secure/lib/libssh/Makefile ============================================================================== --- projects/mtree/secure/lib/libssh/Makefile Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/secure/lib/libssh/Makefile Thu Jan 17 15:45:45 2013 (r245552) @@ -38,6 +38,10 @@ DPADD+= ${LIBGSSAPI} ${LIBKRB5} ${LIBHX5 LDADD+= -lgssapi -lkrb5 -lhx509 -lasn1 -lcom_err -lmd -lroken .endif +.if ${MK_OPENSSH_NONE_CIPHER} != "no" +CFLAGS+= -DNONE_CIPHER_ENABLED +.endif + NO_LINT= DPADD+= ${LIBCRYPTO} ${LIBCRYPT} Modified: projects/mtree/secure/usr.bin/ssh/Makefile ============================================================================== --- projects/mtree/secure/usr.bin/ssh/Makefile Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/secure/usr.bin/ssh/Makefile Thu Jan 17 15:45:45 2013 (r245552) @@ -25,6 +25,10 @@ DPADD+= ${LIBGSSAPI} LDADD+= -lgssapi .endif +.if ${MK_OPENSSH_NONE_CIPHER} != "no" +CFLAGS+= -DNONE_CIPHER_ENABLED +.endif + DPADD+= ${LIBCRYPT} ${LIBCRYPTO} LDADD+= -lcrypt -lcrypto Modified: projects/mtree/secure/usr.sbin/sshd/Makefile ============================================================================== --- projects/mtree/secure/usr.sbin/sshd/Makefile Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/secure/usr.sbin/sshd/Makefile Thu Jan 17 15:45:45 2013 (r245552) @@ -40,6 +40,10 @@ DPADD+= ${LIBGSSAPI_KRB5} ${LIBGSSAPI} LDADD+= -lgssapi_krb5 -lgssapi -lkrb5 -lasn1 .endif +.if ${MK_OPENSSH_NONE_CIPHER} != "no" +CFLAGS+= -DNONE_CIPHER_ENABLED +.endif + DPADD+= ${LIBCRYPTO} ${LIBCRYPT} LDADD+= -lcrypto -lcrypt Modified: projects/mtree/share/man/man4/rl.4 ============================================================================== --- projects/mtree/share/man/man4/rl.4 Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/share/man/man4/rl.4 Thu Jan 17 15:45:45 2013 (r245552) @@ -30,7 +30,7 @@ .\" .\" $FreeBSD$ .\" -.Dd August 22, 2010 +.Dd January 16, 2013 .Dt RL 4 .Os .Sh NAME @@ -155,6 +155,8 @@ Corega FEther CB-TXD .It Corega FEtherII CB-TXD .It +D-Link DFE-520TX (rev. C1) +.It D-Link DFE-528TX .It D-Link DFE-530TX+ Modified: projects/mtree/share/man/man5/src.conf.5 ============================================================================== --- projects/mtree/share/man/man5/src.conf.5 Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/share/man/man5/src.conf.5 Thu Jan 17 15:45:45 2013 (r245552) @@ -1,7 +1,7 @@ .\" DO NOT EDIT-- this file is automatically generated. .\" from FreeBSD: head/tools/build/options/makeman 236279 2012-05-30 02:37:20Z gjb .\" $FreeBSD$ -.Dd January 14, 2013 +.Dd January 17, 2013 .Dt SRC.CONF 5 .Os .Sh NAME @@ -805,7 +805,7 @@ Set to not build NLS catalogs. Set to not build NLS catalog support for .Xr csh 1 . .It Va WITH_NMTREE -.\" from FreeBSD: head/tools/build/options/WITH_NMTREE 245241 2013-01-09 21:07:08Z brooks +.\" from FreeBSD: head/tools/build/options/WITH_NMTREE 245435 2013-01-14 20:38:32Z brooks Set to install .Xr nmtree 8 as @@ -835,6 +835,16 @@ Infiniband software stack. .It Va WITHOUT_OPENSSH .\" from FreeBSD: head/tools/build/options/WITHOUT_OPENSSH 156932 2006-03-21 07:50:50Z ru Set to not build OpenSSH. +.It Va WITH_OPENSSH_NONE_CIPHER +.\" from FreeBSD: head/tools/build/options/WITH_OPENSSH_NONE_CIPHER 245527 2013-01-17 01:51:04Z bz +Set to include the "None" cipher support in OpenSSH and its libraries. +Additional adjustments may need to be done to system configuration +files, such as +.Xr sshd_config 5 , +to enable this cipher. +Please see +.Pa /usr/src/crypto/openssh/README.hpn +for full details. .It Va WITHOUT_OPENSSL .\" from FreeBSD: head/tools/build/options/WITHOUT_OPENSSL 156932 2006-03-21 07:50:50Z ru Set to not build OpenSSL. Modified: projects/mtree/share/misc/committers-doc.dot ============================================================================== --- projects/mtree/share/misc/committers-doc.dot Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/share/misc/committers-doc.dot Thu Jan 17 15:45:45 2013 (r245552) @@ -116,6 +116,7 @@ gabor -> issyl0 gabor -> ebrandi gjb -> wblock +gjb -> rene hrs -> ryusuke Modified: projects/mtree/share/misc/committers-src.dot ============================================================================== --- projects/mtree/share/misc/committers-src.dot Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/share/misc/committers-src.dot Thu Jan 17 15:45:45 2013 (r245552) @@ -117,6 +117,7 @@ bruno [label="Bruno Ducrot\nbruno@FreeBS bryanv [label="Bryan Venteicher\nbryanv@FreeBSD.org\n2012/11/03"] bschmidt [label="Bernhard Schmidt\nbschmidt@FreeBSD.org\n2010/02/06"] bz [label="Bjoern A. Zeeb\nbz@FreeBSD.org\n2004/07/27"] +carl [label="Carl Delsey\ncarl@FreeBSD.org\n2013/01/14"] cognet [label="Olivier Houchard\ncognet@FreeBSD.org\n2002/10/09"] cokane [label="Coleman Kane\ncokane@FreeBSD.org\n2000/06/19"] cperciva [label="Colin Percival\ncperciva@FreeBSD.org\n2004/01/20"] @@ -454,6 +455,8 @@ jhb -> peterj jhb -> pfg jhb -> rnoland +jimharris -> carl + jkh -> grog jkh -> imp jkh -> jlemon Modified: projects/mtree/share/mk/bsd.man.mk ============================================================================== --- projects/mtree/share/mk/bsd.man.mk Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/share/mk/bsd.man.mk Thu Jan 17 15:45:45 2013 (r245552) @@ -62,7 +62,7 @@ MROFF_CMD?= groff -Tascii -mtty-char -ma MCOMPRESS_CMD?= ${COMPRESS_CMD} MCOMPRESS_EXT?= ${COMPRESS_EXT} -SECTIONS= 1 1aout 2 3 4 5 6 7 8 9 +SECTIONS= 1 2 3 4 5 6 7 8 9 .SUFFIXES: ${SECTIONS:S/^/./g} # Backwards compatibility. Modified: projects/mtree/share/mk/bsd.own.mk ============================================================================== --- projects/mtree/share/mk/bsd.own.mk Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/share/mk/bsd.own.mk Thu Jan 17 15:45:45 2013 (r245552) @@ -352,6 +352,7 @@ __DEFAULT_YES_OPTIONS = \ ZONEINFO __DEFAULT_NO_OPTIONS = \ + ARM_EABI \ BIND_IDN \ BIND_LARGE_FILE \ BIND_LIBS \ @@ -369,6 +370,7 @@ __DEFAULT_NO_OPTIONS = \ NMTREE \ NAND \ OFED \ + OPENSSH_NONE_CIPHER \ SHARED_TOOLCHAIN # Modified: projects/mtree/share/mk/bsd.prog.mk ============================================================================== --- projects/mtree/share/mk/bsd.prog.mk Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/share/mk/bsd.prog.mk Thu Jan 17 15:45:45 2013 (r245552) @@ -95,8 +95,7 @@ ${PROG}: ${OBJS} .if ${MK_MAN} != "no" && !defined(MAN) && \ !defined(MAN1) && !defined(MAN2) && !defined(MAN3) && \ !defined(MAN4) && !defined(MAN5) && !defined(MAN6) && \ - !defined(MAN7) && !defined(MAN8) && !defined(MAN9) && \ - !defined(MAN1aout) + !defined(MAN7) && !defined(MAN8) && !defined(MAN9) MAN= ${PROG}.1 MAN1= ${MAN} .endif Modified: projects/mtree/sys/arm/allwinner/console.c ============================================================================== --- projects/mtree/sys/arm/allwinner/console.c Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/sys/arm/allwinner/console.c Thu Jan 17 15:45:45 2013 (r245552) @@ -40,43 +40,39 @@ __FBSDID("$FreeBSD$"); #define A10_UART_BASE 0xe1c28000 /* UART0 */ #endif -int reg_shift = 2; +#define REG_SHIFT 2 -#define UART_DLL 0 /* Out: Divisor Latch Low */ -#define UART_DLM 1 /* Out: Divisor Latch High */ -#define UART_FCR 2 /* Out: FIFO Control Register */ -#define UART_LCR 3 /* Out: Line Control Register */ -#define UART_MCR 4 /* Out: Modem Control Register */ -#define UART_LSR 5 /* In: Line Status Register */ -#define UART_LSR_THRE 0x20 /* Transmit-hold-register empty */ -#define UART_LSR_DR 0x01 /* Receiver data ready */ -#define UART_MSR 6 /* In: Modem Status Register */ -#define UART_SCR 7 /* I/O: Scratch Register */ +#define UART_DLL 0 /* Out: Divisor Latch Low */ +#define UART_DLM 1 /* Out: Divisor Latch High */ +#define UART_FCR 2 /* Out: FIFO Control Register */ +#define UART_LCR 3 /* Out: Line Control Register */ +#define UART_MCR 4 /* Out: Modem Control Register */ +#define UART_LSR 5 /* In: Line Status Register */ +#define UART_LSR_THRE 0x20 /* Transmit-hold-register empty */ +#define UART_LSR_DR 0x01 /* Receiver data ready */ +#define UART_MSR 6 /* In: Modem Status Register */ +#define UART_SCR 7 /* I/O: Scratch Register */ - -/* - * uart related funcs - */ -static u_int32_t -uart_getreg(u_int32_t *bas) +static uint32_t +uart_getreg(uint32_t *bas) { - return *((volatile u_int32_t *)(bas)) & 0xff; + return *((volatile uint32_t *)(bas)) & 0xff; } static void -uart_setreg(u_int32_t *bas, u_int32_t val) +uart_setreg(uint32_t *bas, uint32_t val) { - *((volatile u_int32_t *)(bas)) = (u_int32_t)val; + *((volatile uint32_t *)(bas)) = val; } static int ub_getc(void) { - while ((uart_getreg((u_int32_t *)(A10_UART_BASE + - (UART_LSR << reg_shift))) & UART_LSR_DR) == 0); + while ((uart_getreg((uint32_t *)(A10_UART_BASE + + (UART_LSR << REG_SHIFT))) & UART_LSR_DR) == 0); __asm __volatile("nop"); - return (uart_getreg((u_int32_t *)A10_UART_BASE) & 0xff); + return (uart_getreg((uint32_t *)A10_UART_BASE) & 0xff); } static void @@ -85,11 +81,11 @@ ub_putc(unsigned char c) if (c == '\n') ub_putc('\r'); - while ((uart_getreg((u_int32_t *)(A10_UART_BASE + - (UART_LSR << reg_shift))) & UART_LSR_THRE) == 0) + while ((uart_getreg((uint32_t *)(A10_UART_BASE + + (UART_LSR << REG_SHIFT))) & UART_LSR_THRE) == 0) __asm __volatile("nop"); - uart_setreg((u_int32_t *)A10_UART_BASE, c); + uart_setreg((uint32_t *)A10_UART_BASE, c); } static cn_probe_t uart_cnprobe; @@ -121,8 +117,8 @@ uart_cnprobe(struct consdev *cp) static void uart_cninit(struct consdev *cp) { - uart_setreg((u_int32_t *)(A10_UART_BASE + - (UART_FCR << reg_shift)), 0x06); + uart_setreg((uint32_t *)(A10_UART_BASE + + (UART_FCR << REG_SHIFT)), 0x06); } void Modified: projects/mtree/sys/arm/arm/cpufunc.c ============================================================================== --- projects/mtree/sys/arm/arm/cpufunc.c Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/sys/arm/arm/cpufunc.c Thu Jan 17 15:45:45 2013 (r245552) @@ -1146,7 +1146,7 @@ struct cpu_functions cortexa_cpufuncs = /* Other functions */ cpufunc_nullop, /* flush_prefetchbuf */ - arm11_drain_writebuf, /* drain_writebuf */ + armv7_drain_writebuf, /* drain_writebuf */ cpufunc_nullop, /* flush_brnchtgt_C */ (void *)cpufunc_nullop, /* flush_brnchtgt_E */ @@ -1157,7 +1157,7 @@ struct cpu_functions cortexa_cpufuncs = cpufunc_null_fixup, /* dataabt_fixup */ cpufunc_null_fixup, /* prefetchabt_fixup */ - arm11_context_switch, /* context_switch */ + armv7_context_switch, /* context_switch */ cortexa_setup /* cpu setup */ }; Modified: projects/mtree/sys/arm/arm/db_trace.c ============================================================================== --- projects/mtree/sys/arm/arm/db_trace.c Thu Jan 17 09:52:35 2013 (r245551) +++ projects/mtree/sys/arm/arm/db_trace.c Thu Jan 17 15:45:45 2013 (r245552) @@ -50,6 +50,395 @@ __FBSDID("$FreeBSD$"); #include <ddb/db_sym.h> #include <ddb/db_output.h> +#ifdef __ARM_EABI__ +/* + * Definitions for the instruction interpreter. + * + * The ARM EABI specifies how to perform the frame unwinding in the + * Exception Handling ABI for the ARM Architecture document. To perform + * the unwind we need to know the initial frame pointer, stack pointer, + * link register and program counter. We then find the entry within the + * index table that points to the function the program counter is within. + * This gives us either a list of three instructions to process, a 31-bit + * relative offset to a table of instructions, or a value telling us + * we can't unwind any further. + * + * When we have the instructions to process we need to decode them + * following table 4 in section 9.3. This describes a collection of bit + * patterns to encode that steps to take to update the stack pointer and + * link register to the correct values at the start of the function. + */ + +/* A special case when we are unable to unwind past this function */ +#define EXIDX_CANTUNWIND 1 + +/* The register names */ +#define FP 11 +#define SP 13 +#define LR 14 +#define PC 15 + +/* + * These are set in the linker script. Their addresses will be + * either the start or end of the exception table or index. + */ +extern int extab_start, extab_end, exidx_start, exidx_end; + +/* + * Entry types. + * These are the only entry types that have been seen in the kernel. + */ +#define ENTRY_MASK 0xff000000 +#define ENTRY_ARM_SU16 0x80000000 +#define ENTRY_ARM_LU16 0x81000000 + +/* Instruction masks. */ +#define INSN_VSP_MASK 0xc0 +#define INSN_VSP_SIZE_MASK 0x3f +#define INSN_STD_MASK 0xf0 +#define INSN_STD_DATA_MASK 0x0f +#define INSN_POP_TYPE_MASK 0x08 +#define INSN_POP_COUNT_MASK 0x07 +#define INSN_VSP_LARGE_INC_MASK 0xff + +/* Instruction definitions */ +#define INSN_VSP_INC 0x00 +#define INSN_VSP_DEC 0x40 +#define INSN_POP_MASKED 0x80 +#define INSN_VSP_REG 0x90 +#define INSN_POP_COUNT 0xa0 +#define INSN_FINISH 0xb0 +#define INSN_VSP_LARGE_INC 0xb2 + +/* An item in the exception index table */ +struct unwind_idx { + uint32_t offset; + uint32_t insn; +}; + +/* The state of the unwind process */ +struct unwind_state { + uint32_t registers[16]; + uint32_t start_pc; + uint32_t *insn; + u_int entries; + u_int byte; + uint16_t update_mask; +}; + +/* We need to provide these but never use them */ +void __aeabi_unwind_cpp_pr0(void); +void __aeabi_unwind_cpp_pr1(void); +void __aeabi_unwind_cpp_pr2(void); + +void +__aeabi_unwind_cpp_pr0(void) +{ + panic("__aeabi_unwind_cpp_pr0"); +} + +void +__aeabi_unwind_cpp_pr1(void) +{ + panic("__aeabi_unwind_cpp_pr1"); +} + +void +__aeabi_unwind_cpp_pr2(void) +{ + panic("__aeabi_unwind_cpp_pr2"); +} + +/* Expand a 31-bit signed value to a 32-bit signed value */ +static __inline int32_t +db_expand_prel31(uint32_t prel31) +{ + + return ((int32_t)(prel31 & 0x7fffffffu) << 1) / 2; +} + +/* + * Perform a binary search of the index table to find the function + * with the largest address that doesn't exceed addr. + */ +static struct unwind_idx * +db_find_index(uint32_t addr) +{ + unsigned int min, mid, max; + struct unwind_idx *start; + struct unwind_idx *item; + int32_t prel31_addr; + uint32_t func_addr; + + start = (struct unwind_idx *)&exidx_start; + + min = 0; + max = (&exidx_end - &exidx_start) / 2; + + while (min != max) { + mid = min + (max - min + 1) / 2; + + item = &start[mid]; + + prel31_addr = db_expand_prel31(item->offset); + func_addr = (uint32_t)&item->offset + prel31_addr; + + if (func_addr <= addr) { + min = mid; + } else { + max = mid - 1; + } + } + + return &start[min]; +} + +/* Reads the next byte from the instruction list */ +static uint8_t +db_unwind_exec_read_byte(struct unwind_state *state) +{ + uint8_t insn; + + /* Read the unwind instruction */ + insn = (*state->insn) >> (state->byte * 8); + + /* Update the location of the next instruction */ + if (state->byte == 0) { + state->byte = 3; + state->insn++; + state->entries--; + } else + state->byte--; + + return insn; +} + +/* Executes the next instruction on the list */ +static int +db_unwind_exec_insn(struct unwind_state *state) +{ + unsigned int insn; + uint32_t *vsp = (uint32_t *)state->registers[SP]; + int update_vsp = 0; + + /* This should never happen */ + if (state->entries == 0) + return 1; + + /* Read the next instruction */ + insn = db_unwind_exec_read_byte(state); + + if ((insn & INSN_VSP_MASK) == INSN_VSP_INC) { + state->registers[SP] += ((insn & INSN_VSP_SIZE_MASK) << 2) + 4; + + } else if ((insn & INSN_VSP_MASK) == INSN_VSP_DEC) { + state->registers[SP] -= ((insn & INSN_VSP_SIZE_MASK) << 2) + 4; + + } else if ((insn & INSN_STD_MASK) == INSN_POP_MASKED) { + unsigned int mask, reg; + + /* Load the mask */ + mask = db_unwind_exec_read_byte(state); + mask |= (insn & INSN_STD_DATA_MASK) << 8; + *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201301171545.r0HFjjDw095348>