Date: Wed, 11 Mar 2015 19:04:02 +0000 (UTC) From: Dimitry Andric <dim@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r279893 - in projects/clang360-import: cddl/contrib/dtracetoolkit/Proc cddl/contrib/opensolaris/common/ctf cddl/contrib/opensolaris/tools/ctf/cvt lib/libc/net lib/libc/powerpc/gen lib/l... Message-ID: <201503111904.t2BJ426g069408@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: dim Date: Wed Mar 11 19:04:01 2015 New Revision: 279893 URL: https://svnweb.freebsd.org/changeset/base/279893 Log: Merge ^/head r279759 through r279892. Added: projects/clang360-import/lib/libpmc/pmc.haswellxeon.3 - copied unchanged from r279892, head/lib/libpmc/pmc.haswellxeon.3 projects/clang360-import/lib/libstand/powerpc/syncicache.c - copied unchanged from r279892, head/lib/libstand/powerpc/syncicache.c projects/clang360-import/share/dtrace/udptrack - copied unchanged from r279892, head/share/dtrace/udptrack projects/clang360-import/sys/arm/broadcom/bcm2835/bcm283x_dwc_fdt.c - copied unchanged from r279892, head/sys/arm/broadcom/bcm2835/bcm283x_dwc_fdt.c projects/clang360-import/sys/boot/powerpc/ofw/ofwfdt.c - copied unchanged from r279892, head/sys/boot/powerpc/ofw/ofwfdt.c projects/clang360-import/sys/dev/usb/controller/dwc_otg_fdt.h - copied unchanged from r279892, head/sys/dev/usb/controller/dwc_otg_fdt.h projects/clang360-import/sys/kern/uipc_mbufhash.c - copied unchanged from r279892, head/sys/kern/uipc_mbufhash.c projects/clang360-import/sys/modules/dtb/am335x/ - copied from r279892, head/sys/modules/dtb/am335x/ projects/clang360-import/sys/sys/gzio.h - copied unchanged from r279892, head/sys/sys/gzio.h projects/clang360-import/usr.bin/procstat/procstat_cs.c - copied unchanged from r279892, head/usr.bin/procstat/procstat_cs.c Deleted: projects/clang360-import/sys/ofed/drivers/net/mlx4/utils.c projects/clang360-import/sys/ofed/drivers/net/mlx4/utils.h Modified: projects/clang360-import/cddl/contrib/dtracetoolkit/Proc/pidpersec.d projects/clang360-import/cddl/contrib/opensolaris/common/ctf/ctf_create.c projects/clang360-import/cddl/contrib/opensolaris/tools/ctf/cvt/output.c projects/clang360-import/lib/libc/net/sctp_sys_calls.c projects/clang360-import/lib/libc/powerpc/gen/_setjmp.S projects/clang360-import/lib/libc/powerpc/gen/setjmp.S projects/clang360-import/lib/libc/powerpc/gen/sigsetjmp.S projects/clang360-import/lib/libc/powerpc64/gen/_setjmp.S projects/clang360-import/lib/libc/powerpc64/gen/setjmp.S projects/clang360-import/lib/libc/powerpc64/gen/sigsetjmp.S projects/clang360-import/lib/libgpio/gpio.3 projects/clang360-import/lib/libgpio/gpio.c projects/clang360-import/lib/libgpio/libgpio.h projects/clang360-import/lib/libnv/tests/dnv_tests.cc projects/clang360-import/lib/libnv/tests/nv_tests.cc projects/clang360-import/lib/libpmc/libpmc.c projects/clang360-import/lib/libpmc/pmc.3 projects/clang360-import/lib/libpmc/pmc.haswell.3 projects/clang360-import/lib/libpmc/pmc.ivybridge.3 projects/clang360-import/lib/libpmc/pmc.ivybridgexeon.3 projects/clang360-import/lib/libpmc/pmc.sandybridge.3 projects/clang360-import/lib/libpmc/pmc.sandybridgexeon.3 projects/clang360-import/lib/libstand/Makefile projects/clang360-import/lib/libstand/powerpc/_setjmp.S projects/clang360-import/lib/libthr/thread/thr_private.h projects/clang360-import/lib/msun/man/j0.3 projects/clang360-import/lib/msun/src/e_j0.c projects/clang360-import/lib/msun/src/e_j0f.c projects/clang360-import/lib/msun/src/e_j1.c projects/clang360-import/lib/msun/src/e_j1f.c projects/clang360-import/lib/msun/src/e_jn.c projects/clang360-import/lib/msun/src/e_jnf.c projects/clang360-import/share/dtrace/Makefile projects/clang360-import/share/dtrace/tcpstate projects/clang360-import/share/man/man5/core.5 projects/clang360-import/share/man/man9/SDT.9 projects/clang360-import/share/man/man9/VOP_VPTOCNP.9 projects/clang360-import/share/misc/committers-src.dot projects/clang360-import/sys/arm/arm/cpufunc_asm_armv7.S projects/clang360-import/sys/arm/arm/cpuinfo.c projects/clang360-import/sys/arm/arm/genassym.c projects/clang360-import/sys/arm/broadcom/bcm2835/bcm2835_fb.c projects/clang360-import/sys/arm/broadcom/bcm2835/bcm2835_fbd.c projects/clang360-import/sys/arm/broadcom/bcm2835/files.bcm2835 projects/clang360-import/sys/arm/conf/ARMADAXP projects/clang360-import/sys/arm/conf/BEAGLEBONE projects/clang360-import/sys/arm/conf/CUBIEBOARD projects/clang360-import/sys/arm/conf/CUBIEBOARD2 projects/clang360-import/sys/arm/conf/DB-78XXX projects/clang360-import/sys/arm/conf/DB-88F5XXX projects/clang360-import/sys/arm/conf/DB-88F6XXX projects/clang360-import/sys/arm/conf/DOCKSTAR projects/clang360-import/sys/arm/conf/DREAMPLUG-1001 projects/clang360-import/sys/arm/conf/EXYNOS5.common projects/clang360-import/sys/arm/conf/PANDABOARD projects/clang360-import/sys/arm/conf/SHEEVAPLUG projects/clang360-import/sys/arm/conf/TS7800 projects/clang360-import/sys/arm/conf/VYBRID projects/clang360-import/sys/arm/conf/ZEDBOARD projects/clang360-import/sys/arm/include/cpu-v6.h projects/clang360-import/sys/arm/include/cpuinfo.h projects/clang360-import/sys/arm/ti/aintc.c projects/clang360-import/sys/arm/ti/am335x/am335x_dmtimer.c projects/clang360-import/sys/arm/ti/omap4/omap4_prcm_clks.c projects/clang360-import/sys/boot/libstand32/Makefile projects/clang360-import/sys/boot/ofw/common/main.c projects/clang360-import/sys/boot/ofw/libofw/elf_freebsd.c projects/clang360-import/sys/boot/ofw/libofw/openfirm.c projects/clang360-import/sys/boot/ofw/libofw/openfirm.h projects/clang360-import/sys/boot/ofw/libofw/ppc64_elf_freebsd.c projects/clang360-import/sys/boot/powerpc/ofw/Makefile projects/clang360-import/sys/boot/powerpc/ofw/metadata.c projects/clang360-import/sys/boot/sparc64/loader/metadata.c projects/clang360-import/sys/conf/NOTES projects/clang360-import/sys/conf/files projects/clang360-import/sys/conf/options projects/clang360-import/sys/dev/bge/if_bge.c projects/clang360-import/sys/dev/cadence/if_cgem.c projects/clang360-import/sys/dev/cxgbe/tom/t4_ddp.c projects/clang360-import/sys/dev/etherswitch/arswitch/arswitch.c projects/clang360-import/sys/dev/etherswitch/arswitch/arswitch_8327.c projects/clang360-import/sys/dev/etherswitch/arswitch/arswitch_phy.c projects/clang360-import/sys/dev/etherswitch/arswitch/arswitch_phy.h projects/clang360-import/sys/dev/etherswitch/arswitch/arswitch_reg.c projects/clang360-import/sys/dev/etherswitch/arswitch/arswitch_vlans.c projects/clang360-import/sys/dev/etherswitch/arswitch/arswitch_vlans.h projects/clang360-import/sys/dev/etherswitch/arswitch/arswitchreg.h projects/clang360-import/sys/dev/etherswitch/arswitch/arswitchvar.h projects/clang360-import/sys/dev/gpio/gpiobus.c projects/clang360-import/sys/dev/gpio/gpiobus_if.m projects/clang360-import/sys/dev/gpio/gpiobusvar.h projects/clang360-import/sys/dev/gpio/gpioc.c projects/clang360-import/sys/dev/gpio/ofw_gpiobus.c projects/clang360-import/sys/dev/hwpmc/hwpmc_core.c projects/clang360-import/sys/dev/hwpmc/pmc_events.h projects/clang360-import/sys/dev/hyperv/netvsc/hv_netvsc_drv_freebsd.c projects/clang360-import/sys/dev/iicbus/ds3231.c projects/clang360-import/sys/dev/iicbus/lm75.c projects/clang360-import/sys/dev/ixgbe/ixgbe.c projects/clang360-import/sys/dev/ixl/i40e_adminq_cmd.h projects/clang360-import/sys/dev/ixl/i40e_common.c projects/clang360-import/sys/dev/ixl/i40e_prototype.h projects/clang360-import/sys/dev/ixl/i40e_type.h projects/clang360-import/sys/dev/ixl/if_ixl.c projects/clang360-import/sys/dev/ixl/if_ixlv.c projects/clang360-import/sys/dev/ixl/ixl.h projects/clang360-import/sys/dev/ixl/ixl_pf.h projects/clang360-import/sys/dev/ixl/ixl_txrx.c projects/clang360-import/sys/dev/ixl/ixlv.h projects/clang360-import/sys/dev/ixl/ixlvc.c projects/clang360-import/sys/dev/pci/pci_iov.c projects/clang360-import/sys/dev/usb/controller/dwc_otg_fdt.c projects/clang360-import/sys/dev/usb/input/uhid.c projects/clang360-import/sys/dev/usb/serial/usb_serial.c projects/clang360-import/sys/dev/vt/hw/ofwfb/ofwfb.c projects/clang360-import/sys/dev/wpi/if_wpi.c projects/clang360-import/sys/kern/imgact_elf.c projects/clang360-import/sys/kern/kern_gzio.c projects/clang360-import/sys/kern/kern_sig.c projects/clang360-import/sys/kern/subr_bus.c projects/clang360-import/sys/mips/atheros/if_arge.c projects/clang360-import/sys/mips/conf/AP135.hints projects/clang360-import/sys/modules/Makefile projects/clang360-import/sys/modules/mlxen/Makefile projects/clang360-import/sys/net/ieee8023ad_lacp.c projects/clang360-import/sys/net/if_lagg.c projects/clang360-import/sys/net/if_lagg.h projects/clang360-import/sys/net/zlib.h projects/clang360-import/sys/netinet/sctp.h projects/clang360-import/sys/netinet/sctp_cc_functions.c projects/clang360-import/sys/netinet/sctp_input.c projects/clang360-import/sys/netinet/sctp_os_bsd.h projects/clang360-import/sys/netinet/sctp_pcb.c projects/clang360-import/sys/netinet/sctp_pcb.h projects/clang360-import/sys/netinet/sctp_peeloff.c projects/clang360-import/sys/netinet/sctp_structs.h projects/clang360-import/sys/netinet/sctp_timer.c projects/clang360-import/sys/netinet/sctp_usrreq.c projects/clang360-import/sys/netinet/sctputil.c projects/clang360-import/sys/netinet/tcp_usrreq.c projects/clang360-import/sys/ofed/drivers/net/mlx4/en_netdev.c projects/clang360-import/sys/ofed/drivers/net/mlx4/en_tx.c projects/clang360-import/sys/powerpc/powermac/platform_powermac.c projects/clang360-import/sys/powerpc/powerpc/syncicache.c projects/clang360-import/sys/sys/bus.h projects/clang360-import/sys/sys/gpio.h projects/clang360-import/sys/sys/mbuf.h projects/clang360-import/sys/vm/vm_reserv.c projects/clang360-import/sys/vm/vnode_pager.c projects/clang360-import/tools/regression/usr.bin/env/regress-env.rgdata projects/clang360-import/tools/regression/usr.bin/env/regress-sb.rb projects/clang360-import/usr.bin/ctlstat/ctlstat.8 projects/clang360-import/usr.bin/env/envopts.c projects/clang360-import/usr.bin/m4/misc.c projects/clang360-import/usr.bin/procstat/Makefile projects/clang360-import/usr.bin/procstat/procstat.1 projects/clang360-import/usr.bin/procstat/procstat.c projects/clang360-import/usr.bin/procstat/procstat.h projects/clang360-import/usr.bin/touch/touch.1 projects/clang360-import/usr.bin/w/w.c projects/clang360-import/usr.sbin/autofs/automount.c projects/clang360-import/usr.sbin/autofs/automountd.8 projects/clang360-import/usr.sbin/autofs/automountd.c projects/clang360-import/usr.sbin/autofs/common.c projects/clang360-import/usr.sbin/autofs/common.h projects/clang360-import/usr.sbin/autofs/popen.c projects/clang360-import/usr.sbin/gpioctl/gpioctl.8 projects/clang360-import/usr.sbin/gpioctl/gpioctl.c Directory Properties: projects/clang360-import/ (props changed) projects/clang360-import/cddl/ (props changed) projects/clang360-import/cddl/contrib/opensolaris/ (props changed) projects/clang360-import/lib/libc/ (props changed) projects/clang360-import/share/ (props changed) projects/clang360-import/sys/ (props changed) projects/clang360-import/sys/boot/ (props changed) projects/clang360-import/sys/boot/powerpc/ofw/ (props changed) projects/clang360-import/sys/conf/ (props changed) projects/clang360-import/sys/dev/hyperv/ (props changed) projects/clang360-import/usr.bin/procstat/ (props changed) Modified: projects/clang360-import/cddl/contrib/dtracetoolkit/Proc/pidpersec.d ============================================================================== --- projects/clang360-import/cddl/contrib/dtracetoolkit/Proc/pidpersec.d Wed Mar 11 17:35:07 2015 (r279892) +++ projects/clang360-import/cddl/contrib/dtracetoolkit/Proc/pidpersec.d Wed Mar 11 19:04:01 2015 (r279893) @@ -41,7 +41,7 @@ dtrace:::BEGIN { - printf("%-22s %8s %6s\n", "TIME", "LASTPID", "PID/s"); + printf("%-22s %6s\n", "TIME", "PID/s"); pids = 0; } @@ -52,6 +52,6 @@ proc:::exec-success profile:::tick-1sec { - printf("%-22Y %8d %6d\n", walltimestamp, `mpid, pids); + printf("%-22Y %6d\n", walltimestamp, pids); pids = 0; } Modified: projects/clang360-import/cddl/contrib/opensolaris/common/ctf/ctf_create.c ============================================================================== --- projects/clang360-import/cddl/contrib/opensolaris/common/ctf/ctf_create.c Wed Mar 11 17:35:07 2015 (r279892) +++ projects/clang360-import/cddl/contrib/opensolaris/common/ctf/ctf_create.c Wed Mar 11 19:04:01 2015 (r279893) @@ -583,10 +583,10 @@ ctf_discard(ctf_file_t *fp) return (0); /* no update required */ for (dtd = ctf_list_prev(&fp->ctf_dtdefs); dtd != NULL; dtd = ntd) { - if (dtd->dtd_type <= fp->ctf_dtoldid) + ntd = ctf_list_prev(dtd); + if (CTF_TYPE_TO_INDEX(dtd->dtd_type) <= fp->ctf_dtoldid) continue; /* skip types that have been committed */ - ntd = ctf_list_prev(dtd); ctf_dtd_delete(fp, dtd); } @@ -1313,10 +1313,13 @@ ctf_add_type(ctf_file_t *dst_fp, ctf_fil * unless dst_type is a forward declaration and src_type is a struct, * union, or enum (i.e. the definition of the previous forward decl). */ - if (dst_type != CTF_ERR && dst_kind != kind && ( - dst_kind != CTF_K_FORWARD || (kind != CTF_K_ENUM && - kind != CTF_K_STRUCT && kind != CTF_K_UNION))) - return (ctf_set_errno(dst_fp, ECTF_CONFLICT)); + if (dst_type != CTF_ERR && dst_kind != kind) { + if (dst_kind != CTF_K_FORWARD || (kind != CTF_K_ENUM && + kind != CTF_K_STRUCT && kind != CTF_K_UNION)) + return (ctf_set_errno(dst_fp, ECTF_CONFLICT)); + else + dst_type = CTF_ERR; + } /* * If the non-empty name was not found in the appropriate hash, search @@ -1328,7 +1331,7 @@ ctf_add_type(ctf_file_t *dst_fp, ctf_fil */ if (dst_type == CTF_ERR && name[0] != '\0') { for (dtd = ctf_list_prev(&dst_fp->ctf_dtdefs); dtd != NULL && - dtd->dtd_type > dst_fp->ctf_dtoldid; + CTF_TYPE_TO_INDEX(dtd->dtd_type) > dst_fp->ctf_dtoldid; dtd = ctf_list_prev(dtd)) { if (CTF_INFO_KIND(dtd->dtd_data.ctt_info) == kind && dtd->dtd_name != NULL && Modified: projects/clang360-import/cddl/contrib/opensolaris/tools/ctf/cvt/output.c ============================================================================== --- projects/clang360-import/cddl/contrib/opensolaris/tools/ctf/cvt/output.c Wed Mar 11 17:35:07 2015 (r279892) +++ projects/clang360-import/cddl/contrib/opensolaris/tools/ctf/cvt/output.c Wed Mar 11 19:04:01 2015 (r279893) @@ -23,8 +23,6 @@ * Use is subject to license terms. */ -#pragma ident "%Z%%M% %I% %E% SMI" - /* * Routines for preparing tdata trees for conversion into CTF data, and * for placing the resulting data into an output file. Modified: projects/clang360-import/lib/libc/net/sctp_sys_calls.c ============================================================================== --- projects/clang360-import/lib/libc/net/sctp_sys_calls.c Wed Mar 11 17:35:07 2015 (r279892) +++ projects/clang360-import/lib/libc/net/sctp_sys_calls.c Wed Mar 11 19:04:01 2015 (r279893) @@ -383,6 +383,9 @@ sctp_opt_info(int sd, sctp_assoc_t id, i case SCTP_PR_ASSOC_STATUS: ((struct sctp_prstatus *)arg)->sprstat_assoc_id = id; break; + case SCTP_MAX_CWND: + ((struct sctp_assoc_value *)arg)->assoc_id = id; + break; default: break; } Modified: projects/clang360-import/lib/libc/powerpc/gen/_setjmp.S ============================================================================== --- projects/clang360-import/lib/libc/powerpc/gen/_setjmp.S Wed Mar 11 17:35:07 2015 (r279892) +++ projects/clang360-import/lib/libc/powerpc/gen/_setjmp.S Wed Mar 11 19:04:01 2015 (r279893) @@ -56,12 +56,54 @@ ENTRY(_setjmp) mr %r10,%r1 mr %r9,%r2 stmw %r9,20(%r3) + + /* FPRs */ + stfd %f14,92+0*8(%r3) + stfd %f15,92+1*8(%r3) + stfd %f16,92+2*8(%r3) + stfd %f17,92+3*8(%r3) + stfd %f18,92+4*8(%r3) + stfd %f19,92+5*8(%r3) + stfd %f20,92+6*8(%r3) + stfd %f21,92+7*8(%r3) + stfd %f22,92+8*8(%r3) + stfd %f23,92+9*8(%r3) + stfd %f24,92+10*8(%r3) + stfd %f25,92+11*8(%r3) + stfd %f26,92+12*8(%r3) + stfd %f27,92+13*8(%r3) + stfd %f28,93+13*8(%r3) + stfd %f29,93+14*8(%r3) + stfd %f30,93+15*8(%r3) + stfd %f31,93+16*8(%r3) + li %r3,0 blr END(_setjmp) ENTRY(_longjmp) lmw %r9,20(%r3) + + /* FPRs */ + lfd %f14,92+0*8(%r3) + lfd %f15,92+1*8(%r3) + lfd %f16,92+2*8(%r3) + lfd %f17,92+3*8(%r3) + lfd %f18,92+4*8(%r3) + lfd %f19,92+5*8(%r3) + lfd %f20,92+6*8(%r3) + lfd %f21,92+7*8(%r3) + lfd %f22,92+8*8(%r3) + lfd %f23,92+9*8(%r3) + lfd %f24,92+10*8(%r3) + lfd %f25,92+11*8(%r3) + lfd %f26,92+12*8(%r3) + lfd %f27,92+13*8(%r3) + lfd %f28,93+13*8(%r3) + lfd %f29,93+14*8(%r3) + lfd %f30,93+15*8(%r3) + lfd %f31,93+16*8(%r3) + mtlr %r11 mtcr %r12 mr %r1,%r10 Modified: projects/clang360-import/lib/libc/powerpc/gen/setjmp.S ============================================================================== --- projects/clang360-import/lib/libc/powerpc/gen/setjmp.S Wed Mar 11 17:35:07 2015 (r279892) +++ projects/clang360-import/lib/libc/powerpc/gen/setjmp.S Wed Mar 11 19:04:01 2015 (r279893) @@ -66,6 +66,27 @@ ENTRY(setjmp) mr %r10,%r1 /* r10 <- stackptr */ mr %r9,%r2 /* r9 <- global ptr */ stmw %r9,20(%r6) + + /* FPRs */ + stfd %f14,92+0*8(%r6) + stfd %f15,92+1*8(%r6) + stfd %f16,92+2*8(%r6) + stfd %f17,92+3*8(%r6) + stfd %f18,92+4*8(%r6) + stfd %f19,92+5*8(%r6) + stfd %f20,92+6*8(%r6) + stfd %f21,92+7*8(%r6) + stfd %f22,92+8*8(%r6) + stfd %f23,92+9*8(%r6) + stfd %f24,92+10*8(%r6) + stfd %f25,92+11*8(%r6) + stfd %f26,92+12*8(%r6) + stfd %f27,92+13*8(%r6) + stfd %f28,93+13*8(%r6) + stfd %f29,93+14*8(%r6) + stfd %f30,93+15*8(%r6) + stfd %f31,93+16*8(%r6) + li %r3,0 /* return (0) */ blr END(setjmp) @@ -73,6 +94,27 @@ END(setjmp) WEAK_REFERENCE(CNAME(__longjmp), longjmp) ENTRY(__longjmp) lmw %r9,20(%r3) /* restore regs */ + + /* FPRs */ + lfd %f14,92+0*8(%r3) + lfd %f15,92+1*8(%r3) + lfd %f16,92+2*8(%r3) + lfd %f17,92+3*8(%r3) + lfd %f18,92+4*8(%r3) + lfd %f19,92+5*8(%r3) + lfd %f20,92+6*8(%r3) + lfd %f21,92+7*8(%r3) + lfd %f22,92+8*8(%r3) + lfd %f23,92+9*8(%r3) + lfd %f24,92+10*8(%r3) + lfd %f25,92+11*8(%r3) + lfd %f26,92+12*8(%r3) + lfd %f27,92+13*8(%r3) + lfd %f28,93+13*8(%r3) + lfd %f29,93+14*8(%r3) + lfd %f30,93+15*8(%r3) + lfd %f31,93+16*8(%r3) + mr %r6,%r4 /* save val param */ mtlr %r11 /* r11 -> link reg */ mtcr %r12 /* r12 -> condition reg */ Modified: projects/clang360-import/lib/libc/powerpc/gen/sigsetjmp.S ============================================================================== --- projects/clang360-import/lib/libc/powerpc/gen/sigsetjmp.S Wed Mar 11 17:35:07 2015 (r279892) +++ projects/clang360-import/lib/libc/powerpc/gen/sigsetjmp.S Wed Mar 11 19:04:01 2015 (r279893) @@ -71,12 +71,54 @@ ENTRY(sigsetjmp) mr %r10,%r1 mr %r9,%r2 stmw %r9,20(%r6) + + /* FPRs */ + stfd %f14,92+0*8(%r6) + stfd %f15,92+1*8(%r6) + stfd %f16,92+2*8(%r6) + stfd %f17,92+3*8(%r6) + stfd %f18,92+4*8(%r6) + stfd %f19,92+5*8(%r6) + stfd %f20,92+6*8(%r6) + stfd %f21,92+7*8(%r6) + stfd %f22,92+8*8(%r6) + stfd %f23,92+9*8(%r6) + stfd %f24,92+10*8(%r6) + stfd %f25,92+11*8(%r6) + stfd %f26,92+12*8(%r6) + stfd %f27,92+13*8(%r6) + stfd %f28,93+13*8(%r6) + stfd %f29,93+14*8(%r6) + stfd %f30,93+15*8(%r6) + stfd %f31,93+16*8(%r6) + li %r3,0 blr END(sigsetjmp) ENTRY(siglongjmp) lmw %r9,20(%r3) + + /* FPRs */ + lfd %f14,92+0*8(%r3) + lfd %f15,92+1*8(%r3) + lfd %f16,92+2*8(%r3) + lfd %f17,92+3*8(%r3) + lfd %f18,92+4*8(%r3) + lfd %f19,92+5*8(%r3) + lfd %f20,92+6*8(%r3) + lfd %f21,92+7*8(%r3) + lfd %f22,92+8*8(%r3) + lfd %f23,92+9*8(%r3) + lfd %f24,92+10*8(%r3) + lfd %f25,92+11*8(%r3) + lfd %f26,92+12*8(%r3) + lfd %f27,92+13*8(%r3) + lfd %f28,93+13*8(%r3) + lfd %f29,93+14*8(%r3) + lfd %f30,93+15*8(%r3) + lfd %f31,93+16*8(%r3) + lwz %r7,0(%r3) mr %r6,%r4 mtlr %r11 Modified: projects/clang360-import/lib/libc/powerpc64/gen/_setjmp.S ============================================================================== --- projects/clang360-import/lib/libc/powerpc64/gen/_setjmp.S Wed Mar 11 17:35:07 2015 (r279892) +++ projects/clang360-import/lib/libc/powerpc64/gen/_setjmp.S Wed Mar 11 19:04:01 2015 (r279893) @@ -56,23 +56,41 @@ ENTRY(_setjmp) mr %r10,%r1 mr %r9,%r2 std %r9,40 + 0*8(%r3) + stfd %f14,40 + 23*8(%r3) std %r10,40 + 1*8(%r3) + stfd %f15,40 + 24*8(%r3) std %r11,40 + 2*8(%r3) + stfd %f16,40 + 25*8(%r3) std %r12,40 + 3*8(%r3) + stfd %f17,40 + 26*8(%r3) std %r13,40 + 4*8(%r3) + stfd %f18,40 + 27*8(%r3) std %r14,40 + 5*8(%r3) + stfd %f19,40 + 28*8(%r3) std %r15,40 + 6*8(%r3) + stfd %f20,40 + 29*8(%r3) std %r16,40 + 7*8(%r3) + stfd %f21,40 + 30*8(%r3) std %r17,40 + 8*8(%r3) + stfd %f22,40 + 31*8(%r3) std %r18,40 + 9*8(%r3) + stfd %f23,40 + 32*8(%r3) std %r19,40 + 10*8(%r3) + stfd %f24,40 + 33*8(%r3) std %r20,40 + 11*8(%r3) + stfd %f25,40 + 34*8(%r3) std %r21,40 + 12*8(%r3) + stfd %f26,40 + 35*8(%r3) std %r22,40 + 13*8(%r3) + stfd %f27,40 + 36*8(%r3) std %r23,40 + 14*8(%r3) + stfd %f28,40 + 37*8(%r3) std %r24,40 + 15*8(%r3) + stfd %f29,40 + 38*8(%r3) std %r25,40 + 16*8(%r3) + stfd %f30,40 + 39*8(%r3) std %r26,40 + 17*8(%r3) + stfd %f31,40 + 40*8(%r3) std %r27,40 + 18*8(%r3) std %r28,40 + 19*8(%r3) std %r29,40 + 20*8(%r3) @@ -84,23 +102,41 @@ END(_setjmp) ENTRY(_longjmp) ld %r9,40 + 0*8(%r3) + lfd %f14,40 + 23*8(%r3) ld %r10,40 + 1*8(%r3) + lfd %f15,40 + 24*8(%r3) ld %r11,40 + 2*8(%r3) + lfd %f16,40 + 25*8(%r3) ld %r12,40 + 3*8(%r3) + lfd %f17,40 + 26*8(%r3) ld %r14,40 + 5*8(%r3) + lfd %f18,40 + 27*8(%r3) ld %r15,40 + 6*8(%r3) + lfd %f19,40 + 28*8(%r3) ld %r16,40 + 7*8(%r3) + lfd %f20,40 + 29*8(%r3) ld %r17,40 + 8*8(%r3) + lfd %f21,40 + 30*8(%r3) ld %r18,40 + 9*8(%r3) + lfd %f22,40 + 31*8(%r3) ld %r19,40 + 10*8(%r3) + lfd %f23,40 + 32*8(%r3) ld %r20,40 + 11*8(%r3) + lfd %f24,40 + 33*8(%r3) ld %r21,40 + 12*8(%r3) + lfd %f25,40 + 34*8(%r3) ld %r22,40 + 13*8(%r3) + lfd %f26,40 + 35*8(%r3) ld %r23,40 + 14*8(%r3) + lfd %f27,40 + 36*8(%r3) ld %r24,40 + 15*8(%r3) + lfd %f28,40 + 37*8(%r3) ld %r25,40 + 16*8(%r3) + lfd %f29,40 + 38*8(%r3) ld %r26,40 + 17*8(%r3) + lfd %f30,40 + 39*8(%r3) ld %r27,40 + 18*8(%r3) + lfd %f31,40 + 40*8(%r3) ld %r28,40 + 19*8(%r3) ld %r29,40 + 20*8(%r3) ld %r30,40 + 21*8(%r3) Modified: projects/clang360-import/lib/libc/powerpc64/gen/setjmp.S ============================================================================== --- projects/clang360-import/lib/libc/powerpc64/gen/setjmp.S Wed Mar 11 17:35:07 2015 (r279892) +++ projects/clang360-import/lib/libc/powerpc64/gen/setjmp.S Wed Mar 11 19:04:01 2015 (r279893) @@ -67,29 +67,49 @@ ENTRY(setjmp) mr %r9,%r2 /* r9 <- global ptr */ std %r9,40 + 0*8(%r6) + stfd %f14,40 + 23*8(%r6) std %r10,40 + 1*8(%r6) + stfd %f15,40 + 24*8(%r6) std %r11,40 + 2*8(%r6) + stfd %f16,40 + 25*8(%r6) std %r12,40 + 3*8(%r6) + stfd %f17,40 + 26*8(%r6) std %r13,40 + 4*8(%r6) + stfd %f18,40 + 27*8(%r6) std %r14,40 + 5*8(%r6) + stfd %f19,40 + 28*8(%r6) std %r15,40 + 6*8(%r6) + stfd %f20,40 + 29*8(%r6) std %r16,40 + 7*8(%r6) + stfd %f21,40 + 30*8(%r6) std %r17,40 + 8*8(%r6) + stfd %f22,40 + 31*8(%r6) std %r18,40 + 9*8(%r6) + stfd %f23,40 + 32*8(%r6) std %r19,40 + 10*8(%r6) + stfd %f24,40 + 33*8(%r6) std %r20,40 + 11*8(%r6) + stfd %f25,40 + 34*8(%r6) std %r21,40 + 12*8(%r6) + stfd %f26,40 + 35*8(%r6) std %r22,40 + 13*8(%r6) + stfd %f27,40 + 36*8(%r6) std %r23,40 + 14*8(%r6) + stfd %f28,40 + 37*8(%r6) std %r24,40 + 15*8(%r6) + stfd %f29,40 + 38*8(%r6) std %r25,40 + 16*8(%r6) + stfd %f30,40 + 39*8(%r6) std %r26,40 + 17*8(%r6) + stfd %f31,40 + 40*8(%r6) std %r27,40 + 18*8(%r6) std %r28,40 + 19*8(%r6) std %r29,40 + 20*8(%r6) std %r30,40 + 21*8(%r6) std %r31,40 + 22*8(%r6) + /* XXX Altivec regs */ + li %r3,0 /* return (0) */ blr END(setjmp) @@ -97,23 +117,41 @@ END(setjmp) WEAK_REFERENCE(__longjmp, longjmp) ENTRY(__longjmp) ld %r9,40 + 0*8(%r3) + lfd %f14,40 + 23*8(%r3) ld %r10,40 + 1*8(%r3) + lfd %f15,40 + 24*8(%r3) ld %r11,40 + 2*8(%r3) + lfd %f16,40 + 25*8(%r3) ld %r12,40 + 3*8(%r3) + lfd %f17,40 + 26*8(%r3) ld %r14,40 + 5*8(%r3) + lfd %f18,40 + 27*8(%r3) ld %r15,40 + 6*8(%r3) + lfd %f19,40 + 28*8(%r3) ld %r16,40 + 7*8(%r3) + lfd %f20,40 + 29*8(%r3) ld %r17,40 + 8*8(%r3) + lfd %f21,40 + 30*8(%r3) ld %r18,40 + 9*8(%r3) + lfd %f22,40 + 31*8(%r3) ld %r19,40 + 10*8(%r3) + lfd %f23,40 + 32*8(%r3) ld %r20,40 + 11*8(%r3) + lfd %f24,40 + 33*8(%r3) ld %r21,40 + 12*8(%r3) + lfd %f25,40 + 34*8(%r3) ld %r22,40 + 13*8(%r3) + lfd %f26,40 + 35*8(%r3) ld %r23,40 + 14*8(%r3) + lfd %f27,40 + 36*8(%r3) ld %r24,40 + 15*8(%r3) + lfd %f28,40 + 37*8(%r3) ld %r25,40 + 16*8(%r3) + lfd %f29,40 + 38*8(%r3) ld %r26,40 + 17*8(%r3) + lfd %f30,40 + 39*8(%r3) ld %r27,40 + 18*8(%r3) + lfd %f31,40 + 40*8(%r3) ld %r28,40 + 19*8(%r3) ld %r29,40 + 20*8(%r3) ld %r30,40 + 21*8(%r3) Modified: projects/clang360-import/lib/libc/powerpc64/gen/sigsetjmp.S ============================================================================== --- projects/clang360-import/lib/libc/powerpc64/gen/sigsetjmp.S Wed Mar 11 17:35:07 2015 (r279892) +++ projects/clang360-import/lib/libc/powerpc64/gen/sigsetjmp.S Wed Mar 11 19:04:01 2015 (r279893) @@ -72,23 +72,41 @@ ENTRY(sigsetjmp) mr %r9,%r2 std %r9,40 + 0*8(%r6) + stfd %f14,40 + 23*8(%r6) std %r10,40 + 1*8(%r6) + stfd %f15,40 + 24*8(%r6) std %r11,40 + 2*8(%r6) + stfd %f16,40 + 25*8(%r6) std %r12,40 + 3*8(%r6) + stfd %f17,40 + 26*8(%r6) std %r13,40 + 4*8(%r6) + stfd %f18,40 + 27*8(%r6) std %r14,40 + 5*8(%r6) + stfd %f19,40 + 28*8(%r6) std %r15,40 + 6*8(%r6) + stfd %f20,40 + 29*8(%r6) std %r16,40 + 7*8(%r6) + stfd %f21,40 + 30*8(%r6) std %r17,40 + 8*8(%r6) + stfd %f22,40 + 31*8(%r6) std %r18,40 + 9*8(%r6) + stfd %f23,40 + 32*8(%r6) std %r19,40 + 10*8(%r6) + stfd %f24,40 + 33*8(%r6) std %r20,40 + 11*8(%r6) + stfd %f25,40 + 34*8(%r6) std %r21,40 + 12*8(%r6) + stfd %f26,40 + 35*8(%r6) std %r22,40 + 13*8(%r6) + stfd %f27,40 + 36*8(%r6) std %r23,40 + 14*8(%r6) + stfd %f28,40 + 37*8(%r6) std %r24,40 + 15*8(%r6) + stfd %f29,40 + 38*8(%r6) std %r25,40 + 16*8(%r6) + stfd %f30,40 + 39*8(%r6) std %r26,40 + 17*8(%r6) + stfd %f31,40 + 40*8(%r6) std %r27,40 + 18*8(%r6) std %r28,40 + 19*8(%r6) std %r29,40 + 20*8(%r6) @@ -101,23 +119,41 @@ END(sigsetjmp) ENTRY(siglongjmp) ld %r9,40 + 0*8(%r3) + lfd %f14,40 + 23*8(%r3) ld %r10,40 + 1*8(%r3) + lfd %f15,40 + 24*8(%r3) ld %r11,40 + 2*8(%r3) + lfd %f16,40 + 25*8(%r3) ld %r12,40 + 3*8(%r3) + lfd %f17,40 + 26*8(%r3) ld %r14,40 + 5*8(%r3) + lfd %f18,40 + 27*8(%r3) ld %r15,40 + 6*8(%r3) + lfd %f19,40 + 28*8(%r3) ld %r16,40 + 7*8(%r3) + lfd %f20,40 + 29*8(%r3) ld %r17,40 + 8*8(%r3) + lfd %f21,40 + 30*8(%r3) ld %r18,40 + 9*8(%r3) + lfd %f22,40 + 31*8(%r3) ld %r19,40 + 10*8(%r3) + lfd %f23,40 + 32*8(%r3) ld %r20,40 + 11*8(%r3) + lfd %f24,40 + 33*8(%r3) ld %r21,40 + 12*8(%r3) + lfd %f25,40 + 34*8(%r3) ld %r22,40 + 13*8(%r3) + lfd %f26,40 + 35*8(%r3) ld %r23,40 + 14*8(%r3) + lfd %f27,40 + 36*8(%r3) ld %r24,40 + 15*8(%r3) + lfd %f28,40 + 37*8(%r3) ld %r25,40 + 16*8(%r3) + lfd %f29,40 + 38*8(%r3) ld %r26,40 + 17*8(%r3) + lfd %f30,40 + 39*8(%r3) ld %r27,40 + 18*8(%r3) + lfd %f31,40 + 40*8(%r3) ld %r28,40 + 19*8(%r3) ld %r29,40 + 20*8(%r3) ld %r30,40 + 21*8(%r3) Modified: projects/clang360-import/lib/libgpio/gpio.3 ============================================================================== --- projects/clang360-import/lib/libgpio/gpio.3 Wed Mar 11 17:35:07 2015 (r279892) +++ projects/clang360-import/lib/libgpio/gpio.3 Wed Mar 11 19:04:01 2015 (r279893) @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd November 17, 2014 +.Dd March 8, 2015 .Dt GPIO 3 .Os .Sh NAME @@ -43,41 +43,43 @@ .Ft void .Fn gpio_close "gpio_handle_t handle" .Ft int -.Fn gpio_pin_list "gpio_handle_t handle, gpio_config_t **pcfgs" +.Fn gpio_pin_list "gpio_handle_t handle" "gpio_config_t **pcfgs" .Ft int -.Fn gpio_pin_config "gpio_handle_t handle, gpio_config *cfg" +.Fn gpio_pin_config "gpio_handle_t handle" "gpio_config_t *cfg" .Ft int -.Fn gpio_pin_set_flags "gpio_handle_t handle, gpio_config_t *cfg" +.Fn gpio_pin_set_name "gpio_handle_t handle" "gpio_pin_t pin" "char *name" +.Ft int +.Fn gpio_pin_set_flags "gpio_handle_t handle" "gpio_config_t *cfg" .Ft gpio_value_t -.Fn gpio_pin_get "gpio_handle_t handle, gpio_pin_t pin" +.Fn gpio_pin_get "gpio_handle_t handle" "gpio_pin_t pin" .Ft int -.Fn gpio_pin_set "gpio_handle_t handle, gpio_pin_t pin, gpio_value_t value" +.Fn gpio_pin_set "gpio_handle_t handle" "gpio_pin_t pin" "gpio_value_t value" .Ft int -.Fn gpio_pin_toggle "gpio_handle_t handle, gpio_pin_t pin" +.Fn gpio_pin_toggle "gpio_handle_t handle" "gpio_pin_t pin" .Ft int -.Fn gpio_pin_low "gpio_handle_t handle, gpio_pin_t pin" +.Fn gpio_pin_low "gpio_handle_t handle" "gpio_pin_t pin" .Ft int -.Fn gpio_pin_high "gpio_handle_t handle, gpio_pin_t pin" +.Fn gpio_pin_high "gpio_handle_t handle" "gpio_pin_t pin" .Ft int -.Fn gpio_pin_input "gpio_handle_t handle, gpio_pin_t pin" +.Fn gpio_pin_input "gpio_handle_t handle" "gpio_pin_t pin" .Ft int -.Fn gpio_pin_output "gpio_handle_t handle, gpio_pin_t pin" +.Fn gpio_pin_output "gpio_handle_t handle" "gpio_pin_t pin" .Ft int -.Fn gpio_pin_opendrain "gpio_handle_t handle, gpio_pin_t pin" +.Fn gpio_pin_opendrain "gpio_handle_t handle" "gpio_pin_t pin" .Ft int -.Fn gpio_pin_pushpull "gpio_handle_t handle, gpio_pin_t pin" +.Fn gpio_pin_pushpull "gpio_handle_t handle" "gpio_pin_t pin" .Ft int -.Fn gpio_pin_tristate "gpio_handle_t handle, gpio_pin_t pin" +.Fn gpio_pin_tristate "gpio_handle_t handle" "gpio_pin_t pin" .Ft int -.Fn gpio_pin_pullup "gpio_handle_t handle, gpio_pin_t pin" +.Fn gpio_pin_pullup "gpio_handle_t handle" "gpio_pin_t pin" .Ft int -.Fn gpio_pin_pulldown "gpio_handle_t handle, gpio_pin_t pin" +.Fn gpio_pin_pulldown "gpio_handle_t handle" "gpio_pin_t pin" .Ft int -.Fn gpio_pin_invin "gpio_handle_t handle, gpio_pin_t pin" +.Fn gpio_pin_invin "gpio_handle_t handle" "gpio_pin_t pin" .Ft int -.Fn gpio_pin_invout "gpio_handle_t handle, gpio_pin_t pin" +.Fn gpio_pin_invout "gpio_handle_t handle" "gpio_pin_t pin" .Ft int -.Fn gpio_pin_pulsate "gpio_handle_t handle, gpio_pin_t pin" +.Fn gpio_pin_pulsate "gpio_handle_t handle" "gpio_pin_t pin" .Sh DESCRIPTION The .Nm libgpio @@ -99,7 +101,7 @@ This function takes a pointer to a which is dynamically allocated. This pointer should be freed with .Xr free 3 -when it's no longer necessary. +when it is no longer necessary. .Pp The function .Fn gpio_pin_config @@ -111,6 +113,10 @@ variable which is part of the structure. .Pp The function +.Fn gpio_pin_set_name +sets the name used to describe a pin. +.Pp +The function .Fn gpio_pin_set_flags configures a pin with the flags passed in by the .Ft gpio_config_t Modified: projects/clang360-import/lib/libgpio/gpio.c ============================================================================== --- projects/clang360-import/lib/libgpio/gpio.c Wed Mar 11 17:35:07 2015 (r279892) +++ projects/clang360-import/lib/libgpio/gpio.c Wed Mar 11 19:04:01 2015 (r279893) @@ -119,6 +119,22 @@ gpio_pin_config(gpio_handle_t handle, gp } int +gpio_pin_set_name(gpio_handle_t handle, gpio_pin_t pin, char *name) +{ + struct gpio_pin gppin; + + if (name == NULL) + return (-1); + bzero(&gppin, sizeof(gppin)); + gppin.gp_pin = pin; + strlcpy(gppin.gp_name, name, GPIOMAXNAME); + if (ioctl(handle, GPIOSETNAME, &gppin) < 0) + return (-1); + + return (0); +} + +int gpio_pin_set_flags(gpio_handle_t handle, gpio_config_t *cfg) { struct gpio_pin gppin; Modified: projects/clang360-import/lib/libgpio/libgpio.h ============================================================================== --- projects/clang360-import/lib/libgpio/libgpio.h Wed Mar 11 17:35:07 2015 (r279892) +++ projects/clang360-import/lib/libgpio/libgpio.h Wed Mar 11 19:04:01 2015 (r279893) @@ -71,6 +71,11 @@ int gpio_pin_list(gpio_handle_t, gpio_c */ int gpio_pin_config(gpio_handle_t, gpio_config_t *); /* + * Sets the GPIO pin name. The pin number and pin name to be set are passed + * as parameters. + */ +int gpio_pin_set_name(gpio_handle_t, gpio_pin_t, char *); +/* * Sets the GPIO flags on a specific GPIO pin. The pin number and the flags * to be set are passed through the gpio_config_t structure. */ Modified: projects/clang360-import/lib/libnv/tests/dnv_tests.cc ============================================================================== --- projects/clang360-import/lib/libnv/tests/dnv_tests.cc Wed Mar 11 17:35:07 2015 (r279892) +++ projects/clang360-import/lib/libnv/tests/dnv_tests.cc Wed Mar 11 19:04:01 2015 (r279893) @@ -450,7 +450,7 @@ ATF_TEST_CASE_BODY(dnvlist_take_nvlist__ nvl = nvlist_create(0); actual_val = dnvlist_take_nvlist(nvl, "123", NULL); - ATF_REQUIRE_EQ(actual_val, NULL); + ATF_REQUIRE_EQ(actual_val, static_cast<nvlist_t *>(NULL)); free(actual_val); nvlist_destroy(nvl); Modified: projects/clang360-import/lib/libnv/tests/nv_tests.cc ============================================================================== --- projects/clang360-import/lib/libnv/tests/nv_tests.cc Wed Mar 11 17:35:07 2015 (r279892) +++ projects/clang360-import/lib/libnv/tests/nv_tests.cc Wed Mar 11 19:04:01 2015 (r279893) @@ -54,7 +54,7 @@ ATF_TEST_CASE_BODY(nvlist_create__is_emp ATF_REQUIRE(nvlist_empty(nvl)); it = NULL; - ATF_REQUIRE_EQ(nvlist_next(nvl, &type, &it), NULL); + ATF_REQUIRE_EQ(nvlist_next(nvl, &type, &it), static_cast<const char *>(NULL)); nvlist_destroy(nvl); } @@ -85,7 +85,7 @@ ATF_TEST_CASE_BODY(nvlist_add_null__sing it = NULL; ATF_REQUIRE_EQ(strcmp(nvlist_next(nvl, &type, &it), key), 0); ATF_REQUIRE_EQ(type, NV_TYPE_NULL); - ATF_REQUIRE_EQ(nvlist_next(nvl, &type,&it), NULL); + ATF_REQUIRE_EQ(nvlist_next(nvl, &type,&it), static_cast<const char *>(NULL)); nvlist_destroy(nvl); } @@ -118,7 +118,7 @@ ATF_TEST_CASE_BODY(nvlist_add_bool__sing it = NULL; ATF_REQUIRE_EQ(strcmp(nvlist_next(nvl, &type, &it), key), 0); ATF_REQUIRE_EQ(type, NV_TYPE_BOOL); - ATF_REQUIRE_EQ(nvlist_next(nvl, &type,&it), NULL); + ATF_REQUIRE_EQ(nvlist_next(nvl, &type,&it), static_cast<const char *>(NULL)); nvlist_destroy(nvl); } @@ -153,7 +153,7 @@ ATF_TEST_CASE_BODY(nvlist_add_number__si it = NULL; ATF_REQUIRE_EQ(strcmp(nvlist_next(nvl, &type, &it), key), 0); ATF_REQUIRE_EQ(type, NV_TYPE_NUMBER); - ATF_REQUIRE_EQ(nvlist_next(nvl, &type,&it), NULL); + ATF_REQUIRE_EQ(nvlist_next(nvl, &type,&it), static_cast<const char *>(NULL)); nvlist_destroy(nvl); } @@ -191,7 +191,7 @@ ATF_TEST_CASE_BODY(nvlist_add_string__si it = NULL; ATF_REQUIRE_EQ(strcmp(nvlist_next(nvl, &type, &it), key), 0); ATF_REQUIRE_EQ(type, NV_TYPE_STRING); - ATF_REQUIRE_EQ(nvlist_next(nvl, &type,&it), NULL); + ATF_REQUIRE_EQ(nvlist_next(nvl, &type,&it), static_cast<const char *>(NULL)); nvlist_destroy(nvl); } @@ -237,7 +237,7 @@ ATF_TEST_CASE_BODY(nvlist_add_nvlist__si it = NULL; ATF_REQUIRE_EQ(strcmp(nvlist_next(nvl, &type, &it), key), 0); ATF_REQUIRE_EQ(type, NV_TYPE_NVLIST); - ATF_REQUIRE_EQ(nvlist_next(nvl, &type,&it), NULL); + ATF_REQUIRE_EQ(nvlist_next(nvl, &type,&it), static_cast<const char *>(NULL)); nvlist_destroy(sublist); nvlist_destroy(nvl); @@ -303,7 +303,7 @@ ATF_TEST_CASE_BODY(nvlist_add_binary__si it = NULL; ATF_REQUIRE_EQ(strcmp(nvlist_next(nvl, &type, &it), key), 0); ATF_REQUIRE_EQ(type, NV_TYPE_BINARY); - ATF_REQUIRE_EQ(nvlist_next(nvl, &type,&it), NULL); + ATF_REQUIRE_EQ(nvlist_next(nvl, &type,&it), static_cast<const char *>(NULL)); nvlist_destroy(nvl); free(value); @@ -352,7 +352,7 @@ ATF_TEST_CASE_BODY(nvlist_clone__nonempt it = NULL; ATF_REQUIRE_EQ(strcmp(nvlist_next(clone, &type, &it), key), 0); ATF_REQUIRE_EQ(type, NV_TYPE_NUMBER); - ATF_REQUIRE_EQ(nvlist_next(clone, &type, &it), NULL); + ATF_REQUIRE_EQ(nvlist_next(clone, &type, &it), static_cast<const char *>(NULL)); nvlist_destroy(clone); nvlist_destroy(nvl); @@ -400,13 +400,13 @@ verify_test_nvlist(const nvlist_t *nvl) ATF_REQUIRE_EQ(strcmp(nvlist_next(value, &type, &it), test_string_key), 0); ATF_REQUIRE_EQ(type, NV_TYPE_STRING); - ATF_REQUIRE_EQ(nvlist_next(value, &type, &it), NULL); + ATF_REQUIRE_EQ(nvlist_next(value, &type, &it), static_cast<const char *>(NULL)); it = NULL; ATF_REQUIRE_EQ(strcmp(nvlist_next(nvl, &type, &it), test_subnvlist_key), 0); ATF_REQUIRE_EQ(type, NV_TYPE_NVLIST); - ATF_REQUIRE_EQ(nvlist_next(nvl, &type, &it), NULL); + ATF_REQUIRE_EQ(nvlist_next(nvl, &type, &it), static_cast<const char *>(NULL)); } ATF_TEST_CASE_WITHOUT_HEAD(nvlist_clone__nested_nvlist); Modified: projects/clang360-import/lib/libpmc/libpmc.c ============================================================================== --- projects/clang360-import/lib/libpmc/libpmc.c Wed Mar 11 17:35:07 2015 (r279892) +++ projects/clang360-import/lib/libpmc/libpmc.c Wed Mar 11 19:04:01 2015 (r279893) @@ -325,7 +325,7 @@ PMC_CLASS_TABLE_DESC(core2, IAP, core2, PMC_CLASS_TABLE_DESC(corei7, IAP, corei7, iap); PMC_CLASS_TABLE_DESC(nehalem_ex, IAP, nehalem_ex, iap); PMC_CLASS_TABLE_DESC(haswell, IAP, haswell, iap); -PMC_CLASS_TABLE_DESC(haswell_xeon, IAP, haswell, iap); +PMC_CLASS_TABLE_DESC(haswell_xeon, IAP, haswell_xeon, iap); PMC_CLASS_TABLE_DESC(ivybridge, IAP, ivybridge, iap); PMC_CLASS_TABLE_DESC(ivybridge_xeon, IAP, ivybridge_xeon, iap); PMC_CLASS_TABLE_DESC(sandybridge, IAP, sandybridge, iap); Modified: projects/clang360-import/lib/libpmc/pmc.3 ============================================================================== --- projects/clang360-import/lib/libpmc/pmc.3 Wed Mar 11 17:35:07 2015 (r279892) +++ projects/clang360-import/lib/libpmc/pmc.3 Wed Mar 11 19:04:01 2015 (r279893) @@ -527,6 +527,7 @@ API is .Xr pmc.core2 3 , .Xr pmc.haswell 3 , .Xr pmc.haswelluc 3 , +.Xr pmc.haswellxeon 3 , .Xr pmc.iaf 3 , .Xr pmc.ivybridge 3 , .Xr pmc.ivybridgexeon 3 , Modified: projects/clang360-import/lib/libpmc/pmc.haswell.3 ============================================================================== --- projects/clang360-import/lib/libpmc/pmc.haswell.3 Wed Mar 11 17:35:07 2015 (r279892) +++ projects/clang360-import/lib/libpmc/pmc.haswell.3 Wed Mar 11 19:04:01 2015 (r279893) @@ -529,73 +529,60 @@ instruction. .It Li ILD_STALL.IQ_FULL .Pq Event 87H , Umask 04H Stall cycles due to IQ is full. -.It Li BR_INST_EXEC.COND -.Pq Event 88H , Umask 01H -Qualify conditional near branch instructions -executed, but not necessarily retired. +.It Li BR_INST_EXEC.NONTAKEN_COND +.Pq Event 88H , Umask 41H +Count conditional near branch instructions that were executed (but not +necessarily retired) and not taken. +.It Li BR_INST_EXEC.TAKEN_COND +.Pq Event 88H , Umask 81H +Count conditional near branch instructions that were executed (but not +necessarily retired) and taken. .It Li BR_INST_EXEC.DIRECT_JMP -.Pq Event 88H , Umask 02H -Qualify all unconditional near branch instructions -excluding calls and indirect branches. +.Pq Event 88H , Umask 82H +Count all unconditional near branch instructions excluding calls and +indirect branches. .It Li BR_INST_EXEC.INDIRECT_JMP_NON_CALL_RET -.Pq Event 88H , Umask 04H -Qualify executed indirect near branch instructions -that are not calls nor returns. +.Pq Event 88H , Umask 84H +Count executed indirect near branch instructions that are not calls nor +returns. .It Li BR_INST_EXEC.RETURN_NEAR -.Pq Event 88H , Umask 08H -Qualify indirect near branches that have a return -mnemonic. +.Pq Event 88H , Umask 88H +Count indirect near branches that have a return mnemonic. .It Li BR_INST_EXEC.DIRECT_NEAR_CALL -.Pq Event 88H , Umask 10H -Qualify unconditional near call branch instructions, -excluding non call branch, executed. +.Pq Event 88H , Umask 90H +Count unconditional near call branch instructions, excluding non call +branch, executed. .It Li BR_INST_EXEC.INDIRECT_NEAR_CALL -.Pq Event 88H , Umask 20H -Qualify indirect near calls, including both register and -memory indirect, executed. -.It Li BR_INST_EXEC.NONTAKEN -.Pq Event 88H , Umask 40H -Qualify non-taken near branches executed. -.It Li BR_INST_EXEC.TAKEN -.Pq Event 88H , Umask 80H -Qualify taken near branches executed. Must combine -with 01H,02H, 04H, 08H, 10H, 20H. +.Pq Event 88H , Umask A0H +Count indirect near calls, including both register and memory indirect, +executed. .It Li BR_INST_EXEC.ALL_BRANCHES .Pq Event 88H , Umask FFH -Counts all near executed branches (not necessarily -retired). -.It Li BR_MISP_EXEC.COND -.Pq Event 89H , Umask 01H -Qualify conditional near branch instructions -mispredicted. +Counts all near executed branches (not necessarily retired). +.It Li BR_MISP_EXEC.NONTAKEN_COND +.Pq Event 89H , Umask 41H +Count conditional near branch instructions mispredicted as nontaken. +.It Li BR_MISP_EXEC.TAKEN_COND +.Pq Event 89H , Umask 81H +Count conditional near branch instructions mispredicted as taken. .It Li BR_MISP_EXEC.INDIRECT_JMP_NON_CALL_RET -.Pq Event 89H , Umask 04H -Qualify mispredicted indirect near branch -instructions that are not calls nor returns. +.Pq Event 89H , Umask 84H +Count mispredicted indirect near branch instructions that are not calls +nor returns. .It Li BR_MISP_EXEC.RETURN_NEAR -.Pq Event 89H , Umask 08H -Qualify mispredicted indirect near branches that -have a return mnemonic. +.Pq Event 89H , Umask 88H +Count mispredicted indirect near branches that have a return mnemonic. .It Li BR_MISP_EXEC.DIRECT_NEAR_CALL -.Pq Event 89H , Umask 10H -Qualify mispredicted unconditional near call branch -instructions, excluding non call branch, executed. +.Pq Event 89H , Umask 90H +Count mispredicted unconditional near call branch instructions, excluding +non call branch, executed. .It Li BR_MISP_EXEC.INDIRECT_NEAR_CALL -.Pq Event 89H , Umask 20H -Qualify mispredicted indirect near calls, including -both register and memory indirect, executed. -.It Li BR_MISP_EXEC.NONTAKEN -.Pq Event 89H , Umask 40H -Qualify mispredicted non-taken near branches -executed. -.It Li BR_MISP_EXEC.TAKEN -.Pq Event 89H , Umask 80H -Qualify mispredicted taken near branches executed. -Must combine with 01H,02H, 04H, 08H, 10H, 20H. +.Pq Event 89H , Umask A0H +Count mispredicted indirect near calls, including both register and memory +indirect, executed. .It Li BR_MISP_EXEC.ALL_BRANCHES .Pq Event 89H , Umask FFH -Counts all near executed branches (not necessarily -retired). +Counts all mispredicted near executed branches (not necessarily retired). .It Li IDQ_UOPS_NOT_DELIVERED.CORE .Pq Event 9CH , Umask 01H Count number of non-delivered uops to RAT per @@ -821,30 +808,24 @@ Count cases of saving new LBR records by Randomly sampled loads whose latency is above a user defined threshold. A small fraction of the overall loads are sampled due to randomization. -.It Li MEM_UOP_RETIRED.LOADS -.Pq Event D0H , Umask 01H -Qualify retired memory uops that are loads. Combine Supports PEBS and -with umask 10H, 20H, 40H, 80H. -.It Li MEM_UOP_RETIRED.STORES -.Pq Event D0H , Umask 02H -Qualify retired memory uops that are stores. -Combine with umask 10H, 20H, 40H, 80H. -.It Li MEM_UOP_RETIRED.STLB_MISS -.Pq Event D0H , Umask 10H -Qualify retired memory uops with STLB miss. Must -combine with umask 01H, 02H, to produce counts. -.It Li MEM_UOP_RETIRED.LOCK -.Pq Event D0H , Umask 20H -Qualify retired memory uops with lock. Must combine Supports PEBS and -with umask 01H, 02H, to produce counts. -.It Li MEM_UOP_RETIRED.SPLIT -.Pq Event D0H , Umask 40H -Qualify retired memory uops with line split. Must -combine with umask 01H, 02H, to produce counts. -.It Li MEM_UOP_RETIRED.ALL -.Pq Event D0H , Umask 80H -Qualify any retired memory uops. Must combine with Supports PEBS and -umask 01H, 02H, to produce counts. +.It Li MEM_UOPS_RETIRED.STLB_MISS_LOADS +.Pq Event D0H , Umask 11H +Count retired load uops that missed the STLB. +.It Li MEM_UOPS_RETIRED.STLB_MISS_STORES +.Pq Event D0H , Umask 12H +Count retired store uops that missed the STLB. +.It Li MEM_UOPS_RETIRED.SPLIT_LOADS +.Pq Event D0H , Umask 41H +Count retired load uops that were split across a cache line. +.It Li MEM_UOPS_RETIRED.SPLIT_STORES +.Pq Event D0H , Umask 42H +Count retired store uops that were split across a cache line. +.It Li MEM_UOPS_RETIRED.ALL_LOADS +.Pq Event D0H , Umask 81H +Count all retired load uops. +.It Li MEM_UOPS_RETIRED.ALL_STORES +.Pq Event D0H , Umask 82H +Count all retired store uops. .It Li MEM_LOAD_UOPS_RETIRED.L1_HIT .Pq Event D1H , Umask 01H Retired load uops with L1 cache hits as data sources. Copied: projects/clang360-import/lib/libpmc/pmc.haswellxeon.3 (from r279892, head/lib/libpmc/pmc.haswellxeon.3) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clang360-import/lib/libpmc/pmc.haswellxeon.3 Wed Mar 11 19:04:01 2015 (r279893, copy of r279892, head/lib/libpmc/pmc.haswellxeon.3) @@ -0,0 +1,956 @@ +.\" +.\" Copyright (c) 2013 Hiren Panchasara <hiren.panchasara@gmail.com> +.\" All rights reserved. +.\" +.\" 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. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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. +.\" +.\" $FreeBSD$ +.\" +.Dd 21 November, 2014 +.Dt PMC.HASWELLXEON 3 +.Os +.Sh NAME +.Nm pmc.haswellxeon +.Nd measurement events for +.Tn Intel +.Tn Haswell Xeon +family CPUs +.Sh LIBRARY +.Lb libpmc +.Sh SYNOPSIS +.In pmc.h +.Sh DESCRIPTION +.Tn Intel +.Tn "Haswell" +CPUs contain PMCs conforming to version 2 of the +.Tn Intel +performance measurement architecture. +These CPUs may contain up to two classes of PMCs: +.Bl -tag -width "Li PMC_CLASS_IAP" +.It Li PMC_CLASS_IAF +Fixed-function counters that count only one hardware event per counter. +.It Li PMC_CLASS_IAP +Programmable counters that may be configured to count one of a defined +set of hardware events. +.El +.Pp *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201503111904.t2BJ426g069408>