From owner-svn-src-projects@FreeBSD.ORG Sun Nov 1 16:54:22 2009
Return-Path:
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id 1D1EB1065692;
Sun, 1 Nov 2009 16:54:22 +0000 (UTC)
(envelope-from nwhitehorn@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c])
by mx1.freebsd.org (Postfix) with ESMTP id 0694C8FC25;
Sun, 1 Nov 2009 16:54:22 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id nA1GsMjL028428;
Sun, 1 Nov 2009 16:54:22 GMT
(envelope-from nwhitehorn@svn.freebsd.org)
Received: (from nwhitehorn@localhost)
by svn.freebsd.org (8.14.3/8.14.3/Submit) id nA1GsLA0028395;
Sun, 1 Nov 2009 16:54:21 GMT
(envelope-from nwhitehorn@svn.freebsd.org)
Message-Id: <200911011654.nA1GsLA0028395@svn.freebsd.org>
From: Nathan Whitehorn
Date: Sun, 1 Nov 2009 16:54:21 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc:
Subject: svn commit: r198753 - in projects/ppc64: . bin/sh contrib/ncurses
contrib/ncurses/ncurses/base gnu/lib/libgcov lib/libbluetooth
lib/libc/gen lib/libc/sys lib/libpmc lib/libstand
lib/libthr/arch/ia6...
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "SVN commit messages for the src " projects"
tree"
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Sun, 01 Nov 2009 16:54:22 -0000
Author: nwhitehorn
Date: Sun Nov 1 16:54:20 2009
New Revision: 198753
URL: http://svn.freebsd.org/changeset/base/198753
Log:
IFC @ 198752 to pick up 32-bit PPC bug fixes.
Added:
projects/ppc64/lib/libc/sys/pselect.2
- copied unchanged from r198752, head/lib/libc/sys/pselect.2
projects/ppc64/lib/libthr/arch/ia64/ia64/_umtx_op_err.S
- copied unchanged from r198752, head/lib/libthr/arch/ia64/ia64/_umtx_op_err.S
projects/ppc64/sys/contrib/dev/iwn/iwlwifi-4965-228.57.2.23.fw.uu
- copied unchanged from r198752, head/sys/contrib/dev/iwn/iwlwifi-4965-228.57.2.23.fw.uu
projects/ppc64/sys/contrib/dev/iwn/iwlwifi-5000-5.4.A.11.fw.uu
- copied unchanged from r198752, head/sys/contrib/dev/iwn/iwlwifi-5000-5.4.A.11.fw.uu
projects/ppc64/sys/contrib/dev/iwn/iwlwifi-5150-8.24.2.2.fw.uu
- copied unchanged from r198752, head/sys/contrib/dev/iwn/iwlwifi-5150-8.24.2.2.fw.uu
projects/ppc64/sys/ia64/ia64/highfp.c
- copied unchanged from r198752, head/sys/ia64/ia64/highfp.c
projects/ppc64/sys/modules/iwnfw/Makefile.inc
- copied unchanged from r198752, head/sys/modules/iwnfw/Makefile.inc
projects/ppc64/sys/modules/iwnfw/iwn4965/
- copied from r198752, head/sys/modules/iwnfw/iwn4965/
projects/ppc64/sys/modules/iwnfw/iwn5000/
- copied from r198752, head/sys/modules/iwnfw/iwn5000/
projects/ppc64/sys/modules/iwnfw/iwn5150/
- copied from r198752, head/sys/modules/iwnfw/iwn5150/
projects/ppc64/tools/regression/bin/sh/expansion/question1.0
- copied unchanged from r198752, head/tools/regression/bin/sh/expansion/question1.0
projects/ppc64/tools/regression/bin/sh/expansion/set-u1.0
- copied unchanged from r198752, head/tools/regression/bin/sh/expansion/set-u1.0
projects/ppc64/tools/regression/bin/sh/expansion/set-u2.0
- copied unchanged from r198752, head/tools/regression/bin/sh/expansion/set-u2.0
Deleted:
projects/ppc64/lib/libc/gen/pselect.3
projects/ppc64/lib/libc/gen/pselect.c
projects/ppc64/sys/contrib/dev/iwn/iwlwifi-4965-4.44.17.fw.uu
Modified:
projects/ppc64/ (props changed)
projects/ppc64/Makefile.inc1
projects/ppc64/ObsoleteFiles.inc
projects/ppc64/UPDATING
projects/ppc64/bin/sh/expand.c
projects/ppc64/bin/sh/sh.1
projects/ppc64/contrib/ncurses/ (props changed)
projects/ppc64/contrib/ncurses/ncurses/base/lib_getch.c
projects/ppc64/gnu/lib/libgcov/Makefile
projects/ppc64/lib/libbluetooth/bluetooth.3
projects/ppc64/lib/libbluetooth/bluetooth.h
projects/ppc64/lib/libc/gen/Makefile.inc
projects/ppc64/lib/libc/gen/Symbol.map
projects/ppc64/lib/libc/sys/Makefile.inc
projects/ppc64/lib/libc/sys/Symbol.map
projects/ppc64/lib/libpmc/libpmc.c
projects/ppc64/lib/libstand/open.c
projects/ppc64/lib/libthr/arch/ia64/Makefile.inc
projects/ppc64/lib/libthr/arch/ia64/include/pthread_md.h
projects/ppc64/lib/libthr/thread/thr_syscalls.c
projects/ppc64/sbin/camcontrol/camcontrol.c
projects/ppc64/sbin/ddb/ddb_capture.c
projects/ppc64/sbin/geom/class/part/Makefile
projects/ppc64/sbin/geom/class/part/geom_part.c
projects/ppc64/sbin/mknod/mknod.8
projects/ppc64/sbin/mount_nfs/mount_nfs.c
projects/ppc64/share/man/man4/acpi_hp.4
projects/ppc64/share/man/man4/acpi_wmi.4
projects/ppc64/share/man/man4/atapicam.4
projects/ppc64/share/man/man4/bge.4
projects/ppc64/share/man/man4/iwn.4
projects/ppc64/share/man/man4/iwnfw.4
projects/ppc64/share/man/man4/msk.4
projects/ppc64/share/man/man4/umass.4
projects/ppc64/share/man/man5/regdomain.5
projects/ppc64/share/man/man9/Makefile
projects/ppc64/share/man/man9/get_cyclecount.9
projects/ppc64/share/zoneinfo/ (props changed)
projects/ppc64/share/zoneinfo/southamerica
projects/ppc64/sys/ (props changed)
projects/ppc64/sys/amd64/amd64/machdep.c
projects/ppc64/sys/amd64/ia32/ia32_signal.c
projects/ppc64/sys/amd64/linux32/linux32_machdep.c
projects/ppc64/sys/amd64/linux32/linux32_sysvec.c
projects/ppc64/sys/arm/arm/machdep.c
projects/ppc64/sys/arm/mv/mv_sata.c
projects/ppc64/sys/boot/common/commands.c
projects/ppc64/sys/cam/ata/ata_da.c
projects/ppc64/sys/cam/ata/ata_pmp.c
projects/ppc64/sys/cam/ata/ata_xpt.c
projects/ppc64/sys/cam/cam.h
projects/ppc64/sys/cam/cam_ccb.h
projects/ppc64/sys/cam/cam_periph.h
projects/ppc64/sys/cam/cam_xpt.c
projects/ppc64/sys/cam/cam_xpt_internal.h
projects/ppc64/sys/cam/scsi/scsi_da.c
projects/ppc64/sys/cam/scsi/scsi_sg.c
projects/ppc64/sys/cam/scsi/scsi_xpt.c
projects/ppc64/sys/cddl/compat/opensolaris/sys/vnode.h
projects/ppc64/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c
projects/ppc64/sys/cddl/contrib/opensolaris/uts/common/sys/vnode.h
projects/ppc64/sys/compat/freebsd32/freebsd32_misc.c
projects/ppc64/sys/compat/freebsd32/freebsd32_proto.h
projects/ppc64/sys/compat/freebsd32/freebsd32_syscall.h
projects/ppc64/sys/compat/freebsd32/freebsd32_syscalls.c
projects/ppc64/sys/compat/freebsd32/freebsd32_sysent.c
projects/ppc64/sys/compat/freebsd32/syscalls.master
projects/ppc64/sys/compat/linux/linux_socket.c
projects/ppc64/sys/conf/NOTES
projects/ppc64/sys/conf/files
projects/ppc64/sys/conf/files.ia64
projects/ppc64/sys/contrib/dev/iwn/LICENSE
projects/ppc64/sys/dev/aac/aac.c
projects/ppc64/sys/dev/aac/aac_cam.c
projects/ppc64/sys/dev/aac/aacreg.h
projects/ppc64/sys/dev/aac/aacvar.h
projects/ppc64/sys/dev/acpi_support/acpi_aiboost.c
projects/ppc64/sys/dev/aic7xxx/aic79xx_pci.c
projects/ppc64/sys/dev/amr/amr.c
projects/ppc64/sys/dev/ata/ata-all.c
projects/ppc64/sys/dev/ata/ata-all.h
projects/ppc64/sys/dev/ata/ata-disk.c
projects/ppc64/sys/dev/ata/ata-dma.c
projects/ppc64/sys/dev/ata/ata-lowlevel.c
projects/ppc64/sys/dev/ata/ata-pci.c
projects/ppc64/sys/dev/ata/ata-pci.h
projects/ppc64/sys/dev/ata/ata-queue.c
projects/ppc64/sys/dev/ata/ata-raid.c
projects/ppc64/sys/dev/ata/ata-sata.c
projects/ppc64/sys/dev/ata/atapi-cam.c
projects/ppc64/sys/dev/ata/atapi-cd.c
projects/ppc64/sys/dev/ata/chipsets/ata-adaptec.c
projects/ppc64/sys/dev/ata/chipsets/ata-ahci.c
projects/ppc64/sys/dev/ata/chipsets/ata-intel.c
projects/ppc64/sys/dev/ata/chipsets/ata-marvell.c
projects/ppc64/sys/dev/ata/chipsets/ata-nvidia.c
projects/ppc64/sys/dev/ata/chipsets/ata-promise.c
projects/ppc64/sys/dev/ata/chipsets/ata-serverworks.c
projects/ppc64/sys/dev/ata/chipsets/ata-siliconimage.c
projects/ppc64/sys/dev/ata/chipsets/ata-via.c
projects/ppc64/sys/dev/drm/drmP.h
projects/ppc64/sys/dev/drm/drm_scatter.c
projects/ppc64/sys/dev/drm/r600_blit.c
projects/ppc64/sys/dev/drm/radeon_cp.c
projects/ppc64/sys/dev/fdc/fdc.c
projects/ppc64/sys/dev/hwpmc/hwpmc_core.c
projects/ppc64/sys/dev/iwn/if_iwn.c
projects/ppc64/sys/dev/iwn/if_iwnreg.h
projects/ppc64/sys/dev/iwn/if_iwnvar.h
projects/ppc64/sys/dev/msk/if_msk.c
projects/ppc64/sys/dev/msk/if_mskreg.h
projects/ppc64/sys/dev/pci/pci.c
projects/ppc64/sys/dev/sym/sym_hipd.c
projects/ppc64/sys/dev/xen/xenpci/ (props changed)
projects/ppc64/sys/fs/smbfs/smbfs_vfsops.c
projects/ppc64/sys/fs/tmpfs/tmpfs_subr.c
projects/ppc64/sys/i386/bios/apm.c
projects/ppc64/sys/i386/i386/machdep.c
projects/ppc64/sys/i386/linux/linux_machdep.c
projects/ppc64/sys/i386/linux/linux_sysvec.c
projects/ppc64/sys/ia64/conf/GENERIC
projects/ppc64/sys/ia64/ia64/interrupt.c
projects/ppc64/sys/ia64/ia64/machdep.c
projects/ppc64/sys/ia64/ia64/trap.c
projects/ppc64/sys/ia64/ia64/vm_machdep.c
projects/ppc64/sys/ia64/include/md_var.h
projects/ppc64/sys/ia64/include/param.h
projects/ppc64/sys/ia64/include/proc.h
projects/ppc64/sys/kern/init_sysent.c
projects/ppc64/sys/kern/kern_context.c
projects/ppc64/sys/kern/kern_cpuset.c
projects/ppc64/sys/kern/kern_sig.c
projects/ppc64/sys/kern/kern_thread.c
projects/ppc64/sys/kern/subr_trap.c
projects/ppc64/sys/kern/sys_generic.c
projects/ppc64/sys/kern/sys_process.c
projects/ppc64/sys/kern/syscalls.c
projects/ppc64/sys/kern/syscalls.master
projects/ppc64/sys/kern/systrace_args.c
projects/ppc64/sys/kern/sysv_shm.c
projects/ppc64/sys/kern/uipc_syscalls.c
projects/ppc64/sys/mips/mips/pm_machdep.c
projects/ppc64/sys/modules/iwnfw/Makefile
projects/ppc64/sys/net80211/ieee80211_hwmp.c
projects/ppc64/sys/netgraph/NOTES
projects/ppc64/sys/netinet/ip_input.c
projects/ppc64/sys/netinet/libalias/alias.c
projects/ppc64/sys/netinet/sctp_cc_functions.c
projects/ppc64/sys/netinet/sctp_output.c
projects/ppc64/sys/pc98/pc98/machdep.c
projects/ppc64/sys/powerpc/aim/copyinout.c
projects/ppc64/sys/powerpc/aim/machdep.c
projects/ppc64/sys/powerpc/aim/swtch.S
projects/ppc64/sys/powerpc/booke/machdep.c
projects/ppc64/sys/powerpc/include/hid.h
projects/ppc64/sys/powerpc/powermac/hrowpic.c
projects/ppc64/sys/powerpc/powerpc/cpu.c
projects/ppc64/sys/powerpc/powerpc/stack_machdep.c
projects/ppc64/sys/sparc64/include/in_cksum.h
projects/ppc64/sys/sparc64/sparc64/machdep.c
projects/ppc64/sys/sun4v/sun4v/machdep.c
projects/ppc64/sys/sys/aac_ioctl.h
projects/ppc64/sys/sys/ata.h
projects/ppc64/sys/sys/conf.h
projects/ppc64/sys/sys/signalvar.h
projects/ppc64/sys/sys/syscall.h
projects/ppc64/sys/sys/syscall.mk
projects/ppc64/sys/sys/syscallsubr.h
projects/ppc64/sys/sys/sysproto.h
projects/ppc64/sys/sys/time.h
projects/ppc64/sys/tools/fw_stub.awk
projects/ppc64/sys/vm/vm_fault.c
projects/ppc64/sys/vm/vm_map.c
projects/ppc64/usr.bin/bsdiff/bsdiff/bsdiff.1
projects/ppc64/usr.bin/bsdiff/bspatch/bspatch.1
projects/ppc64/usr.bin/logger/logger.c
projects/ppc64/usr.bin/vmstat/vmstat.c
projects/ppc64/usr.sbin/crashinfo/crashinfo.sh
projects/ppc64/usr.sbin/mfiutil/mfiutil.8 (props changed)
projects/ppc64/usr.sbin/sysinstall/cdrom.c
projects/ppc64/usr.sbin/usbconfig/usbconfig.8
Modified: projects/ppc64/Makefile.inc1
==============================================================================
--- projects/ppc64/Makefile.inc1 Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/Makefile.inc1 Sun Nov 1 16:54:20 2009 (r198753)
@@ -272,7 +272,7 @@ LIB32CPUFLAGS= -march=i686 -mmmx -msse -
LIB32CPUFLAGS= -march=${TARGET_CPUTYPE}
.endif
LIB32FLAGS= -m32 ${LIB32CPUFLAGS} -mfancy-math-387 -DCOMPAT_32BIT \
- -iprefix ${LIB32TMP}/usr/ \
+ -isystem ${LIB32TMP}/usr/include/ \
-L${LIB32TMP}/usr/lib32 \
-B${LIB32TMP}/usr/lib32
@@ -599,11 +599,14 @@ installcheck_UGID:
.if ${MK_INFO} != "no"
_install-info= install-info
.endif
+.if ${MK_ZONEINFO} != "no"
+_zoneinfo= zic tzsetup
+.endif
ITOOLS= [ awk cap_mkdb cat chflags chmod chown \
date echo egrep find grep ${_install-info} \
ln lockf make mkdir mtree mv pwd_mkdb rm sed sh sysctl \
- test true uname wc zic
+ test true uname wc ${_zoneinfo}
#
# distributeworld
Modified: projects/ppc64/ObsoleteFiles.inc
==============================================================================
--- projects/ppc64/ObsoleteFiles.inc Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/ObsoleteFiles.inc Sun Nov 1 16:54:20 2009 (r198753)
@@ -14,6 +14,11 @@
# The file is partitioned: OLD_FILES first, then OLD_LIBS and OLD_DIRS last.
#
+# 20091027: pselect.3 implemented as syscall
+OLD_FILES+=usr/share/man/man3/pselect.3.gz
+# 20091005: fusword.9 and susword.9 removed
+OLD_FILES+=usr/share/man/man9/fusword.9.gz
+OLD_FILES+=usr/share/man/man9/susword.9.gz
# 20090909: vesa and dpms promoted to be i386/amd64 common
OLD_FILES+=usr/include/machine/pc/vesa.h
OLD_FILES+=usr/share/man/man4/i386/dpms.4.gz
@@ -26,6 +31,49 @@ OLD_FILES+=usr/share/man/man8/lukemftpd.
OLD_FILES+=etc/mtree/BSD.local.dist
OLD_FILES+=etc/mtree/BSD.x11.dist
OLD_FILES+=etc/mtree/BSD.x11-4.dist
+# 20090812: net80211 documentation overhaul
+OLD_FILES+=usr/share/man/man9/ieee80211_add_rates.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_add_xrates.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_alloc_node.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_attach.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_begin_scan.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_cfgget.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_cfgset.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_chan2ieee.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_chan2mode.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_create_ibss.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_crypto_attach.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_crypto_detach.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_decap.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_dump_pkt.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_dup_bss.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_encap.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_end_scan.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_find_node.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_fix_rate.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_free_allnodes.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_ieee2mhz.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_ioctl.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_lookup_node.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_media2rate.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_media_change.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_media_init.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_media_status.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_mhz2ieee.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_next_scan.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_node_attach.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_node_detach.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_node_lateattach.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_print_essid.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_proto_attach.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_proto_detach.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_rate2media.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_recv_mgmt.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_send_mgmt.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_setmode.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_timeout_nodes.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_watchdog.9.gz
+OLD_FILES+=usr/share/man/man9/ieee80211_wep_crypt.9.gz
# 20090801: vimage.h removed in favour of vnet.h
OLD_FILES+=usr/include/sys/vimage.h
# 20090719: library version bump for 8.0
Modified: projects/ppc64/UPDATING
==============================================================================
--- projects/ppc64/UPDATING Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/UPDATING Sun Nov 1 16:54:20 2009 (r198753)
@@ -22,6 +22,14 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 9.
machines to maximize performance. (To disable malloc debugging, run
ln -s aj /etc/malloc.conf.)
+20091025:
+ The iwn(4) driver has been updated to support the 5000 and 5150 series.
+ There's one kernel module for each firmware. Adding "device iwnfw"
+ to the kernel configuration file means including all three firmware
+ images inside the kernel. If you want to include just the one for
+ your wireless card, use the the devices iwn4965fw, iwn5000fw or
+ iwn5150fw.
+
20090926:
The rc.d/network_ipv6, IPv6 configuration script has been integrated
into rc.d/netif. The changes are the following:
@@ -624,6 +632,15 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 9.
userland (libpmc(3)) and the kernel module (hwpmc(4)) in
sync.
+20081009:
+ atapci kernel module now includes only generic PCI ATA
+ driver. AHCI driver moved to ataahci kernel module.
+ All vendor-specific code moved into separate kernel modules:
+ ataacard, ataacerlabs, ataadaptec, ataamd, ataati, atacenatek,
+ atacypress, atacyrix, atahighpoint, ataintel, ataite, atajmicron,
+ atamarvell, atamicron, atanational, atanetcell, atanvidia,
+ atapromise, ataserverworks, atasiliconimage, atasis, atavia
+
20080820:
The TTY subsystem of the kernel has been replaced by a new
implementation, which provides better scalability and an
Modified: projects/ppc64/bin/sh/expand.c
==============================================================================
--- projects/ppc64/bin/sh/expand.c Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/bin/sh/expand.c Sun Nov 1 16:54:20 2009 (r198753)
@@ -657,7 +657,7 @@ again: /* jump here after setting a vari
}
varlen = 0;
startloc = expdest - stackblock();
- if (!set && uflag) {
+ if (!set && uflag && *var != '@' && *var != '*') {
switch (subtype) {
case VSNORMAL:
case VSTRIMLEFT:
Modified: projects/ppc64/bin/sh/sh.1
==============================================================================
--- projects/ppc64/bin/sh/sh.1 Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/bin/sh/sh.1 Sun Nov 1 16:54:20 2009 (r198753)
@@ -32,7 +32,7 @@
.\" from: @(#)sh.1 8.6 (Berkeley) 5/4/95
.\" $FreeBSD$
.\"
-.Dd May 31, 2009
+.Dd October 24, 2009
.Dt SH 1
.Os
.Sh NAME
@@ -296,7 +296,10 @@ sh -T -c "trap 'exit 1' 2 ; some-blockin
.Ed
.It Fl u Li nounset
Write a message to standard error when attempting
-to expand a variable that is not set, and if the
+to expand a variable, a positional parameter or
+the special parameter
+.Va \&!
+that is not set, and if the
shell is not interactive, exit immediately.
.It Fl V Li vi
Enable the built-in
Modified: projects/ppc64/contrib/ncurses/ncurses/base/lib_getch.c
==============================================================================
--- projects/ppc64/contrib/ncurses/ncurses/base/lib_getch.c Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/contrib/ncurses/ncurses/base/lib_getch.c Sun Nov 1 16:54:20 2009 (r198753)
@@ -476,6 +476,12 @@ _nc_wgetch(WINDOW *win,
/* resizeterm can push KEY_RESIZE */
if (cooked_key_in_fifo()) {
*result = fifo_pull(sp);
+ /*
+ * Get the ERR from queue -- it is from WINCH,
+ * so we should take it out, the "error" is handled.
+ */
+ if (fifo_peek(sp) == -1)
+ fifo_pull(sp);
returnCode(*result >= KEY_MIN ? KEY_CODE_YES : OK);
}
}
Modified: projects/ppc64/gnu/lib/libgcov/Makefile
==============================================================================
--- projects/ppc64/gnu/lib/libgcov/Makefile Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/gnu/lib/libgcov/Makefile Sun Nov 1 16:54:20 2009 (r198753)
@@ -2,6 +2,7 @@
NO_PROFILE=
.include
+MK_SSP= no
.include "${.CURDIR}/../../usr.bin/cc/Makefile.tgt"
GCCDIR= ${.CURDIR}/../../../contrib/gcc
Modified: projects/ppc64/lib/libbluetooth/bluetooth.3
==============================================================================
--- projects/ppc64/lib/libbluetooth/bluetooth.3 Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/lib/libbluetooth/bluetooth.3 Sun Nov 1 16:54:20 2009 (r198753)
@@ -272,7 +272,7 @@ otherwise 0.
.Pp
The
.Fn bt_devinfo
-function populates prodivded
+function populates provided
.Vt bt_devinfo
structure with the information about given Bluetooth device.
The caller is expected to pass Bluetooth device name in the
Modified: projects/ppc64/lib/libbluetooth/bluetooth.h
==============================================================================
--- projects/ppc64/lib/libbluetooth/bluetooth.h Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/lib/libbluetooth/bluetooth.h Sun Nov 1 16:54:20 2009 (r198753)
@@ -163,8 +163,8 @@ int bt_devclose(int s);
int bt_devsend (int s, uint16_t opcode, void *param, size_t plen);
ssize_t bt_devrecv (int s, void *buf, size_t size, time_t to);
int bt_devreq (int s, struct bt_devreq *r, time_t to);
-int bt_devfilter(int s, struct bt_devfilter const *new,
- struct bt_devfilter *old);
+int bt_devfilter(int s, struct bt_devfilter const *newp,
+ struct bt_devfilter *oldp);
void bt_devfilter_pkt_set(struct bt_devfilter *filter, uint8_t type);
void bt_devfilter_pkt_clr(struct bt_devfilter *filter, uint8_t type);
int bt_devfilter_pkt_tst(struct bt_devfilter const *filter, uint8_t type);
Modified: projects/ppc64/lib/libc/gen/Makefile.inc
==============================================================================
--- projects/ppc64/lib/libc/gen/Makefile.inc Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/lib/libc/gen/Makefile.inc Sun Nov 1 16:54:20 2009 (r198753)
@@ -21,7 +21,7 @@ SRCS+= __getosreldate.c __xuname.c \
initgroups.c isatty.c isinf.c isnan.c jrand48.c lcong48.c \
lockf.c lrand48.c mrand48.c nftw.c nice.c \
nlist.c nrand48.c opendir.c \
- pause.c pmadvise.c popen.c posix_spawn.c pselect.c \
+ pause.c pmadvise.c popen.c posix_spawn.c \
psignal.c pw_scan.c pwcache.c \
raise.c readdir.c readpassphrase.c rewinddir.c \
scandir.c seed48.c seekdir.c sem.c semctl.c \
@@ -62,7 +62,7 @@ MAN+= alarm.3 arc4random.3 \
posix_spawnattr_getpgroup.3 posix_spawnattr_getschedparam.3 \
posix_spawnattr_getschedpolicy.3 posix_spawnattr_init.3 \
posix_spawnattr_getsigdefault.3 posix_spawnattr_getsigmask.3 \
- pselect.3 psignal.3 pwcache.3 \
+ psignal.3 pwcache.3 \
raise.3 rand48.3 readpassphrase.3 rfork_thread.3 \
scandir.3 sem_destroy.3 sem_getvalue.3 sem_init.3 \
sem_open.3 sem_post.3 sem_timedwait.3 sem_wait.3 \
Modified: projects/ppc64/lib/libc/gen/Symbol.map
==============================================================================
--- projects/ppc64/lib/libc/gen/Symbol.map Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/lib/libc/gen/Symbol.map Sun Nov 1 16:54:20 2009 (r198753)
@@ -223,7 +223,6 @@ FBSD_1.0 {
posix_madvise;
popen;
pclose;
- pselect;
psignal;
raise;
readdir;
@@ -454,7 +453,6 @@ FBSDprivate_1.0 {
__opendir2;
__pause;
_pause;
- __pselect;
__pw_scan; /* Used by (at least) libutil */
__raise;
_raise;
Modified: projects/ppc64/lib/libc/sys/Makefile.inc
==============================================================================
--- projects/ppc64/lib/libc/sys/Makefile.inc Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/lib/libc/sys/Makefile.inc Sun Nov 1 16:54:20 2009 (r198753)
@@ -83,7 +83,8 @@ MAN+= abort2.2 accept.2 access.2 acct.2
mq_setattr.2 \
msgctl.2 msgget.2 msgrcv.2 msgsnd.2 \
msync.2 munmap.2 nanosleep.2 nfssvc.2 ntp_adjtime.2 open.2 \
- pathconf.2 pipe.2 poll.2 posix_openpt.2 profil.2 ptrace.2 quotactl.2 \
+ pathconf.2 pipe.2 poll.2 posix_openpt.2 profil.2 \
+ pselect.2 ptrace.2 quotactl.2 \
read.2 readlink.2 reboot.2 recv.2 rename.2 revoke.2 rfork.2 rmdir.2 \
rtprio.2
.if !defined(NO_P1003_1B)
Modified: projects/ppc64/lib/libc/sys/Symbol.map
==============================================================================
--- projects/ppc64/lib/libc/sys/Symbol.map Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/lib/libc/sys/Symbol.map Sun Nov 1 16:54:20 2009 (r198753)
@@ -211,6 +211,7 @@ FBSD_1.0 {
posix_openpt;
preadv;
profil;
+ pselect;
ptrace;
pwritev;
quotactl;
@@ -781,6 +782,8 @@ FBSDprivate_1.0 {
__sys_preadv;
_profil;
__sys_profil;
+ _pselect;
+ __sys_pselect;
_ptrace;
__sys_ptrace;
_pwritev;
Copied: projects/ppc64/lib/libc/sys/pselect.2 (from r198752, head/lib/libc/sys/pselect.2)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ projects/ppc64/lib/libc/sys/pselect.2 Sun Nov 1 16:54:20 2009 (r198753, copy of r198752, head/lib/libc/sys/pselect.2)
@@ -0,0 +1,122 @@
+.\"
+.\" Copyright 2002 Massachusetts Institute of Technology
+.\"
+.\" Permission to use, copy, modify, and distribute this software and
+.\" its documentation for any purpose and without fee is hereby
+.\" granted, provided that both the above copyright notice and this
+.\" permission notice appear in all copies, that both the above
+.\" copyright notice and this permission notice appear in all
+.\" supporting documentation, and that the name of M.I.T. not be used
+.\" in advertising or publicity pertaining to distribution of the
+.\" software without specific, written prior permission. M.I.T. makes
+.\" no representations about the suitability of this software for any
+.\" purpose. It is provided "as is" without express or implied
+.\" warranty.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY M.I.T. ``AS IS''. M.I.T. DISCLAIMS
+.\" ALL EXPRESS OR IMPLIED WARRANTIES WITH REGARD TO THIS SOFTWARE,
+.\" INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+.\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT
+.\" SHALL M.I.T. 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 October 27, 2009
+.Dt PSELECT 2
+.Os
+.Sh NAME
+.Nm pselect
+.Nd synchronous I/O multiplexing a la POSIX.1g
+.Sh LIBRARY
+.Lb libc
+.Sh SYNOPSIS
+.In sys/select.h
+.Ft int
+.Fo pselect
+.Fa "int nfds"
+.Fa "fd_set * restrict readfds"
+.Fa "fd_set * restrict writefds"
+.Fa "fd_set * restrict exceptfds"
+.Fa "const struct timespec * restrict timeout"
+.Fa "const sigset_t * restrict newsigmask"
+.Fc
+.Sh DESCRIPTION
+The
+.Fn pselect
+function was introduced by
+.St -p1003.1g-2000
+as a slightly stronger version of
+.Xr select 2 .
+The
+.Fa nfds , readfds , writefds ,
+and
+.Fa exceptfds
+arguments are all identical to the analogous arguments of
+.Fn select .
+The
+.Fa timeout
+argument in
+.Fn pselect
+points to a
+.Vt "const struct timespec"
+rather than the (modifiable)
+.Vt "struct timeval"
+used by
+.Fn select ;
+as in
+.Fn select ,
+a null pointer may be passed to indicate that
+.Fn pselect
+should wait indefinitely.
+Finally,
+.Fa newsigmask
+specifies a signal mask which is set while waiting for input.
+When
+.Fn pselect
+returns, the original signal mask is restored.
+.Pp
+See
+.Xr select 2
+for a more detailed discussion of the semantics of this interface, and
+for macros used to manipulate the
+.Vt "fd_set"
+data type.
+.Sh RETURN VALUES
+The
+.Fn pselect
+function returns the same values and under the same conditions as
+.Fn select .
+.Sh ERRORS
+The
+.Fn pselect
+function may fail for any of the reasons documented for
+.Xr select 2
+and (if a signal mask is provided)
+.Xr sigprocmask 2 .
+.Sh SEE ALSO
+.Xr kqueue 2 ,
+.Xr poll 2 ,
+.Xr select 2 ,
+.Xr sigprocmask 2
+.Sh STANDARDS
+The
+.Fn pselect
+function conforms to
+.St -p1003.1-2001 .
+.Sh HISTORY
+The
+.Fn pselect
+function first appeared in
+.Fx 5.0 .
+.Sh AUTHORS
+The first implementation of
+.Fn pselect
+function and this manual page were written by
+.An Garrett Wollman Aq wollman@FreeBSD.org .
Modified: projects/ppc64/lib/libpmc/libpmc.c
==============================================================================
--- projects/ppc64/lib/libpmc/libpmc.c Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/lib/libpmc/libpmc.c Sun Nov 1 16:54:20 2009 (r198753)
@@ -442,6 +442,10 @@ static struct pmc_event_alias core_alias
/*
* Intel Core2 (Family 6, Model F), Core2Extreme (Family 6, Model 17H)
* and Atom (Family 6, model 1CH) PMCs.
+ *
+ * We map aliases to events on the fixed-function counters if these
+ * are present. Note that not all CPUs in this family contain fixed-function
+ * counters.
*/
static struct pmc_event_alias core2_aliases[] = {
@@ -454,8 +458,22 @@ static struct pmc_event_alias core2_alia
EV_ALIAS("unhalted-cycles", "iaf-cpu-clk-unhalted.core"),
EV_ALIAS(NULL, NULL)
};
-#define atom_aliases core2_aliases
-#define corei7_aliases core2_aliases
+
+static struct pmc_event_alias core2_aliases_without_iaf[] = {
+ EV_ALIAS("branches", "iap-br-inst-retired.any"),
+ EV_ALIAS("branch-mispredicts", "iap-br-inst-retired.mispred"),
+ EV_ALIAS("cycles", "tsc-tsc"),
+ EV_ALIAS("ic-misses", "iap-l1i-misses"),
+ EV_ALIAS("instructions", "iap-inst-retired.any_p"),
+ EV_ALIAS("interrupts", "iap-hw-int-rcv"),
+ EV_ALIAS("unhalted-cycles", "iap-cpu-clk-unhalted.core_p"),
+ EV_ALIAS(NULL, NULL)
+};
+
+#define atom_aliases core2_aliases
+#define atom_aliases_without_iaf core2_aliases_without_iaf
+#define corei7_aliases core2_aliases
+#define corei7_aliases_without_iaf core2_aliases_without_iaf
#define IAF_KW_OS "os"
#define IAF_KW_USR "usr"
@@ -2379,6 +2397,10 @@ pmc_init(void)
uint32_t abi_version;
struct module_stat pmc_modstat;
struct pmc_op_getcpuinfo op_cpu_info;
+#if defined(__amd64__) || defined(__i386__)
+ int cpu_has_iaf_counters;
+ unsigned int t;
+#endif
if (pmc_syscall != -1) /* already inited */
return (0);
@@ -2420,6 +2442,8 @@ pmc_init(void)
if (pmc_class_table == NULL)
return (-1);
+ for (n = 0; n < PMC_CLASS_TABLE_SIZE; n++)
+ pmc_class_table[n] = NULL;
/*
* Fill in the class table.
@@ -2427,6 +2451,14 @@ pmc_init(void)
n = 0;
#if defined(__amd64__) || defined(__i386__)
pmc_class_table[n++] = &tsc_class_table_descr;
+
+ /*
+ * Check if this CPU has fixed function counters.
+ */
+ cpu_has_iaf_counters = 0;
+ for (t = 0; t < cpu_info.pm_nclass; t++)
+ if (cpu_info.pm_classes[t].pm_class == PMC_CLASS_IAF)
+ cpu_has_iaf_counters = 1;
#endif
#define PMC_MDEP_INIT(C) do { \
@@ -2436,6 +2468,16 @@ pmc_init(void)
PMC_TABLE_SIZE(C##_pmc_classes); \
} while (0)
+#define PMC_MDEP_INIT_INTEL_V2(C) do { \
+ PMC_MDEP_INIT(C); \
+ if (cpu_has_iaf_counters) \
+ pmc_class_table[n++] = &iaf_class_table_descr; \
+ else \
+ pmc_mdep_event_aliases = \
+ C##_aliases_without_iaf; \
+ pmc_class_table[n] = &C##_class_table_descr; \
+ } while (0)
+
/* Configure the event name parser. */
switch (cpu_info.pm_cputype) {
#if defined(__i386__)
@@ -2461,24 +2503,17 @@ pmc_init(void)
pmc_class_table[n] = &k8_class_table_descr;
break;
case PMC_CPU_INTEL_ATOM:
- PMC_MDEP_INIT(atom);
- pmc_class_table[n++] = &iaf_class_table_descr;
- pmc_class_table[n] = &atom_class_table_descr;
+ PMC_MDEP_INIT_INTEL_V2(atom);
break;
case PMC_CPU_INTEL_CORE:
PMC_MDEP_INIT(core);
- pmc_class_table[n] = &core_class_table_descr;
break;
case PMC_CPU_INTEL_CORE2:
case PMC_CPU_INTEL_CORE2EXTREME:
- PMC_MDEP_INIT(core2);
- pmc_class_table[n++] = &iaf_class_table_descr;
- pmc_class_table[n] = &core2_class_table_descr;
+ PMC_MDEP_INIT_INTEL_V2(core2);
break;
case PMC_CPU_INTEL_COREI7:
- PMC_MDEP_INIT(corei7);
- pmc_class_table[n++] = &iaf_class_table_descr;
- pmc_class_table[n] = &corei7_class_table_descr;
+ PMC_MDEP_INIT_INTEL_V2(corei7);
break;
case PMC_CPU_INTEL_PIV:
PMC_MDEP_INIT(p4);
Modified: projects/ppc64/lib/libstand/open.c
==============================================================================
--- projects/ppc64/lib/libstand/open.c Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/lib/libstand/open.c Sun Nov 1 16:54:20 2009 (r198753)
@@ -113,6 +113,7 @@ open(const char *fname, int mode)
/* see if we opened a raw device; otherwise, 'file' is the file name. */
if (file == (char *)0 || *file == '\0') {
f->f_flags |= F_RAW;
+ f->f_rabuf = NULL;
return (fd);
}
Modified: projects/ppc64/lib/libthr/arch/ia64/Makefile.inc
==============================================================================
--- projects/ppc64/lib/libthr/arch/ia64/Makefile.inc Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/lib/libthr/arch/ia64/Makefile.inc Sun Nov 1 16:54:20 2009 (r198753)
@@ -2,4 +2,4 @@
.PATH: ${.CURDIR}/arch/${MACHINE_ARCH}/${MACHINE_ARCH}
-SRCS+= pthread_md.c
+SRCS+= _umtx_op_err.S pthread_md.c
Copied: projects/ppc64/lib/libthr/arch/ia64/ia64/_umtx_op_err.S (from r198752, head/lib/libthr/arch/ia64/ia64/_umtx_op_err.S)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ projects/ppc64/lib/libthr/arch/ia64/ia64/_umtx_op_err.S Sun Nov 1 16:54:20 2009 (r198753, copy of r198752, head/lib/libthr/arch/ia64/ia64/_umtx_op_err.S)
@@ -0,0 +1,35 @@
+/*-
+ * Copyright (c) 2009 Marcel Moolenaar
+ * 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.
+ */
+
+#include
+__FBSDID("$FreeBSD$");
+
+#include
+
+ENTRY(_umtx_op_err, 5)
+ CALLSYS_NOERROR(_umtx_op)
+ br.ret.sptk.few rp
+END(_umtx_op_err)
Modified: projects/ppc64/lib/libthr/arch/ia64/include/pthread_md.h
==============================================================================
--- projects/ppc64/lib/libthr/arch/ia64/include/pthread_md.h Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/lib/libthr/arch/ia64/include/pthread_md.h Sun Nov 1 16:54:20 2009 (r198753)
@@ -33,6 +33,8 @@
#define CPU_SPINWAIT
+#define HAS__UMTX_OP_ERR 1
+
#define DTV_OFFSET offsetof(struct tcb, tcb_dtv)
/*
Modified: projects/ppc64/lib/libthr/thread/thr_syscalls.c
==============================================================================
--- projects/ppc64/lib/libthr/thread/thr_syscalls.c Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/lib/libthr/thread/thr_syscalls.c Sun Nov 1 16:54:20 2009 (r198753)
@@ -104,6 +104,8 @@ extern int __sys_accept(int, struct sock
extern int __sys_connect(int, const struct sockaddr *, socklen_t);
extern int __sys_fsync(int);
extern int __sys_msync(void *, size_t, int);
+extern int __sys_pselect(int, fd_set *, fd_set *, fd_set *,
+ const struct timespec *, const sigset_t *);
extern int __sys_poll(struct pollfd *, unsigned, int);
extern ssize_t __sys_recv(int, void *, size_t, int);
extern ssize_t __sys_recvfrom(int, void *, size_t, int, struct sockaddr *, socklen_t *);
@@ -394,7 +396,7 @@ ___pselect(int count, fd_set *rfds, fd_s
int ret;
_thr_cancel_enter(curthread);
- ret = __pselect(count, rfds, wfds, efds, timo, mask);
+ ret = __sys_pselect(count, rfds, wfds, efds, timo, mask);
_thr_cancel_leave(curthread);
return (ret);
Modified: projects/ppc64/sbin/camcontrol/camcontrol.c
==============================================================================
--- projects/ppc64/sbin/camcontrol/camcontrol.c Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/sbin/camcontrol/camcontrol.c Sun Nov 1 16:54:20 2009 (r198753)
@@ -186,7 +186,7 @@ static int scsidoinquiry(struct cam_devi
char *combinedopt, int retry_count, int timeout);
static int scsiinquiry(struct cam_device *device, int retry_count, int timeout);
static int scsiserial(struct cam_device *device, int retry_count, int timeout);
-static int scsixferrate(struct cam_device *device);
+static int camxferrate(struct cam_device *device);
#endif /* MINIMALISTIC */
static int parse_btl(char *tstr, int *bus, int *target, int *lun,
cam_argmask *arglst);
@@ -663,7 +663,7 @@ scsidoinquiry(struct cam_device *device,
return(error);
if (arglist & CAM_ARG_GET_XFERRATE)
- error = scsixferrate(device);
+ error = camxferrate(device);
return(error);
}
@@ -873,14 +873,18 @@ scsiserial(struct cam_device *device, in
}
static int
-scsixferrate(struct cam_device *device)
+camxferrate(struct cam_device *device)
{
+ struct ccb_pathinq cpi;
u_int32_t freq = 0;
u_int32_t speed = 0;
union ccb *ccb;
u_int mb;
int retval = 0;
+ if ((retval = get_cpi(device, &cpi)) != 0)
+ return (1);
+
ccb = cam_getccb(device);
if (ccb == NULL) {
@@ -913,6 +917,8 @@ scsixferrate(struct cam_device *device)
}
+ speed = cpi.base_transfer_speed;
+ freq = 0;
if (ccb->cts.transport == XPORT_SPI) {
struct ccb_trans_settings_spi *spi =
&ccb->cts.xport_specific.spi;
@@ -920,31 +926,44 @@ scsixferrate(struct cam_device *device)
if ((spi->valid & CTS_SPI_VALID_SYNC_RATE) != 0) {
freq = scsi_calc_syncsrate(spi->sync_period);
speed = freq;
- } else {
- struct ccb_pathinq cpi;
-
- retval = get_cpi(device, &cpi);
- if (retval == 0) {
- speed = cpi.base_transfer_speed;
- freq = 0;
- }
}
-
- fprintf(stdout, "%s%d: ", device->device_name,
- device->dev_unit_num);
-
if ((spi->valid & CTS_SPI_VALID_BUS_WIDTH) != 0) {
speed *= (0x01 << spi->bus_width);
}
+ } else if (ccb->cts.transport == XPORT_FC) {
+ struct ccb_trans_settings_fc *fc =
+ &ccb->cts.xport_specific.fc;
+
+ if (fc->valid & CTS_FC_VALID_SPEED)
+ speed = fc->bitrate;
+ } else if (ccb->cts.transport == XPORT_SAS) {
+ struct ccb_trans_settings_sas *sas =
+ &ccb->cts.xport_specific.sas;
+
+ if (sas->valid & CTS_SAS_VALID_SPEED)
+ speed = sas->bitrate;
+ } else if (ccb->cts.transport == XPORT_SATA) {
+ struct ccb_trans_settings_sata *sata =
+ &ccb->cts.xport_specific.sata;
+
+ if (sata->valid & CTS_SATA_VALID_SPEED)
+ speed = sata->bitrate;
+ }
+
+ mb = speed / 1000;
+ if (mb > 0) {
+ fprintf(stdout, "%s%d: %d.%03dMB/s transfers ",
+ device->device_name, device->dev_unit_num,
+ mb, speed % 1000);
+ } else {
+ fprintf(stdout, "%s%d: %dKB/s transfers ",
+ device->device_name, device->dev_unit_num,
+ speed);
+ }
- mb = speed / 1000;
-
- if (mb > 0)
- fprintf(stdout, "%d.%03dMB/s transfers ",
- mb, speed % 1000);
- else
- fprintf(stdout, "%dKB/s transfers ",
- speed);
+ if (ccb->cts.transport == XPORT_SPI) {
+ struct ccb_trans_settings_spi *spi =
+ &ccb->cts.xport_specific.spi;
if (((spi->valid & CTS_SPI_VALID_SYNC_OFFSET) != 0)
&& (spi->sync_offset != 0))
@@ -964,25 +983,22 @@ scsixferrate(struct cam_device *device)
&& (spi->sync_offset != 0)) {
fprintf(stdout, ")");
}
- } else {
- struct ccb_pathinq cpi;
-
- retval = get_cpi(device, &cpi);
-
- if (retval != 0)
- goto xferrate_bailout;
-
- speed = cpi.base_transfer_speed;
- freq = 0;
-
- mb = speed / 1000;
-
- if (mb > 0)
- fprintf(stdout, "%d.%03dMB/s transfers ",
- mb, speed % 1000);
- else
- fprintf(stdout, "%dKB/s transfers ",
- speed);
+ } else if (ccb->cts.transport == XPORT_ATA) {
+ struct ccb_trans_settings_ata *ata =
+ &ccb->cts.xport_specific.ata;
+
+ if (ata->valid & CTS_ATA_VALID_BYTECOUNT) {
+ fprintf(stdout, "(PIO size %dbytes)",
+ ata->bytecount);
+ }
+ } else if (ccb->cts.transport == XPORT_SATA) {
+ struct ccb_trans_settings_sata *sata =
+ &ccb->cts.xport_specific.sata;
+
+ if (sata->valid & CTS_SATA_VALID_BYTECOUNT) {
+ fprintf(stdout, "(PIO size %dbytes)",
+ sata->bytecount);
+ }
}
if (ccb->cts.protocol == PROTO_SCSI) {
@@ -1305,6 +1321,7 @@ ataidentify(struct cam_device *device, i
fprintf(stdout, "%s%d: ", device->device_name,
device->dev_unit_num);
ata_print_ident(ident_buf);
+ camxferrate(device);
atacapprint(ident_buf);
free(ident_buf);
Modified: projects/ppc64/sbin/ddb/ddb_capture.c
==============================================================================
--- projects/ppc64/sbin/ddb/ddb_capture.c Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/sbin/ddb/ddb_capture.c Sun Nov 1 16:54:20 2009 (r198753)
@@ -95,24 +95,24 @@ kread_symbol(kvm_t *kvm, int index, void
static void
ddb_capture_print_kvm(kvm_t *kvm)
{
- u_int db_capture_bufsize;
+ u_int db_capture_bufoff;
char *buffer, *db_capture_buf;
if (kread_symbol(kvm, X_DB_CAPTURE_BUF, &db_capture_buf,
sizeof(db_capture_buf), 0) < 0)
errx(-1, "kvm: unable to read db_capture_buf");
- if (kread_symbol(kvm, X_DB_CAPTURE_BUFSIZE, &db_capture_bufsize,
- sizeof(db_capture_bufsize), 0) < 0)
- errx(-1, "kvm: unable to read db_capture_bufsize");
+ if (kread_symbol(kvm, X_DB_CAPTURE_BUFOFF, &db_capture_bufoff,
+ sizeof(db_capture_bufoff), 0) < 0)
+ errx(-1, "kvm: unable to read db_capture_bufoff");
- buffer = malloc(db_capture_bufsize + 1);
+ buffer = malloc(db_capture_bufoff + 1);
if (buffer == NULL)
- err(-1, "malloc: db_capture_bufsize (%u)",
- db_capture_bufsize);
- bzero(buffer, db_capture_bufsize + 1);
+ err(-1, "malloc: db_capture_bufoff (%u)",
+ db_capture_bufoff);
+ bzero(buffer, db_capture_bufoff + 1);
- if (kread(kvm, db_capture_buf, buffer, db_capture_bufsize, 0) < 0)
+ if (kread(kvm, db_capture_buf, buffer, db_capture_bufoff, 0) < 0)
errx(-1, "kvm: unable to read buffer");
printf("%s\n", buffer);
@@ -161,7 +161,7 @@ ddb_capture_status_kvm(kvm_t *kvm)
errx(-1, "kvm: unable to read db_capture_bufsize");
if (kread_symbol(kvm, X_DB_CAPTURE_INPROGRESS,
&db_capture_inprogress, sizeof(db_capture_inprogress), 0) < 0)
- err(-1, "kvm: unable to read db_capture_inpgoress");
+ err(-1, "kvm: unable to read db_capture_inprogress");
printf("%u/%u bytes used\n", db_capture_bufoff, db_capture_bufsize);
if (db_capture_inprogress)
printf("capture is on\n");
Modified: projects/ppc64/sbin/geom/class/part/Makefile
==============================================================================
--- projects/ppc64/sbin/geom/class/part/Makefile Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/sbin/geom/class/part/Makefile Sun Nov 1 16:54:20 2009 (r198753)
@@ -6,6 +6,4 @@ CLASS= part
LDADD= -lutil
-WARNS?= 4
-
.include
Modified: projects/ppc64/sbin/geom/class/part/geom_part.c
==============================================================================
--- projects/ppc64/sbin/geom/class/part/geom_part.c Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/sbin/geom/class/part/geom_part.c Sun Nov 1 16:54:20 2009 (r198753)
@@ -192,6 +192,7 @@ find_provider(struct ggeom *gp, unsigned
unsigned long long sector, bestsector;
bestpp = NULL;
+ bestsector = 0;
LIST_FOREACH(pp, &gp->lg_provider, lg_provider) {
s = find_provcfg(pp, "start");
if (s == NULL) {
Modified: projects/ppc64/sbin/mknod/mknod.8
==============================================================================
--- projects/ppc64/sbin/mknod/mknod.8 Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/sbin/mknod/mknod.8 Sun Nov 1 16:54:20 2009 (r198753)
@@ -28,7 +28,7 @@
.\" @(#)mknod.8 8.2 (Berkeley) 12/11/93
.\" $FreeBSD$
.\"
-.Dd December 15, 2004
+.Dd October 31, 2009
.Dt MKNOD 8
.Os
.Sh NAME
@@ -74,9 +74,7 @@ and pseudo devices, and are type
.It Ar major
The major device number is an integer number which tells the kernel
which device driver entry point to use.
-To learn what
-major device number to use for a particular device, check
-.Pa /usr/src/sys/conf/majors .
+This is a compatibility shim and should be left zero.
.It Ar minor
The minor device number tells the kernel which subunit
the node corresponds to on the device; for example,
Modified: projects/ppc64/sbin/mount_nfs/mount_nfs.c
==============================================================================
--- projects/ppc64/sbin/mount_nfs/mount_nfs.c Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/sbin/mount_nfs/mount_nfs.c Sun Nov 1 16:54:20 2009 (r198753)
@@ -232,16 +232,16 @@ main(int argc, char *argv[])
char *pnextopt = NULL;
char *val = "";
pass_flag_to_nmount = 1;
- pval = strchr(opt, '=');
pnextopt = strchr(opt, ',');
+ if (pnextopt != NULL) {
+ *pnextopt = '\0';
+ pnextopt++;
+ }
+ pval = strchr(opt, '=');
if (pval != NULL) {
*pval = '\0';
val = pval + 1;
}
- if (pnextopt) {
- *pnextopt = '\0';
- pnextopt++;
- }
if (strcmp(opt, "bg") == 0) {
opflags |= BGRND;
pass_flag_to_nmount=0;
Modified: projects/ppc64/share/man/man4/acpi_hp.4
==============================================================================
--- projects/ppc64/share/man/man4/acpi_hp.4 Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/share/man/man4/acpi_hp.4 Sun Nov 1 16:54:20 2009 (r198753)
@@ -256,7 +256,7 @@ sysctl dev.acpi_hp.0.cmi_detail=7
The
.Nm
device driver first appeared in
-.Fx CURRENT .
+.Fx 8.0 .
.Sh AUTHORS
.An -nosplit
The
@@ -279,7 +279,7 @@ http://www.microsoft.com/whdc/system/pnp
This manual page was written by
.An Michael Gmelin Aq freebsd@grem.de
.Sh BUGS
-This driver is experimental and has only been tested on CURRENT i386 on an
+This driver is experimental and has only been tested on i386 on an
HP Compaq 8510p which featured all supported wireless devices (WWAN/BT/WLAN).
Expect undefined results when operating on different hardware.
.Pp
Modified: projects/ppc64/share/man/man4/acpi_wmi.4
==============================================================================
--- projects/ppc64/share/man/man4/acpi_wmi.4 Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/share/man/man4/acpi_wmi.4 Sun Nov 1 16:54:20 2009 (r198753)
@@ -79,7 +79,7 @@ GUID IN
The
.Nm
device driver first appeared in
-.Fx CURRENT .
+.Fx 8.0 .
.Sh AUTHORS
.An -nosplit
The
Modified: projects/ppc64/share/man/man4/atapicam.4
==============================================================================
--- projects/ppc64/share/man/man4/atapicam.4 Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/share/man/man4/atapicam.4 Sun Nov 1 16:54:20 2009 (r198753)
@@ -39,7 +39,6 @@ place the following lines in your
kernel configuration file:
.Bd -ragged -offset indent
.Cd "device scbus"
-.Cd "device cam"
.Cd "device ata"
.Cd "device atapicam"
.Ed
Modified: projects/ppc64/share/man/man4/bge.4
==============================================================================
--- projects/ppc64/share/man/man4/bge.4 Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/share/man/man4/bge.4 Sun Nov 1 16:54:20 2009 (r198753)
@@ -31,7 +31,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd Oct 7, 2009
+.Dd October 7, 2009
.Dt BGE 4
.Os
.Sh NAME
Modified: projects/ppc64/share/man/man4/iwn.4
==============================================================================
--- projects/ppc64/share/man/man4/iwn.4 Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/share/man/man4/iwn.4 Sun Nov 1 16:54:20 2009 (r198753)
@@ -25,36 +25,53 @@
.\"
.\" $FreeBSD$
.\"
-.Dd April 13, 2008
+.Dd October 25, 2009
.Os
.Dt IWN 4
.Sh NAME
.Nm iwn
-.Nd "Intel Wireless WiFi Link 4965AGN IEEE 802.11n driver"
+.Nd "Intel Wireless WiFi Link 4965/5000 IEEE 802.11n driver"
.Sh SYNOPSIS
To compile this driver into the kernel,
include the following lines in your
kernel configuration file:
.Bd -ragged -offset indent
.Cd "device iwn"
-.Cd "device iwnfw"
.Cd "device pci"
.Cd "device wlan"
.Cd "device firmware"
.Ed
.Pp
+You also need to select a firmware for your device.
+Choose one from:
+.Bd -ragged -offset indent
+.Cd "device iwn4965fw"
+.Cd "device iwn5000fw"
+.Cd "device iwn5100fw"
+.Ed
+.Pp
+Or you can use
+.Bd -ragged -offset indent
+.Cd "device iwnfw"
+.Ed
+.Pp
+to include them all.
+.Pp
Alternatively, to load the driver as a
-module at boot time, place the following line in
+module at boot time, place the following lines in
.Xr loader.conf 5 :
.Bd -literal -offset indent
if_iwn_load="YES"
+iwn4965fw_load="YES"
+iwn5000fw_load="YES"
+iwn5100fw_load="YES"
.Ed
.Sh DESCRIPTION
The
.Nm
driver provides support for
.Tn Intel
-Wireless WiFi Link 4965AGN PCI-Express network adapters.
+Wireless WiFi Link 4965 and 5000 series of PCI-Express network adapters.
.Nm
supports
.Cm station ,
Modified: projects/ppc64/share/man/man4/iwnfw.4
==============================================================================
--- projects/ppc64/share/man/man4/iwnfw.4 Sun Nov 1 13:06:15 2009 (r198752)
+++ projects/ppc64/share/man/man4/iwnfw.4 Sun Nov 1 16:54:20 2009 (r198753)
@@ -22,7 +22,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd May 9, 2009
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
From owner-svn-src-projects@FreeBSD.ORG Sun Nov 1 17:05:10 2009
Return-Path:
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id 2CA57106566B;
Sun, 1 Nov 2009 17:05:10 +0000 (UTC)
(envelope-from nwhitehorn@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c])
by mx1.freebsd.org (Postfix) with ESMTP id 1A8058FC0A;
Sun, 1 Nov 2009 17:05:10 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id nA1H5ALf028690;
Sun, 1 Nov 2009 17:05:10 GMT
(envelope-from nwhitehorn@svn.freebsd.org)
Received: (from nwhitehorn@localhost)
by svn.freebsd.org (8.14.3/8.14.3/Submit) id nA1H5AFQ028689;
Sun, 1 Nov 2009 17:05:10 GMT
(envelope-from nwhitehorn@svn.freebsd.org)
Message-Id: <200911011705.nA1H5AFQ028689@svn.freebsd.org>
From: Nathan Whitehorn
Date: Sun, 1 Nov 2009 17:05:09 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc:
Subject: svn commit: r198754 - projects/ppc64/sys/powerpc/aim
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "SVN commit messages for the src " projects"
tree"
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Sun, 01 Nov 2009 17:05:10 -0000
Author: nwhitehorn
Date: Sun Nov 1 17:05:08 2009
New Revision: 198754
URL: http://svn.freebsd.org/changeset/base/198754
Log:
Merge changes to thread switching from PPC32.
Modified:
projects/ppc64/sys/powerpc/aim/swtch.S
projects/ppc64/sys/powerpc/aim/swtch64.S
Modified: projects/ppc64/sys/powerpc/aim/swtch.S
==============================================================================
--- projects/ppc64/sys/powerpc/aim/swtch.S Sun Nov 1 16:54:20 2009 (r198753)
+++ projects/ppc64/sys/powerpc/aim/swtch.S Sun Nov 1 17:05:08 2009 (r198754)
@@ -94,7 +94,7 @@ ENTRY(cpu_switch)
isync
stw %r16,PCB_AIM_USR_VSID(%r6)
stw %r1,PCB_SP(%r6) /* Save the stack pointer */
- stw %r2,PCB_TOC(%r5) /* Save the TOC pointer */
+ stw %r2,PCB_TOC(%r6) /* Save the TOC pointer */
mr %r14,%r3 /* Copy the old thread ptr... */
mr %r15,%r4 /* and the new thread ptr in scratch */
Modified: projects/ppc64/sys/powerpc/aim/swtch64.S
==============================================================================
--- projects/ppc64/sys/powerpc/aim/swtch64.S Sun Nov 1 16:54:20 2009 (r198753)
+++ projects/ppc64/sys/powerpc/aim/swtch64.S Sun Nov 1 17:05:08 2009 (r198754)
@@ -57,6 +57,7 @@
*/
#include "assym.s"
+#include "opt_sched.h"
#include
@@ -81,38 +82,35 @@ ENTRY(cpu_throw)
* Switch to a new thread saving the current state in the old thread.
*/
ENTRY(cpu_switch)
- std %r5,TD_LOCK(%r3) /* ULE: update old thread's lock */
- /* XXX needs to change for MP */
-
- ld %r5,TD_PCB(%r3) /* Get the old thread's PCB ptr */
- std %r12,PCB_CONTEXT(%r5) /* Save the non-volatile GP regs.
+ ld %r6,TD_PCB(%r3) /* Get the old thread's PCB ptr */
+ std %r12,PCB_CONTEXT(%r6) /* Save the non-volatile GP regs.
These can now be used for scratch */
- std %r13,PCB_CONTEXT+1*8(%r5)
- std %r14,PCB_CONTEXT+2*8(%r5)
- std %r15,PCB_CONTEXT+3*8(%r5)
- std %r16,PCB_CONTEXT+4*8(%r5)
- std %r17,PCB_CONTEXT+5*8(%r5)
- std %r18,PCB_CONTEXT+6*8(%r5)
- std %r19,PCB_CONTEXT+7*8(%r5)
- std %r20,PCB_CONTEXT+8*8(%r5)
- std %r21,PCB_CONTEXT+9*8(%r5)
- std %r22,PCB_CONTEXT+10*8(%r5)
- std %r23,PCB_CONTEXT+11*8(%r5)
- std %r24,PCB_CONTEXT+12*8(%r5)
- std %r25,PCB_CONTEXT+13*8(%r5)
- std %r26,PCB_CONTEXT+14*8(%r5)
- std %r27,PCB_CONTEXT+15*8(%r5)
- std %r28,PCB_CONTEXT+16*8(%r5)
- std %r29,PCB_CONTEXT+17*8(%r5)
- std %r30,PCB_CONTEXT+18*8(%r5)
- std %r31,PCB_CONTEXT+19*8(%r5)
+ std %r13,PCB_CONTEXT+1*8(%r6)
+ std %r14,PCB_CONTEXT+2*8(%r6)
+ std %r15,PCB_CONTEXT+3*8(%r6)
+ std %r16,PCB_CONTEXT+4*8(%r6)
+ std %r17,PCB_CONTEXT+5*8(%r6)
+ std %r18,PCB_CONTEXT+6*8(%r6)
+ std %r19,PCB_CONTEXT+7*8(%r6)
+ std %r20,PCB_CONTEXT+8*8(%r6)
+ std %r21,PCB_CONTEXT+9*8(%r6)
+ std %r22,PCB_CONTEXT+10*8(%r6)
+ std %r23,PCB_CONTEXT+11*8(%r6)
+ std %r24,PCB_CONTEXT+12*8(%r6)
+ std %r25,PCB_CONTEXT+13*8(%r6)
+ std %r26,PCB_CONTEXT+14*8(%r6)
+ std %r27,PCB_CONTEXT+15*8(%r6)
+ std %r28,PCB_CONTEXT+16*8(%r6)
+ std %r29,PCB_CONTEXT+17*8(%r6)
+ std %r30,PCB_CONTEXT+18*8(%r6)
+ std %r31,PCB_CONTEXT+19*8(%r6)
mfcr %r16 /* Save the condition register */
- std %r16,PCB_CR(%r5)
+ std %r16,PCB_CR(%r6)
mflr %r16 /* Save the link register */
- std %r16,PCB_LR(%r5)
- std %r1,PCB_SP(%r5) /* Save the stack pointer */
- std %r2,PCB_TOC(%r5) /* Save the TOC pointer */
+ std %r16,PCB_LR(%r6)
+ std %r1,PCB_SP(%r6) /* Save the stack pointer */
+ std %r2,PCB_TOC(%r6) /* Save the TOC pointer */
li %r14,0 /* Save USER_SR for copyin/out */
li %r15,0
@@ -120,23 +118,26 @@ ENTRY(cpu_switch)
slbmfee %r14, %r16
slbmfev %r15, %r16
isync
- std %r14,PCB_AIM_USR_ESID(%r5)
- std %r15,PCB_AIM_USR_VSID(%r5)
+ std %r14,PCB_AIM_USR_ESID(%r6)
+ std %r15,PCB_AIM_USR_VSID(%r6)
mr %r14,%r3 /* Copy the old thread ptr... */
mr %r15,%r4 /* and the new thread ptr in scratch */
+ mr %r16,%r5 /* and the new lock */
+ mr %r17,%r6 /* and the PCB */
- lwz %r6,PCB_FLAGS(%r5)
+ lwz %r7,PCB_FLAGS(%r17)
/* Save FPU context if needed */
- andi. %r6, %r6, PCB_FPU
+ andi. %r7, %r7, PCB_FPU
beq .L1
bl .save_fpu
nop
.L1:
- lwz %r6,PCB_FLAGS(%r5)
+ mr %r3,%r14 /* restore old thread ptr */
+ lwz %r7,PCB_FLAGS(%r17)
/* Save Altivec context if needed */
- andi. %r6, %r6, PCB_VEC
+ andi. %r7, %r7, PCB_VEC
beq .L2
bl .save_vec
nop
@@ -146,7 +147,19 @@ ENTRY(cpu_switch)
bl .pmap_deactivate /* Deactivate the current pmap */
nop
+ std %r16,TD_LOCK(%r14) /* ULE: update old thread's lock */
+
cpu_switchin:
+#if defined(SMP) && defined(SCHED_ULE)
+ /* Wait for the new thread to become unblocked */
+ lis %r6,blocked_lock@ha
+ addi %r6,%r6,blocked_lock@l
+blocked_loop:
+ ld %r7,TD_LOCK(%r15)
+ cmpd %r6,%r7
+ beq blocked_loop
+#endif
+
mfsprg %r7,0 /* Get the pcpu pointer */
std %r15,PC_CURTHREAD(%r7) /* Store new current thread */
ld %r17,TD_PCB(%r15) /* Store new current PCB */
From owner-svn-src-projects@FreeBSD.ORG Mon Nov 2 15:08:33 2009
Return-Path:
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id 95C89106566C;
Mon, 2 Nov 2009 15:08:33 +0000 (UTC) (envelope-from rrs@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c])
by mx1.freebsd.org (Postfix) with ESMTP id 859478FC2A;
Mon, 2 Nov 2009 15:08:33 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id nA2F8Xje060307;
Mon, 2 Nov 2009 15:08:33 GMT (envelope-from rrs@svn.freebsd.org)
Received: (from rrs@localhost)
by svn.freebsd.org (8.14.3/8.14.3/Submit) id nA2F8XL2060305;
Mon, 2 Nov 2009 15:08:33 GMT (envelope-from rrs@svn.freebsd.org)
Message-Id: <200911021508.nA2F8XL2060305@svn.freebsd.org>
From: Randall Stewart
Date: Mon, 2 Nov 2009 15:08:33 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc:
Subject: svn commit: r198789 - projects/mips/sys/dev/rmi/xlr
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "SVN commit messages for the src " projects"
tree"
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Mon, 02 Nov 2009 15:08:33 -0000
Author: rrs
Date: Mon Nov 2 15:08:33 2009
New Revision: 198789
URL: http://svn.freebsd.org/changeset/base/198789
Log:
Fix header file location
Modified:
projects/mips/sys/dev/rmi/xlr/rge.c
Modified: projects/mips/sys/dev/rmi/xlr/rge.c
==============================================================================
--- projects/mips/sys/dev/rmi/xlr/rge.c Mon Nov 2 12:35:38 2009 (r198788)
+++ projects/mips/sys/dev/rmi/xlr/rge.c Mon Nov 2 15:08:33 2009 (r198789)
@@ -73,7 +73,7 @@
#include
#include
#include
-#include
+#include
#include
#include
From owner-svn-src-projects@FreeBSD.ORG Mon Nov 2 15:08:59 2009
Return-Path:
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id B1F4F1065764;
Mon, 2 Nov 2009 15:08:59 +0000 (UTC) (envelope-from rrs@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c])
by mx1.freebsd.org (Postfix) with ESMTP id 82E7F8FC27;
Mon, 2 Nov 2009 15:08:59 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id nA2F8xTm060349;
Mon, 2 Nov 2009 15:08:59 GMT (envelope-from rrs@svn.freebsd.org)
Received: (from rrs@localhost)
by svn.freebsd.org (8.14.3/8.14.3/Submit) id nA2F8xWD060347;
Mon, 2 Nov 2009 15:08:59 GMT (envelope-from rrs@svn.freebsd.org)
Message-Id: <200911021508.nA2F8xWD060347@svn.freebsd.org>
From: Randall Stewart
Date: Mon, 2 Nov 2009 15:08:59 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc:
Subject: svn commit: r198790 - projects/mips/sys/mips/rmi
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "SVN commit messages for the src " projects"
tree"
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Mon, 02 Nov 2009 15:08:59 -0000
Author: rrs
Date: Mon Nov 2 15:08:59 2009
New Revision: 198790
URL: http://svn.freebsd.org/changeset/base/198790
Log:
Fix spacing
Modified:
projects/mips/sys/mips/rmi/board.c
Modified: projects/mips/sys/mips/rmi/board.c
==============================================================================
--- projects/mips/sys/mips/rmi/board.c Mon Nov 2 15:08:33 2009 (r198789)
+++ projects/mips/sys/mips/rmi/board.c Mon Nov 2 15:08:59 2009 (r198790)
@@ -41,39 +41,39 @@
#include
static int xlr_rxstn_to_txstn_map[128] = {
- [0...7] = TX_STN_CPU_0,
- [8...15] = TX_STN_CPU_1,
- [16...23] = TX_STN_CPU_2,
- [24...31] = TX_STN_CPU_3,
- [32...39] = TX_STN_CPU_4,
- [40...47] = TX_STN_CPU_5,
- [48...55] = TX_STN_CPU_6,
- [56...63] = TX_STN_CPU_7,
- [64...95] = TX_STN_INVALID,
- [96...103] = TX_STN_GMAC,
- [104...107] = TX_STN_DMA,
- [108...111] = TX_STN_INVALID,
- [112...113] = TX_STN_XGS_0,
- [114...115] = TX_STN_XGS_1,
- [116...119] = TX_STN_INVALID,
- [120...127] = TX_STN_SAE
+ [0 ... 7] = TX_STN_CPU_0,
+ [8 ... 15] = TX_STN_CPU_1,
+ [16 ... 23] = TX_STN_CPU_2,
+ [24 ... 31] = TX_STN_CPU_3,
+ [32 ... 39] = TX_STN_CPU_4,
+ [40 ... 47] = TX_STN_CPU_5,
+ [48 ... 55] = TX_STN_CPU_6,
+ [56 ... 63] = TX_STN_CPU_7,
+ [64 ... 95] = TX_STN_INVALID,
+ [96 ... 103] = TX_STN_GMAC,
+ [104 ... 107] = TX_STN_DMA,
+ [108 ... 111] = TX_STN_INVALID,
+ [112 ... 113] = TX_STN_XGS_0,
+ [114 ... 115] = TX_STN_XGS_1,
+ [116 ... 119] = TX_STN_INVALID,
+ [120 ... 127] = TX_STN_SAE
};
static int xls_rxstn_to_txstn_map[128] = {
- [0...7] = TX_STN_CPU_0,
- [8...15] = TX_STN_CPU_1,
- [16...23] = TX_STN_CPU_2,
- [24...31] = TX_STN_CPU_3,
- [32...63] = TX_STN_INVALID,
- [64...71] = TX_STN_PCIE,
- [72...79] = TX_STN_INVALID,
- [80...87] = TX_STN_GMAC1,
- [88...95] = TX_STN_INVALID,
- [96...103] = TX_STN_GMAC0,
- [104...107] = TX_STN_DMA,
- [108...111] = TX_STN_CDE,
- [112...119] = TX_STN_INVALID,
- [120...127] = TX_STN_SAE
+ [0 ... 7] = TX_STN_CPU_0,
+ [8 ... 15] = TX_STN_CPU_1,
+ [16 ... 23] = TX_STN_CPU_2,
+ [24 ... 31] = TX_STN_CPU_3,
+ [32 ... 63] = TX_STN_INVALID,
+ [64 ... 71] = TX_STN_PCIE,
+ [72 ... 79] = TX_STN_INVALID,
+ [80 ... 87] = TX_STN_GMAC1,
+ [88 ... 95] = TX_STN_INVALID,
+ [96 ... 103] = TX_STN_GMAC0,
+ [104 ... 107] = TX_STN_DMA,
+ [108 ... 111] = TX_STN_CDE,
+ [112 ... 119] = TX_STN_INVALID,
+ [120 ... 127] = TX_STN_SAE
};
struct stn_cc *xlr_core_cc_configs[] = {&cc_table_cpu_0, &cc_table_cpu_1,
From owner-svn-src-projects@FreeBSD.ORG Mon Nov 2 15:43:55 2009
Return-Path:
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id 30DFD106566B;
Mon, 2 Nov 2009 15:43:55 +0000 (UTC) (envelope-from rrs@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c])
by mx1.freebsd.org (Postfix) with ESMTP id 1FF688FC0A;
Mon, 2 Nov 2009 15:43:55 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id nA2FhswV061119;
Mon, 2 Nov 2009 15:43:54 GMT (envelope-from rrs@svn.freebsd.org)
Received: (from rrs@localhost)
by svn.freebsd.org (8.14.3/8.14.3/Submit) id nA2FhsiH061117;
Mon, 2 Nov 2009 15:43:54 GMT (envelope-from rrs@svn.freebsd.org)
Message-Id: <200911021543.nA2FhsiH061117@svn.freebsd.org>
From: Randall Stewart
Date: Mon, 2 Nov 2009 15:43:54 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc:
Subject: svn commit: r198791 - projects/mips/sys/mips/conf
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "SVN commit messages for the src " projects"
tree"
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Mon, 02 Nov 2009 15:43:55 -0000
Author: rrs
Date: Mon Nov 2 15:43:54 2009
New Revision: 198791
URL: http://svn.freebsd.org/changeset/base/198791
Log:
adds XLR config
Added:
projects/mips/sys/mips/conf/XLR
Added: projects/mips/sys/mips/conf/XLR
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ projects/mips/sys/mips/conf/XLR Mon Nov 2 15:43:54 2009 (r198791)
@@ -0,0 +1,149 @@
+#################################RMI_BSD#####################################
+# Copyright (c) 2003-2009 RMI Corporation
+# 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.
+# 3. Neither the name of RMI Corporation, nor the names of its contributors,
+# may be used to endorse or promote products derived from this software
+# without specific prior written permission.
+#
+# 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.
+#################################RMI_BSD#####################################
+# XLR -- Generic kernel configuration file for FreeBSD/mips
+#
+# For more information on this file, please read the handbook section on
+# Kernel Configuration Files:
+#
+# http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html
+#
+# The handbook is also available locally in /usr/share/doc/handbook
+# if you've installed the doc distribution, otherwise always see the
+# FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the
+# latest information.
+#
+# An exhaustive list of options and more detailed explanations of the
+# device lines is also present in the ../../conf/NOTES and NOTES files.
+# If you are in doubt as to the purpose or necessity of a line, check first
+# in NOTES.
+#
+# $FreeBSD$
+
+machine mips
+cpu CPU_MIPS4KC
+ident XLR
+
+makeoptions MODULES_OVERRIDE=""
+makeoptions TARGET_BIG_ENDIAN
+#
+
+options KERNVIRTADDR=0x80100000
+include "../rmi/std.xlr"
+
+
+makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols
+#profile 2
+
+#options SCHED_ULE # ULE scheduler
+options SCHED_4BSD # 4BSD scheduler
+#options PREEMPTION # Enable kernel thread preemption
+#options FULL_PREEMPTION # Enable kernel thread preemption
+options INET # InterNETworking
+options INET6 # IPv6 communications protocols
+options FFS # Berkeley Fast Filesystem
+#options SOFTUPDATES # Enable FFS soft updates support
+options UFS_ACL # Support for access control lists
+options UFS_DIRHASH # Improve performance on big directories
+options MD_ROOT # MD is a potential root device
+options MD_ROOT_SIZE=14288
+#options MD_ROOT_SIZE=5120
+options ROOTDEVNAME=\"ufs:md0\"
+options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
+options HZ=1000
+options PHYS_ADDR_64BIT
+options NO_SWAPPING
+
+#Debugging options
+options KTRACE # ktrace(1) support
+options DDB
+options KDB
+options GDB
+options ALT_BREAK_TO_DEBUGGER
+#options INVARIANTS #Enable calls of extra sanity checking
+#options INVARIANT_SUPPORT #Extra sanity checks of internal structures, required by INVARIANTS
+#options WITNESS #Enable checks to detect deadlocks and cycles
+#options WITNESS_SKIPSPIN #Don't run witness on spinlocks for speed
+#options KTR # ktr(4) and ktrdump(8) support
+#options KTR_COMPILE=(KTR_LOCK|KTR_PROC|KTR_INTR|KTR_CALLOUT|KTR_UMA|KTR_SYSC|KTR_CRITICAL)
+#options KTR_ENTRIES=131072
+#options MUTEX_DEBUG
+#options MUTEX_PROFILING
+
+device pci
+#device ata
+#device atadisk
+#options XLR_PERFMON # Enable XLR processor activity monitoring
+
+#device genclock
+device uart
+
+# Pseudo
+device loop
+device random
+device md
+device mem
+device pty
+device bpf
+
+# Network
+device miibus
+device rge
+device ether
+device re
+device msk
+
+device da
+device scbus
+#device ohci # OHCI PCI->USB interface
+device ehci # EHCI PCI->USB interface (USB 2.0)
+device usb # USB Bus (required)
+#device udbp # USB Double Bulk Pipe devices
+#device ugen # Generic
+#device uhid # "Human Interface Devices"
+device umass # Disks/Mass storage - Requires scbus and da
+
+#device cfi
+
+#i2c
+# Not yet
+#device ic
+#device iic
+#device iicbb
+#device iicbus
+#device xlr_rtc
+#device xlr_temperature
+#device xlr_eeprom
+
+#crypto
+# Not yet
+#device cryptodev
+#device crypto
+#device rmisec
+options ISA_MIPS32
+makeoptions KERNLOADADDR=0x80100000
From owner-svn-src-projects@FreeBSD.ORG Mon Nov 2 21:48:01 2009
Return-Path:
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id 658DD1065692;
Mon, 2 Nov 2009 21:48:01 +0000 (UTC)
(envelope-from simon@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c])
by mx1.freebsd.org (Postfix) with ESMTP id EFBE58FC0C;
Mon, 2 Nov 2009 21:48:00 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id nA2Lm0Dq070900;
Mon, 2 Nov 2009 21:48:00 GMT (envelope-from simon@svn.freebsd.org)
Received: (from simon@localhost)
by svn.freebsd.org (8.14.3/8.14.3/Submit) id nA2Lm0dS070899;
Mon, 2 Nov 2009 21:48:00 GMT (envelope-from simon@svn.freebsd.org)
Message-Id: <200911022148.nA2Lm0dS070899@svn.freebsd.org>
From: "Simon L. Nielsen"
Date: Mon, 2 Nov 2009 21:48:00 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc:
Subject: svn commit: r198827 - projects/openssl_098_merge_8
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "SVN commit messages for the src " projects"
tree"
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Mon, 02 Nov 2009 21:48:01 -0000
Author: simon
Date: Mon Nov 2 21:48:00 2009
New Revision: 198827
URL: http://svn.freebsd.org/changeset/base/198827
Log:
Remove now unused openssl_098_merge_8 project tree.
Deleted:
projects/openssl_098_merge_8/
From owner-svn-src-projects@FreeBSD.ORG Tue Nov 3 06:42:56 2009
Return-Path:
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id 116811065672;
Tue, 3 Nov 2009 06:42:56 +0000 (UTC)
(envelope-from gonzo@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c])
by mx1.freebsd.org (Postfix) with ESMTP id 017318FC30;
Tue, 3 Nov 2009 06:42:56 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id nA36gtD2082377;
Tue, 3 Nov 2009 06:42:55 GMT (envelope-from gonzo@svn.freebsd.org)
Received: (from gonzo@localhost)
by svn.freebsd.org (8.14.3/8.14.3/Submit) id nA36gtVx082375;
Tue, 3 Nov 2009 06:42:55 GMT (envelope-from gonzo@svn.freebsd.org)
Message-Id: <200911030642.nA36gtVx082375@svn.freebsd.org>
From: Oleksandr Tymoshenko
Date: Tue, 3 Nov 2009 06:42:55 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc:
Subject: svn commit: r198842 - projects/mips/sys/mips/mips
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "SVN commit messages for the src " projects"
tree"
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Tue, 03 Nov 2009 06:42:56 -0000
Author: gonzo
Date: Tue Nov 3 06:42:55 2009
New Revision: 198842
URL: http://svn.freebsd.org/changeset/base/198842
Log:
- Handle errors when adding children to nexus. This sittuation
might occure when there is dublicate of child's entry in hints
Modified:
projects/mips/sys/mips/mips/nexus.c
Modified: projects/mips/sys/mips/mips/nexus.c
==============================================================================
--- projects/mips/sys/mips/mips/nexus.c Tue Nov 3 05:53:48 2009 (r198841)
+++ projects/mips/sys/mips/mips/nexus.c Tue Nov 3 06:42:55 2009 (r198842)
@@ -257,6 +257,8 @@ nexus_hinted_child(device_t bus, const c
int mem_hints_count;
child = BUS_ADD_CHILD(bus, 0, dname, dunit);
+ if (child == NULL)
+ return;
/*
* Set hard-wired resources for hinted child using
@@ -306,6 +308,10 @@ nexus_add_child(device_t bus, int order,
resource_list_init(&ndev->nx_resources);
child = device_add_child_ordered(bus, order, name, unit);
+ if (child == NULL) {
+ device_printf(bus, "failed to add child: %s%d\n", name, unit);
+ return (0);
+ }
/* should we free this in nexus_child_detached? */
device_set_ivars(child, ndev);
From owner-svn-src-projects@FreeBSD.ORG Wed Nov 4 15:27:29 2009
Return-Path:
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id 4A60E106566B;
Wed, 4 Nov 2009 15:27:29 +0000 (UTC)
(envelope-from rdivacky@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c])
by mx1.freebsd.org (Postfix) with ESMTP id 33BDD8FC15;
Wed, 4 Nov 2009 15:27:29 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id nA4FRTiK036342;
Wed, 4 Nov 2009 15:27:29 GMT (envelope-from rdivacky@svn.freebsd.org)
Received: (from rdivacky@localhost)
by svn.freebsd.org (8.14.3/8.14.3/Submit) id nA4FRSjH036330;
Wed, 4 Nov 2009 15:27:28 GMT (envelope-from rdivacky@svn.freebsd.org)
Message-Id: <200911041527.nA4FRSjH036330@svn.freebsd.org>
From: Roman Divacky
Date: Wed, 4 Nov 2009 15:27:28 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc:
Subject: svn commit: r198898 - in projects/clangbsd/contrib/llvm: . autoconf
cmake cmake/modules docs docs/CommandGuide docs/tutorial
examples/BrainF include/llvm include/llvm-c
include/llvm-c/Transforms in...
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "SVN commit messages for the src " projects"
tree"
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Wed, 04 Nov 2009 15:27:29 -0000
Author: rdivacky
Date: Wed Nov 4 15:27:27 2009
New Revision: 198898
URL: http://svn.freebsd.org/changeset/base/198898
Log:
Merge llvm and clang from vendor.
Added:
projects/clangbsd/contrib/llvm/include/llvm/ADT/StringSwitch.h
- copied unchanged from r198895, vendor/llvm/dist/include/llvm/ADT/StringSwitch.h
projects/clangbsd/contrib/llvm/include/llvm/Analysis/MemoryBuiltins.h
- copied unchanged from r198895, vendor/llvm/dist/include/llvm/Analysis/MemoryBuiltins.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/ProcessImplicitDefs.h
- copied unchanged from r198895, vendor/llvm/dist/include/llvm/CodeGen/ProcessImplicitDefs.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/SlotIndexes.h
- copied unchanged from r198895, vendor/llvm/dist/include/llvm/CodeGen/SlotIndexes.h
projects/clangbsd/contrib/llvm/include/llvm/System/AIXDataTypesFix.h
- copied unchanged from r198895, vendor/llvm/dist/include/llvm/System/AIXDataTypesFix.h
projects/clangbsd/contrib/llvm/include/llvm/System/DataTypes.h.cmake
- copied unchanged from r198895, vendor/llvm/dist/include/llvm/System/DataTypes.h.cmake
projects/clangbsd/contrib/llvm/include/llvm/System/DataTypes.h.in
- copied unchanged from r198895, vendor/llvm/dist/include/llvm/System/DataTypes.h.in
projects/clangbsd/contrib/llvm/lib/Analysis/MemoryBuiltins.cpp
- copied unchanged from r198895, vendor/llvm/dist/lib/Analysis/MemoryBuiltins.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/AggressiveAntiDepBreaker.cpp
- copied unchanged from r198895, vendor/llvm/dist/lib/CodeGen/AggressiveAntiDepBreaker.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/AggressiveAntiDepBreaker.h
- copied unchanged from r198895, vendor/llvm/dist/lib/CodeGen/AggressiveAntiDepBreaker.h
projects/clangbsd/contrib/llvm/lib/CodeGen/AntiDepBreaker.h
- copied unchanged from r198895, vendor/llvm/dist/lib/CodeGen/AntiDepBreaker.h
projects/clangbsd/contrib/llvm/lib/CodeGen/CriticalAntiDepBreaker.cpp
- copied unchanged from r198895, vendor/llvm/dist/lib/CodeGen/CriticalAntiDepBreaker.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/CriticalAntiDepBreaker.h
- copied unchanged from r198895, vendor/llvm/dist/lib/CodeGen/CriticalAntiDepBreaker.h
projects/clangbsd/contrib/llvm/lib/CodeGen/ProcessImplicitDefs.cpp
- copied unchanged from r198895, vendor/llvm/dist/lib/CodeGen/ProcessImplicitDefs.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/SlotIndexes.cpp
- copied unchanged from r198895, vendor/llvm/dist/lib/CodeGen/SlotIndexes.cpp
projects/clangbsd/contrib/llvm/lib/Target/ARM/NEONMoveFix.cpp
- copied unchanged from r198895, vendor/llvm/dist/lib/Target/ARM/NEONMoveFix.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/ABCD.cpp
- copied unchanged from r198895, vendor/llvm/dist/lib/Transforms/Scalar/ABCD.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/GEPSplitter.cpp
- copied unchanged from r198895, vendor/llvm/dist/lib/Transforms/Scalar/GEPSplitter.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
- copied unchanged from r198895, vendor/llvm/dist/lib/Transforms/Scalar/LoopUnrollPass.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/SCCVN.cpp
- copied unchanged from r198895, vendor/llvm/dist/lib/Transforms/Scalar/SCCVN.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Utils/LoopUnroll.cpp
- copied unchanged from r198895, vendor/llvm/dist/lib/Transforms/Utils/LoopUnroll.cpp
projects/clangbsd/contrib/llvm/test/Analysis/BasicAA/phi-and-select.ll
- copied unchanged from r198895, vendor/llvm/dist/test/Analysis/BasicAA/phi-and-select.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/2009-10-02-NEONSubregsBug.ll
- copied unchanged from r198895, vendor/llvm/dist/test/CodeGen/ARM/2009-10-02-NEONSubregsBug.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/2009-10-27-double-align.ll
- copied unchanged from r198895, vendor/llvm/dist/test/CodeGen/ARM/2009-10-27-double-align.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/2009-10-30.ll
- copied unchanged from r198895, vendor/llvm/dist/test/CodeGen/ARM/2009-10-30.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/2009-11-01-NeonMoves.ll
- copied unchanged from r198895, vendor/llvm/dist/test/CodeGen/ARM/2009-11-01-NeonMoves.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/2009-11-02-NegativeLane.ll
- copied unchanged from r198895, vendor/llvm/dist/test/CodeGen/ARM/2009-11-02-NegativeLane.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/fpconsts.ll
- copied unchanged from r198895, vendor/llvm/dist/test/CodeGen/ARM/fpconsts.ll
projects/clangbsd/contrib/llvm/test/CodeGen/Thumb2/2009-11-01-CopyReg2RegBug.ll
- copied unchanged from r198895, vendor/llvm/dist/test/CodeGen/Thumb2/2009-11-01-CopyReg2RegBug.ll
projects/clangbsd/contrib/llvm/test/CodeGen/Thumb2/cross-rc-coalescing-1.ll
- copied unchanged from r198895, vendor/llvm/dist/test/CodeGen/Thumb2/cross-rc-coalescing-1.ll
projects/clangbsd/contrib/llvm/test/CodeGen/Thumb2/cross-rc-coalescing-2.ll
- copied unchanged from r198895, vendor/llvm/dist/test/CodeGen/Thumb2/cross-rc-coalescing-2.ll
projects/clangbsd/contrib/llvm/test/CodeGen/Thumb2/ldr-str-imm12.ll
- copied unchanged from r198895, vendor/llvm/dist/test/CodeGen/Thumb2/ldr-str-imm12.ll
projects/clangbsd/contrib/llvm/test/CodeGen/Thumb2/machine-licm.ll
- copied unchanged from r198895, vendor/llvm/dist/test/CodeGen/Thumb2/machine-licm.ll
projects/clangbsd/contrib/llvm/test/CodeGen/Thumb2/thumb2-cbnz.ll
- copied unchanged from r198895, vendor/llvm/dist/test/CodeGen/Thumb2/thumb2-cbnz.ll
projects/clangbsd/contrib/llvm/test/CodeGen/X86/2009-10-25-RewriterBug.ll
- copied unchanged from r198895, vendor/llvm/dist/test/CodeGen/X86/2009-10-25-RewriterBug.ll
projects/clangbsd/contrib/llvm/test/CodeGen/X86/2009-11-04-SubregCoalescingBug.ll
- copied unchanged from r198895, vendor/llvm/dist/test/CodeGen/X86/2009-11-04-SubregCoalescingBug.ll
projects/clangbsd/contrib/llvm/test/CodeGen/X86/constant-pool-sharing.ll
- copied unchanged from r198895, vendor/llvm/dist/test/CodeGen/X86/constant-pool-sharing.ll
projects/clangbsd/contrib/llvm/test/CodeGen/X86/large-gep-scale.ll
- copied unchanged from r198895, vendor/llvm/dist/test/CodeGen/X86/large-gep-scale.ll
projects/clangbsd/contrib/llvm/test/CodeGen/X86/negative-stride-fptosi-user.ll
- copied unchanged from r198895, vendor/llvm/dist/test/CodeGen/X86/negative-stride-fptosi-user.ll
projects/clangbsd/contrib/llvm/test/CodeGen/X86/palignr-2.ll
- copied unchanged from r198895, vendor/llvm/dist/test/CodeGen/X86/palignr-2.ll
projects/clangbsd/contrib/llvm/test/CodeGen/X86/x86-64-jumps.ll
- copied unchanged from r198895, vendor/llvm/dist/test/CodeGen/X86/x86-64-jumps.ll
projects/clangbsd/contrib/llvm/test/DebugInfo/2009-11-03-InsertExtractValue.ll
- copied unchanged from r198895, vendor/llvm/dist/test/DebugInfo/2009-11-03-InsertExtractValue.ll
projects/clangbsd/contrib/llvm/test/Feature/terminators.ll
- copied unchanged from r198895, vendor/llvm/dist/test/Feature/terminators.ll
projects/clangbsd/contrib/llvm/test/FrontendC++/2009-10-27-crash.cpp
- copied unchanged from r198895, vendor/llvm/dist/test/FrontendC++/2009-10-27-crash.cpp
projects/clangbsd/contrib/llvm/test/FrontendC++/integration-O2.cpp
- copied unchanged from r198895, vendor/llvm/dist/test/FrontendC++/integration-O2.cpp
projects/clangbsd/contrib/llvm/test/LLVMC/OptionPreprocessor.td
- copied unchanged from r198895, vendor/llvm/dist/test/LLVMC/OptionPreprocessor.td
projects/clangbsd/contrib/llvm/test/Transforms/DeadStoreElimination/lifetime-simple.ll
- copied unchanged from r198895, vendor/llvm/dist/test/Transforms/DeadStoreElimination/lifetime-simple.ll
projects/clangbsd/contrib/llvm/test/Transforms/GVN/invariant-simple.ll
- copied unchanged from r198895, vendor/llvm/dist/test/Transforms/GVN/invariant-simple.ll
projects/clangbsd/contrib/llvm/test/Transforms/GVN/lifetime-simple.ll
- copied unchanged from r198895, vendor/llvm/dist/test/Transforms/GVN/lifetime-simple.ll
projects/clangbsd/contrib/llvm/test/Transforms/GlobalOpt/heap-sra-3.ll
- copied unchanged from r198895, vendor/llvm/dist/test/Transforms/GlobalOpt/heap-sra-3.ll
projects/clangbsd/contrib/llvm/test/Transforms/GlobalOpt/heap-sra-4.ll
- copied unchanged from r198895, vendor/llvm/dist/test/Transforms/GlobalOpt/heap-sra-4.ll
projects/clangbsd/contrib/llvm/test/Transforms/LoopDeletion/multiple-exit-conditions.ll
- copied unchanged from r198895, vendor/llvm/dist/test/Transforms/LoopDeletion/multiple-exit-conditions.ll
projects/clangbsd/contrib/llvm/test/Transforms/SCCP/crash.ll
- copied unchanged from r198895, vendor/llvm/dist/test/Transforms/SCCP/crash.ll
projects/clangbsd/contrib/llvm/test/Transforms/SimplifyCFG/duplicate-phis.ll
- copied unchanged from r198895, vendor/llvm/dist/test/Transforms/SimplifyCFG/duplicate-phis.ll
projects/clangbsd/contrib/llvm/tools/clang/include/clang/AST/TemplateBase.h
- copied unchanged from r198896, vendor/clang/dist/include/clang/AST/TemplateBase.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Analysis/PathSensitive/BugType.h
- copied unchanged from r198896, vendor/clang/dist/include/clang/Analysis/PathSensitive/BugType.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Analysis/PathSensitive/Checkers/
- copied from r198896, vendor/clang/dist/include/clang/Analysis/PathSensitive/Checkers/
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Frontend/DiagnosticOptions.h
- copied unchanged from r198896, vendor/clang/dist/include/clang/Frontend/DiagnosticOptions.h
projects/clangbsd/contrib/llvm/tools/clang/lib/AST/TemplateBase.cpp
- copied unchanged from r198896, vendor/clang/dist/lib/AST/TemplateBase.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Analysis/AttrNonNullChecker.cpp
- copied unchanged from r198896, vendor/clang/dist/lib/Analysis/AttrNonNullChecker.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Analysis/BadCallChecker.cpp
- copied unchanged from r198896, vendor/clang/dist/lib/Analysis/BadCallChecker.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Analysis/DereferenceChecker.cpp
- copied unchanged from r198896, vendor/clang/dist/lib/Analysis/DereferenceChecker.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Analysis/DivZeroChecker.cpp
- copied unchanged from r198896, vendor/clang/dist/lib/Analysis/DivZeroChecker.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Analysis/NSAutoreleasePoolChecker.cpp
- copied unchanged from r198896, vendor/clang/dist/lib/Analysis/NSAutoreleasePoolChecker.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Analysis/NSErrorChecker.cpp
- copied unchanged from r198896, vendor/clang/dist/lib/Analysis/NSErrorChecker.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Analysis/UndefinedArgChecker.cpp
- copied unchanged from r198896, vendor/clang/dist/lib/Analysis/UndefinedArgChecker.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Analysis/UndefinedAssignmentChecker.cpp
- copied unchanged from r198896, vendor/clang/dist/lib/Analysis/UndefinedAssignmentChecker.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Analysis/VLASizeChecker.cpp
- copied unchanged from r198896, vendor/clang/dist/lib/Analysis/VLASizeChecker.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/CGException.cpp
- copied unchanged from r198896, vendor/clang/dist/lib/CodeGen/CGException.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CXX/dcl.decl/dcl.meaning/dcl.ref/p5.cpp
- copied unchanged from r198896, vendor/clang/dist/test/CXX/dcl.decl/dcl.meaning/dcl.ref/p5.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CXX/temp/temp.spec/temp.explicit/p10.cpp
- copied unchanged from r198896, vendor/clang/dist/test/CXX/temp/temp.spec/temp.explicit/p10.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CXX/temp/temp.spec/temp.explicit/p12.cpp
- copied unchanged from r198896, vendor/clang/dist/test/CXX/temp/temp.spec/temp.explicit/p12.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CXX/temp/temp.spec/temp.explicit/p5.cpp
- copied unchanged from r198896, vendor/clang/dist/test/CXX/temp/temp.spec/temp.explicit/p5.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CXX/temp/temp.spec/temp.explicit/p6.cpp
- copied unchanged from r198896, vendor/clang/dist/test/CXX/temp/temp.spec/temp.explicit/p6.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CXX/temp/temp.spec/temp.explicit/p7.cpp
- copied unchanged from r198896, vendor/clang/dist/test/CXX/temp/temp.spec/temp.explicit/p7.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CXX/temp/temp.spec/temp.explicit/p8.cpp
- copied unchanged from r198896, vendor/clang/dist/test/CXX/temp/temp.spec/temp.explicit/p8.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CXX/temp/temp.spec/temp.explicit/p9-linkage.cpp
- copied unchanged from r198896, vendor/clang/dist/test/CXX/temp/temp.spec/temp.explicit/p9-linkage.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CXX/temp/temp.spec/temp.explicit/p9.cpp
- copied unchanged from r198896, vendor/clang/dist/test/CXX/temp/temp.spec/temp.explicit/p9.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CodeCompletion/macros.c
- copied unchanged from r198896, vendor/clang/dist/test/CodeCompletion/macros.c
projects/clangbsd/contrib/llvm/tools/clang/test/CodeGen/object-size.c
- copied unchanged from r198896, vendor/clang/dist/test/CodeGen/object-size.c
projects/clangbsd/contrib/llvm/tools/clang/test/CodeGenCXX/array-construction.cpp
- copied unchanged from r198896, vendor/clang/dist/test/CodeGenCXX/array-construction.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CodeGenCXX/ptr-to-member-function.cpp
- copied unchanged from r198896, vendor/clang/dist/test/CodeGenCXX/ptr-to-member-function.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/FixIt/fixit-pmem.cpp
- copied unchanged from r198896, vendor/clang/dist/test/FixIt/fixit-pmem.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/Parser/cxx-parse-member-pointer-op.cpp
- copied unchanged from r198896, vendor/clang/dist/test/Parser/cxx-parse-member-pointer-op.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/Preprocessor/has_include.c
- copied unchanged from r198896, vendor/clang/dist/test/Preprocessor/has_include.c
projects/clangbsd/contrib/llvm/tools/clang/test/Preprocessor/init.c
- copied unchanged from r198896, vendor/clang/dist/test/Preprocessor/init.c
projects/clangbsd/contrib/llvm/tools/clang/test/Preprocessor/macro_undef.c
- copied unchanged from r198896, vendor/clang/dist/test/Preprocessor/macro_undef.c
projects/clangbsd/contrib/llvm/tools/clang/test/Preprocessor/stdint.c
- copied unchanged from r198896, vendor/clang/dist/test/Preprocessor/stdint.c
projects/clangbsd/contrib/llvm/tools/clang/test/Sema/parentheses.c
- copied unchanged from r198896, vendor/clang/dist/test/Sema/parentheses.c
projects/clangbsd/contrib/llvm/tools/clang/test/SemaCXX/ptrtomember-badcall.cpp
- copied unchanged from r198896, vendor/clang/dist/test/SemaCXX/ptrtomember-badcall.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaCXX/value-initialization.cpp
- copied unchanged from r198896, vendor/clang/dist/test/SemaCXX/value-initialization.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaObjC/conditional-expr-6.m
- copied unchanged from r198896, vendor/clang/dist/test/SemaObjC/conditional-expr-6.m
projects/clangbsd/contrib/llvm/tools/clang/test/SemaObjC/property-category-4.m
- copied unchanged from r198896, vendor/clang/dist/test/SemaObjC/property-category-4.m
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/instantiate-non-type-template-parameter.cpp
- copied unchanged from r198896, vendor/clang/dist/test/SemaTemplate/instantiate-non-type-template-parameter.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/operator-function-id-template.cpp
- copied unchanged from r198896, vendor/clang/dist/test/SemaTemplate/operator-function-id-template.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/template-id-expr.cpp
- copied unchanged from r198896, vendor/clang/dist/test/SemaTemplate/template-id-expr.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/template-id-printing.cpp
- copied unchanged from r198896, vendor/clang/dist/test/SemaTemplate/template-id-printing.cpp
Deleted:
projects/clangbsd/contrib/llvm/lib/Analysis/MallocHelper.cpp
projects/clangbsd/contrib/llvm/lib/ExecutionEngine/JIT/MacOSJITEventListener.cpp
projects/clangbsd/contrib/llvm/lib/Target/PIC16/MCSectionPIC16.h
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/RaiseAllocations.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/CodeGenLICM.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Utils/UnrollLoop.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Analysis/CheckNSError.cpp
Modified:
projects/clangbsd/contrib/llvm/CMakeLists.txt
projects/clangbsd/contrib/llvm/Makefile
projects/clangbsd/contrib/llvm/Makefile.config.in
projects/clangbsd/contrib/llvm/Makefile.rules
projects/clangbsd/contrib/llvm/autoconf/configure.ac
projects/clangbsd/contrib/llvm/cmake/config-ix.cmake
projects/clangbsd/contrib/llvm/cmake/modules/LLVMLibDeps.cmake
projects/clangbsd/contrib/llvm/cmake/modules/LLVMProcessSources.cmake
projects/clangbsd/contrib/llvm/configure
projects/clangbsd/contrib/llvm/docs/BitCodeFormat.html
projects/clangbsd/contrib/llvm/docs/CommandGuide/lit.pod
projects/clangbsd/contrib/llvm/docs/CompilerDriver.html
projects/clangbsd/contrib/llvm/docs/GettingStarted.html
projects/clangbsd/contrib/llvm/docs/LangRef.html
projects/clangbsd/contrib/llvm/docs/Passes.html
projects/clangbsd/contrib/llvm/docs/ReleaseNotes.html
projects/clangbsd/contrib/llvm/docs/TableGenFundamentals.html
projects/clangbsd/contrib/llvm/docs/tutorial/LangImpl4.html
projects/clangbsd/contrib/llvm/docs/tutorial/OCamlLangImpl4.html
projects/clangbsd/contrib/llvm/examples/BrainF/BrainF.cpp
projects/clangbsd/contrib/llvm/include/llvm-c/Core.h
projects/clangbsd/contrib/llvm/include/llvm-c/Transforms/IPO.h
projects/clangbsd/contrib/llvm/include/llvm/ADT/DenseMap.h
projects/clangbsd/contrib/llvm/include/llvm/ADT/EquivalenceClasses.h
projects/clangbsd/contrib/llvm/include/llvm/ADT/FoldingSet.h
projects/clangbsd/contrib/llvm/include/llvm/ADT/ImmutableList.h
projects/clangbsd/contrib/llvm/include/llvm/ADT/ImmutableSet.h
projects/clangbsd/contrib/llvm/include/llvm/ADT/SmallPtrSet.h
projects/clangbsd/contrib/llvm/include/llvm/ADT/SparseBitVector.h
projects/clangbsd/contrib/llvm/include/llvm/ADT/StringExtras.h
projects/clangbsd/contrib/llvm/include/llvm/ADT/Twine.h
projects/clangbsd/contrib/llvm/include/llvm/ADT/ValueMap.h
projects/clangbsd/contrib/llvm/include/llvm/Analysis/AliasSetTracker.h
projects/clangbsd/contrib/llvm/include/llvm/Analysis/DebugInfo.h
projects/clangbsd/contrib/llvm/include/llvm/Analysis/Dominators.h
projects/clangbsd/contrib/llvm/include/llvm/Analysis/LoopInfo.h
projects/clangbsd/contrib/llvm/include/llvm/Analysis/ScalarEvolution.h
projects/clangbsd/contrib/llvm/include/llvm/Analysis/ValueTracking.h
projects/clangbsd/contrib/llvm/include/llvm/BasicBlock.h
projects/clangbsd/contrib/llvm/include/llvm/Bitcode/BitCodes.h
projects/clangbsd/contrib/llvm/include/llvm/Bitcode/Deserialize.h
projects/clangbsd/contrib/llvm/include/llvm/Bitcode/LLVMBitCodes.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/AsmPrinter.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/BinaryObject.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/ELFRelocation.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/JITCodeEmitter.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/LatencyPriorityQueue.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/LiveInterval.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/LiveIntervalAnalysis.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/LiveStackAnalysis.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/MachineBasicBlock.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/MachineCodeEmitter.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/MachineFrameInfo.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/MachineInstrBuilder.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/MachineModuleInfo.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/MachineOperand.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/MachineRelocation.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/PseudoSourceValue.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/ScheduleDAG.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/SelectionDAG.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/SelectionDAGISel.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/SelectionDAGNodes.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/ValueTypes.h
projects/clangbsd/contrib/llvm/include/llvm/Constant.h
projects/clangbsd/contrib/llvm/include/llvm/Constants.h
projects/clangbsd/contrib/llvm/include/llvm/ExecutionEngine/ExecutionEngine.h
projects/clangbsd/contrib/llvm/include/llvm/ExecutionEngine/GenericValue.h
projects/clangbsd/contrib/llvm/include/llvm/ExecutionEngine/JITEventListener.h
projects/clangbsd/contrib/llvm/include/llvm/ExecutionEngine/JITMemoryManager.h
projects/clangbsd/contrib/llvm/include/llvm/InstrTypes.h
projects/clangbsd/contrib/llvm/include/llvm/Instruction.def
projects/clangbsd/contrib/llvm/include/llvm/Instruction.h
projects/clangbsd/contrib/llvm/include/llvm/Instructions.h
projects/clangbsd/contrib/llvm/include/llvm/Intrinsics.td
projects/clangbsd/contrib/llvm/include/llvm/LinkAllPasses.h
projects/clangbsd/contrib/llvm/include/llvm/MC/MCAsmLexer.h
projects/clangbsd/contrib/llvm/include/llvm/MC/MCAsmParser.h
projects/clangbsd/contrib/llvm/include/llvm/MC/MCAssembler.h
projects/clangbsd/contrib/llvm/include/llvm/MC/MCDisassembler.h
projects/clangbsd/contrib/llvm/include/llvm/MC/MCExpr.h
projects/clangbsd/contrib/llvm/include/llvm/MC/MCInst.h
projects/clangbsd/contrib/llvm/include/llvm/MC/MCStreamer.h
projects/clangbsd/contrib/llvm/include/llvm/MC/MCSymbol.h
projects/clangbsd/contrib/llvm/include/llvm/MC/MCValue.h
projects/clangbsd/contrib/llvm/include/llvm/Metadata.h
projects/clangbsd/contrib/llvm/include/llvm/Module.h
projects/clangbsd/contrib/llvm/include/llvm/Pass.h
projects/clangbsd/contrib/llvm/include/llvm/Support/Allocator.h
projects/clangbsd/contrib/llvm/include/llvm/Support/ConstantRange.h
projects/clangbsd/contrib/llvm/include/llvm/Support/Debug.h
projects/clangbsd/contrib/llvm/include/llvm/Support/ELF.h
projects/clangbsd/contrib/llvm/include/llvm/Support/IRBuilder.h
projects/clangbsd/contrib/llvm/include/llvm/Support/InstVisitor.h
projects/clangbsd/contrib/llvm/include/llvm/Support/MathExtras.h
projects/clangbsd/contrib/llvm/include/llvm/Support/MemoryBuffer.h
projects/clangbsd/contrib/llvm/include/llvm/Support/MemoryObject.h
projects/clangbsd/contrib/llvm/include/llvm/Support/PointerLikeTypeTraits.h
projects/clangbsd/contrib/llvm/include/llvm/Support/SlowOperationInformer.h
projects/clangbsd/contrib/llvm/include/llvm/Support/StandardPasses.h
projects/clangbsd/contrib/llvm/include/llvm/Support/TargetFolder.h
projects/clangbsd/contrib/llvm/include/llvm/Support/Timer.h
projects/clangbsd/contrib/llvm/include/llvm/Support/raw_ostream.h
projects/clangbsd/contrib/llvm/include/llvm/System/Atomic.h
projects/clangbsd/contrib/llvm/include/llvm/System/Disassembler.h
projects/clangbsd/contrib/llvm/include/llvm/System/Memory.h
projects/clangbsd/contrib/llvm/include/llvm/System/TimeValue.h
projects/clangbsd/contrib/llvm/include/llvm/Target/SubtargetFeature.h
projects/clangbsd/contrib/llvm/include/llvm/Target/Target.td
projects/clangbsd/contrib/llvm/include/llvm/Target/TargetData.h
projects/clangbsd/contrib/llvm/include/llvm/Target/TargetInstrDesc.h
projects/clangbsd/contrib/llvm/include/llvm/Target/TargetInstrInfo.h
projects/clangbsd/contrib/llvm/include/llvm/Target/TargetJITInfo.h
projects/clangbsd/contrib/llvm/include/llvm/Target/TargetLowering.h
projects/clangbsd/contrib/llvm/include/llvm/Target/TargetSelectionDAG.td
projects/clangbsd/contrib/llvm/include/llvm/Transforms/IPO.h
projects/clangbsd/contrib/llvm/include/llvm/Transforms/Scalar.h
projects/clangbsd/contrib/llvm/include/llvm/Transforms/Utils/BasicBlockUtils.h
projects/clangbsd/contrib/llvm/include/llvm/Transforms/Utils/SSAUpdater.h
projects/clangbsd/contrib/llvm/include/llvm/Transforms/Utils/ValueMapper.h
projects/clangbsd/contrib/llvm/include/llvm/Type.h
projects/clangbsd/contrib/llvm/include/llvm/TypeSymbolTable.h
projects/clangbsd/contrib/llvm/include/llvm/Value.h
projects/clangbsd/contrib/llvm/include/llvm/ValueSymbolTable.h
projects/clangbsd/contrib/llvm/lib/Analysis/AliasAnalysis.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/AliasAnalysisCounter.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/AliasAnalysisEvaluator.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/AliasDebugger.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/AliasSetTracker.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/BasicAliasAnalysis.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/CFGPrinter.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/CMakeLists.txt
projects/clangbsd/contrib/llvm/lib/Analysis/CaptureTracking.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/ConstantFolding.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/DbgInfoPrinter.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/DebugInfo.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/IPA/Andersens.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/IPA/CallGraph.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/IPA/GlobalsModRef.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/InlineCost.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/InstCount.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/MemoryDependenceAnalysis.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/PointerTracking.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/ProfileEstimatorPass.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/ProfileInfo.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/ProfileInfoLoaderPass.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/ProfileVerifierPass.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/ScalarEvolution.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/ScalarEvolutionAliasAnalysis.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/SparsePropagation.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/ValueTracking.cpp
projects/clangbsd/contrib/llvm/lib/AsmParser/LLLexer.cpp
projects/clangbsd/contrib/llvm/lib/AsmParser/LLParser.cpp
projects/clangbsd/contrib/llvm/lib/AsmParser/LLParser.h
projects/clangbsd/contrib/llvm/lib/AsmParser/LLToken.h
projects/clangbsd/contrib/llvm/lib/Bitcode/Reader/BitcodeReader.cpp
projects/clangbsd/contrib/llvm/lib/Bitcode/Reader/BitcodeReader.h
projects/clangbsd/contrib/llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
projects/clangbsd/contrib/llvm/lib/Bitcode/Writer/ValueEnumerator.cpp
projects/clangbsd/contrib/llvm/lib/Bitcode/Writer/ValueEnumerator.h
projects/clangbsd/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h
projects/clangbsd/contrib/llvm/lib/CodeGen/AsmPrinter/OcamlGCPrinter.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/BranchFolding.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/CMakeLists.txt
projects/clangbsd/contrib/llvm/lib/CodeGen/DeadMachineInstructionElim.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/DwarfEHPrepare.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/ELF.h
projects/clangbsd/contrib/llvm/lib/CodeGen/ExactHazardRecognizer.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/GCMetadata.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/GCStrategy.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/IfConversion.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/LLVMTargetMachine.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/LatencyPriorityQueue.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/LiveInterval.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/LiveIntervalAnalysis.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/LiveStackAnalysis.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/LowerSubregs.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/MachineBasicBlock.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/MachineFunction.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/MachineInstr.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/MachineLICM.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/MachineSink.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/MachineVerifier.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/OcamlGC.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/PostRASchedulerList.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/PreAllocSplitting.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/PrologEpilogInserter.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/PseudoSourceValue.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/RegAllocLinearScan.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/RegAllocLocal.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/RegAllocPBQP.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/RegisterScavenging.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/ScheduleDAG.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/ScheduleDAGEmit.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/ScheduleDAGInstrs.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGFast.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGList.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.h
projects/clangbsd/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuild.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuild.h
projects/clangbsd/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/ShadowStackGC.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/SimpleRegisterCoalescing.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/SimpleRegisterCoalescing.h
projects/clangbsd/contrib/llvm/lib/CodeGen/SjLjEHPrepare.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/Spiller.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/StackProtector.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/StackSlotColoring.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/StrongPHIElimination.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/TwoAddressInstructionPass.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/UnreachableBlockElim.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/VirtRegMap.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/VirtRegMap.h
projects/clangbsd/contrib/llvm/lib/CodeGen/VirtRegRewriter.cpp
projects/clangbsd/contrib/llvm/lib/ExecutionEngine/ExecutionEngine.cpp
projects/clangbsd/contrib/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
projects/clangbsd/contrib/llvm/lib/ExecutionEngine/Interpreter/Interpreter.h
projects/clangbsd/contrib/llvm/lib/ExecutionEngine/JIT/JIT.cpp
projects/clangbsd/contrib/llvm/lib/ExecutionEngine/JIT/JIT.h
projects/clangbsd/contrib/llvm/lib/ExecutionEngine/JIT/JITDebugRegisterer.h
projects/clangbsd/contrib/llvm/lib/ExecutionEngine/JIT/JITEmitter.cpp
projects/clangbsd/contrib/llvm/lib/ExecutionEngine/JIT/OProfileJITEventListener.cpp
projects/clangbsd/contrib/llvm/lib/Linker/LinkModules.cpp
projects/clangbsd/contrib/llvm/lib/MC/MCAsmInfo.cpp
projects/clangbsd/contrib/llvm/lib/Support/APFloat.cpp
projects/clangbsd/contrib/llvm/lib/Support/Allocator.cpp
projects/clangbsd/contrib/llvm/lib/Support/Debug.cpp
projects/clangbsd/contrib/llvm/lib/Support/MemoryBuffer.cpp
projects/clangbsd/contrib/llvm/lib/System/DynamicLibrary.cpp
projects/clangbsd/contrib/llvm/lib/System/Path.cpp
projects/clangbsd/contrib/llvm/lib/System/Unix/Memory.inc
projects/clangbsd/contrib/llvm/lib/System/Unix/Process.inc
projects/clangbsd/contrib/llvm/lib/System/Unix/Signals.inc
projects/clangbsd/contrib/llvm/lib/System/Win32/Memory.inc
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARM.h
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARM.td
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMBaseInstrInfo.h
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMBaseRegisterInfo.h
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMCallingConv.td
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMCodeEmitter.cpp
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMConstantIslandPass.cpp
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMConstantPoolValue.cpp
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMConstantPoolValue.h
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMISelLowering.cpp
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMISelLowering.h
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMInstrFormats.td
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMInstrInfo.cpp
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMInstrInfo.h
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMInstrInfo.td
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMInstrNEON.td
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMInstrThumb.td
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMInstrThumb2.td
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMInstrVFP.td
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMRegisterInfo.td
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMSubtarget.h
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMTargetMachine.cpp
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMTargetMachine.h
projects/clangbsd/contrib/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
projects/clangbsd/contrib/llvm/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp
projects/clangbsd/contrib/llvm/lib/Target/ARM/AsmPrinter/ARMInstPrinter.h
projects/clangbsd/contrib/llvm/lib/Target/ARM/AsmPrinter/ARMMCInstLower.cpp
projects/clangbsd/contrib/llvm/lib/Target/ARM/CMakeLists.txt
projects/clangbsd/contrib/llvm/lib/Target/ARM/NEONPreAllocPass.cpp
projects/clangbsd/contrib/llvm/lib/Target/ARM/README.txt
projects/clangbsd/contrib/llvm/lib/Target/ARM/Thumb1InstrInfo.cpp
projects/clangbsd/contrib/llvm/lib/Target/ARM/Thumb1RegisterInfo.cpp
projects/clangbsd/contrib/llvm/lib/Target/ARM/Thumb1RegisterInfo.h
projects/clangbsd/contrib/llvm/lib/Target/ARM/Thumb2ITBlockPass.cpp
projects/clangbsd/contrib/llvm/lib/Target/ARM/Thumb2InstrInfo.cpp
projects/clangbsd/contrib/llvm/lib/Target/ARM/Thumb2RegisterInfo.cpp
projects/clangbsd/contrib/llvm/lib/Target/ARM/Thumb2RegisterInfo.h
projects/clangbsd/contrib/llvm/lib/Target/ARM/Thumb2SizeReduction.cpp
projects/clangbsd/contrib/llvm/lib/Target/Alpha/AlphaBranchSelector.cpp
projects/clangbsd/contrib/llvm/lib/Target/Alpha/AlphaCodeEmitter.cpp
projects/clangbsd/contrib/llvm/lib/Target/Alpha/AlphaISelLowering.cpp
projects/clangbsd/contrib/llvm/lib/Target/Alpha/AlphaISelLowering.h
projects/clangbsd/contrib/llvm/lib/Target/Alpha/AlphaInstrInfo.td
projects/clangbsd/contrib/llvm/lib/Target/Alpha/AsmPrinter/AlphaAsmPrinter.cpp
projects/clangbsd/contrib/llvm/lib/Target/Blackfin/AsmPrinter/BlackfinAsmPrinter.cpp
projects/clangbsd/contrib/llvm/lib/Target/Blackfin/BlackfinInstrInfo.td
projects/clangbsd/contrib/llvm/lib/Target/CBackend/CBackend.cpp
projects/clangbsd/contrib/llvm/lib/Target/CellSPU/AsmPrinter/SPUAsmPrinter.cpp
projects/clangbsd/contrib/llvm/lib/Target/CellSPU/SPU.h
projects/clangbsd/contrib/llvm/lib/Target/CppBackend/CPPBackend.cpp
projects/clangbsd/contrib/llvm/lib/Target/MSIL/MSILWriter.cpp
projects/clangbsd/contrib/llvm/lib/Target/MSP430/AsmPrinter/CMakeLists.txt
projects/clangbsd/contrib/llvm/lib/Target/MSP430/AsmPrinter/MSP430AsmPrinter.cpp
projects/clangbsd/contrib/llvm/lib/Target/MSP430/MSP430InstrInfo.td
projects/clangbsd/contrib/llvm/lib/Target/Mips/AsmPrinter/MipsAsmPrinter.cpp
projects/clangbsd/contrib/llvm/lib/Target/Mips/MipsISelDAGToDAG.cpp
projects/clangbsd/contrib/llvm/lib/Target/Mips/MipsISelLowering.cpp
projects/clangbsd/contrib/llvm/lib/Target/Mips/MipsISelLowering.h
projects/clangbsd/contrib/llvm/lib/Target/Mips/MipsInstrFPU.td
projects/clangbsd/contrib/llvm/lib/Target/Mips/MipsInstrInfo.td
projects/clangbsd/contrib/llvm/lib/Target/PIC16/AsmPrinter/PIC16AsmPrinter.cpp
projects/clangbsd/contrib/llvm/lib/Target/PIC16/AsmPrinter/PIC16AsmPrinter.h
projects/clangbsd/contrib/llvm/lib/Target/PIC16/PIC16ABINames.h
projects/clangbsd/contrib/llvm/lib/Target/PIC16/PIC16InstrInfo.cpp
projects/clangbsd/contrib/llvm/lib/Target/PIC16/PIC16InstrInfo.h
projects/clangbsd/contrib/llvm/lib/Target/PIC16/PIC16InstrInfo.td
projects/clangbsd/contrib/llvm/lib/Target/PIC16/PIC16MemSelOpt.cpp
projects/clangbsd/contrib/llvm/lib/Target/PIC16/PIC16Passes/Makefile
projects/clangbsd/contrib/llvm/lib/Target/PIC16/PIC16TargetObjectFile.cpp
projects/clangbsd/contrib/llvm/lib/Target/PIC16/PIC16TargetObjectFile.h
projects/clangbsd/contrib/llvm/lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp
projects/clangbsd/contrib/llvm/lib/Target/PowerPC/PPCBranchSelector.cpp
projects/clangbsd/contrib/llvm/lib/Target/PowerPC/PPCCodeEmitter.cpp
projects/clangbsd/contrib/llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
projects/clangbsd/contrib/llvm/lib/Target/PowerPC/PPCInstr64Bit.td
projects/clangbsd/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.td
projects/clangbsd/contrib/llvm/lib/Target/README.txt
projects/clangbsd/contrib/llvm/lib/Target/Sparc/AsmPrinter/SparcAsmPrinter.cpp
projects/clangbsd/contrib/llvm/lib/Target/Sparc/SparcInstrInfo.td
projects/clangbsd/contrib/llvm/lib/Target/SystemZ/AsmPrinter/SystemZAsmPrinter.cpp
projects/clangbsd/contrib/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
projects/clangbsd/contrib/llvm/lib/Target/SystemZ/SystemZISelLowering.h
projects/clangbsd/contrib/llvm/lib/Target/SystemZ/SystemZInstrFP.td
projects/clangbsd/contrib/llvm/lib/Target/SystemZ/SystemZInstrInfo.td
projects/clangbsd/contrib/llvm/lib/Target/X86/AsmPrinter/X86MCInstLower.cpp
projects/clangbsd/contrib/llvm/lib/Target/X86/README.txt
projects/clangbsd/contrib/llvm/lib/Target/X86/X86CodeEmitter.cpp
projects/clangbsd/contrib/llvm/lib/Target/X86/X86FloatingPoint.cpp
projects/clangbsd/contrib/llvm/lib/Target/X86/X86FloatingPointRegKill.cpp
projects/clangbsd/contrib/llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
projects/clangbsd/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp
projects/clangbsd/contrib/llvm/lib/Target/X86/X86ISelLowering.h
projects/clangbsd/contrib/llvm/lib/Target/X86/X86Instr64bit.td
projects/clangbsd/contrib/llvm/lib/Target/X86/X86InstrFPStack.td
projects/clangbsd/contrib/llvm/lib/Target/X86/X86InstrInfo.cpp
projects/clangbsd/contrib/llvm/lib/Target/X86/X86InstrInfo.h
projects/clangbsd/contrib/llvm/lib/Target/X86/X86InstrInfo.td
projects/clangbsd/contrib/llvm/lib/Target/X86/X86InstrMMX.td
projects/clangbsd/contrib/llvm/lib/Target/X86/X86InstrSSE.td
projects/clangbsd/contrib/llvm/lib/Target/X86/X86RegisterInfo.cpp
projects/clangbsd/contrib/llvm/lib/Target/XCore/AsmPrinter/XCoreAsmPrinter.cpp
projects/clangbsd/contrib/llvm/lib/Target/XCore/XCoreInstrInfo.td
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/ArgumentPromotion.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/CMakeLists.txt
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/ConstantMerge.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/DeadTypeElimination.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/ExtractGV.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/FunctionAttrs.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/GlobalDCE.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/GlobalOpt.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/IPConstantPropagation.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/IPO.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/InlineAlways.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/InlineSimple.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/Internalize.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/LoopExtractor.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/LowerSetJmp.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/MergeFunctions.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/PartialInlining.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/PartialSpecialization.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/PruneEH.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/StripDeadPrototypes.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/StripSymbols.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/StructRetPromotion.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Instrumentation/BlockProfiling.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Instrumentation/EdgeProfiling.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Instrumentation/OptimalEdgeProfiling.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Instrumentation/RSProfiling.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/CMakeLists.txt
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/CodeGenPrepare.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/CondPropagate.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/GVN.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/IndVarSimplify.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/InstructionCombining.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/LoopDeletion.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/LoopIndexSplit.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/LoopRotation.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/LoopUnswitch.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/SCCP.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/ScalarReplAggregates.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/SimplifyCFGPass.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/SimplifyLibCalls.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/TailDuplication.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Utils/BasicInliner.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Utils/BreakCriticalEdges.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Utils/CMakeLists.txt
projects/clangbsd/contrib/llvm/lib/Transforms/Utils/CloneFunction.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Utils/CloneModule.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Utils/CodeExtractor.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Utils/InlineFunction.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Utils/Local.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Utils/LoopSimplify.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Utils/LowerInvoke.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Utils/LowerSwitch.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Utils/Mem2Reg.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Utils/SSI.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Utils/SimplifyCFG.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Utils/ValueMapper.cpp
projects/clangbsd/contrib/llvm/lib/VMCore/AsmWriter.cpp
projects/clangbsd/contrib/llvm/lib/VMCore/BasicBlock.cpp
projects/clangbsd/contrib/llvm/lib/VMCore/ConstantFold.cpp
projects/clangbsd/contrib/llvm/lib/VMCore/Constants.cpp
projects/clangbsd/contrib/llvm/lib/VMCore/ConstantsContext.h
projects/clangbsd/contrib/llvm/lib/VMCore/Core.cpp
projects/clangbsd/contrib/llvm/lib/VMCore/Dominators.cpp
projects/clangbsd/contrib/llvm/lib/VMCore/Function.cpp
projects/clangbsd/contrib/llvm/lib/VMCore/Globals.cpp
projects/clangbsd/contrib/llvm/lib/VMCore/Instruction.cpp
projects/clangbsd/contrib/llvm/lib/VMCore/Instructions.cpp
projects/clangbsd/contrib/llvm/lib/VMCore/LLVMContextImpl.h
projects/clangbsd/contrib/llvm/lib/VMCore/LeakDetector.cpp
projects/clangbsd/contrib/llvm/lib/VMCore/LeaksContext.h
projects/clangbsd/contrib/llvm/lib/VMCore/Metadata.cpp
projects/clangbsd/contrib/llvm/lib/VMCore/PassManager.cpp
projects/clangbsd/contrib/llvm/lib/VMCore/PrintModulePass.cpp
projects/clangbsd/contrib/llvm/lib/VMCore/Type.cpp
projects/clangbsd/contrib/llvm/lib/VMCore/TypeSymbolTable.cpp
projects/clangbsd/contrib/llvm/lib/VMCore/Value.cpp
projects/clangbsd/contrib/llvm/lib/VMCore/Verifier.cpp
projects/clangbsd/contrib/llvm/projects/sample/lib/sample/sample.c
projects/clangbsd/contrib/llvm/test/Analysis/BasicAA/2006-03-03-BadArraySubscript.ll
projects/clangbsd/contrib/llvm/test/Analysis/BasicAA/2009-10-13-AtomicModRef.ll
projects/clangbsd/contrib/llvm/test/Analysis/BasicAA/featuretest.ll
projects/clangbsd/contrib/llvm/test/Analysis/BasicAA/global-size.ll
projects/clangbsd/contrib/llvm/test/Analysis/BasicAA/modref.ll
projects/clangbsd/contrib/llvm/test/Analysis/BasicAA/store-promote.ll
projects/clangbsd/contrib/llvm/test/Analysis/LoopInfo/2003-05-15-NestingProblem.ll
projects/clangbsd/contrib/llvm/test/Analysis/ScalarEvolution/2007-11-18-OrInstruction.ll
projects/clangbsd/contrib/llvm/test/Analysis/ScalarEvolution/2008-07-29-SGTTripCount.ll
projects/clangbsd/contrib/llvm/test/Analysis/ScalarEvolution/2008-07-29-SMinExpr.ll
projects/clangbsd/contrib/llvm/test/Analysis/ScalarEvolution/2008-08-04-IVOverflow.ll
projects/clangbsd/contrib/llvm/test/Analysis/ScalarEvolution/2008-08-04-LongAddRec.ll
projects/clangbsd/contrib/llvm/test/Analysis/ScalarEvolution/2009-05-09-PointerEdgeCount.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/alloca.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/arguments.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/arguments_f64_backfill.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/arm-negative-stride.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/bfc.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/call.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/carry.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/constants.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/fmacs.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/fnmacs.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/fpmem.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/ispositive.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/ldm.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/ldr.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/long.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/long_shift.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/remat.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/str_post.ll
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/tls2.ll
projects/clangbsd/contrib/llvm/test/CodeGen/CPP/llvm2cpp.ll
projects/clangbsd/contrib/llvm/test/CodeGen/Generic/intrinsics.ll
projects/clangbsd/contrib/llvm/test/CodeGen/Thumb2/2009-08-04-SubregLoweringBug.ll
projects/clangbsd/contrib/llvm/test/CodeGen/Thumb2/thumb2-bcc.ll
projects/clangbsd/contrib/llvm/test/CodeGen/Thumb2/thumb2-bfc.ll
projects/clangbsd/contrib/llvm/test/CodeGen/Thumb2/thumb2-branch.ll
projects/clangbsd/contrib/llvm/test/CodeGen/Thumb2/thumb2-clz.ll
projects/clangbsd/contrib/llvm/test/CodeGen/Thumb2/thumb2-cmn2.ll
projects/clangbsd/contrib/llvm/test/CodeGen/Thumb2/thumb2-eor2.ll
projects/clangbsd/contrib/llvm/test/CodeGen/Thumb2/thumb2-mov.ll
projects/clangbsd/contrib/llvm/test/CodeGen/Thumb2/thumb2-str_post.ll
projects/clangbsd/contrib/llvm/test/CodeGen/X86/2007-11-30-LoadFolding-Bug.ll
projects/clangbsd/contrib/llvm/test/CodeGen/X86/2008-02-18-TailMergingBug.ll
projects/clangbsd/contrib/llvm/test/CodeGen/X86/2008-05-12-tailmerge-5.ll
projects/clangbsd/contrib/llvm/test/CodeGen/X86/break-anti-dependencies.ll
projects/clangbsd/contrib/llvm/test/CodeGen/X86/convert-2-addr-3-addr-inc64.ll
projects/clangbsd/contrib/llvm/test/CodeGen/X86/pic-load-remat.ll
projects/clangbsd/contrib/llvm/test/CodeGen/X86/sink-hoist.ll
projects/clangbsd/contrib/llvm/test/CodeGen/X86/vec_ins_extract.ll
projects/clangbsd/contrib/llvm/test/CodeGen/X86/x86-64-pic-10.ll
projects/clangbsd/contrib/llvm/test/Makefile
projects/clangbsd/contrib/llvm/test/Other/2003-02-19-LoopInfoNestingBug.ll
projects/clangbsd/contrib/llvm/test/Scripts/macho-dump
projects/clangbsd/contrib/llvm/test/Transforms/ArgumentPromotion/aggregate-promote.ll
projects/clangbsd/contrib/llvm/test/Transforms/ArgumentPromotion/basictest.ll
projects/clangbsd/contrib/llvm/test/Transforms/ArgumentPromotion/byval.ll
projects/clangbsd/contrib/llvm/test/Transforms/ArgumentPromotion/chained.ll
projects/clangbsd/contrib/llvm/test/Transforms/ArgumentPromotion/control-flow2.ll
projects/clangbsd/contrib/llvm/test/Transforms/ConstProp/float-to-ptr-cast.ll
projects/clangbsd/contrib/llvm/test/Transforms/ConstProp/loads.ll
projects/clangbsd/contrib/llvm/test/Transforms/DeadStoreElimination/2008-07-28-load-store.ll
projects/clangbsd/contrib/llvm/test/Transforms/DeadStoreElimination/PartialStore.ll
projects/clangbsd/contrib/llvm/test/Transforms/DeadStoreElimination/context-sensitive.ll
projects/clangbsd/contrib/llvm/test/Transforms/DeadStoreElimination/simple.ll
projects/clangbsd/contrib/llvm/test/Transforms/GlobalOpt/globalsra-partial.ll
projects/clangbsd/contrib/llvm/test/Transforms/GlobalOpt/globalsra.ll
projects/clangbsd/contrib/llvm/test/Transforms/GlobalOpt/malloc-promote-1.ll
projects/clangbsd/contrib/llvm/test/Transforms/IndVarSimplify/preserve-gep-loop-variant.ll
projects/clangbsd/contrib/llvm/test/Transforms/IndVarSimplify/preserve-gep-remainder.ll
projects/clangbsd/contrib/llvm/test/Transforms/Inline/basictest.ll
projects/clangbsd/contrib/llvm/test/Transforms/Inline/callgraph-update.ll
projects/clangbsd/contrib/llvm/test/Transforms/InstCombine/2003-11-13-ConstExprCastCall.ll
projects/clangbsd/contrib/llvm/test/Transforms/InstCombine/2007-10-10-EliminateMemCpy.ll
projects/clangbsd/contrib/llvm/test/Transforms/InstCombine/add-shrink.ll
projects/clangbsd/contrib/llvm/test/Transforms/InstCombine/add-sitofp.ll
projects/clangbsd/contrib/llvm/test/Transforms/InstCombine/align-2d-gep.ll
projects/clangbsd/contrib/llvm/test/Transforms/InstCombine/align-addr.ll
projects/clangbsd/contrib/llvm/test/Transforms/InstCombine/align-inc.ll
projects/clangbsd/contrib/llvm/test/Transforms/InstCombine/alloca.ll
projects/clangbsd/contrib/llvm/test/Transforms/InstCombine/call.ll
projects/clangbsd/contrib/llvm/test/Transforms/InstCombine/cast-load-gep.ll
projects/clangbsd/contrib/llvm/test/Transforms/InstCombine/cast.ll
projects/clangbsd/contrib/llvm/test/Transforms/InstCombine/cast2.ll
projects/clangbsd/contrib/llvm/test/Transforms/InstCombine/constant-fold-gep.ll
projects/clangbsd/contrib/llvm/test/Transforms/InstCombine/fold-bin-operand.ll
projects/clangbsd/contrib/llvm/test/Transforms/InstCombine/fp-ret-bitcast.ll
projects/clangbsd/contrib/llvm/test/Transforms/InstCombine/loadstore-alignment.ll
projects/clangbsd/contrib/llvm/test/Transforms/InstCombine/malloc-free-delete.ll
projects/clangbsd/contrib/llvm/test/Transforms/InstCombine/or.ll
projects/clangbsd/contrib/llvm/test/Transforms/InstCombine/phi.ll
projects/clangbsd/contrib/llvm/test/Transforms/InstCombine/preserve-sminmax.ll
projects/clangbsd/contrib/llvm/test/Transforms/InstCombine/ptr-int-cast.ll
projects/clangbsd/contrib/llvm/test/Transforms/InstCombine/store.ll
projects/clangbsd/contrib/llvm/test/Transforms/InstCombine/sub.ll
projects/clangbsd/contrib/llvm/test/Transforms/JumpThreading/no-irreducible-loops.ll
projects/clangbsd/contrib/llvm/test/Transforms/LICM/2008-07-22-LoadGlobalConstant.ll
projects/clangbsd/contrib/llvm/test/Transforms/LICM/Preserve-LCSSA.ll
projects/clangbsd/contrib/llvm/test/Transforms/LoopRotate/2009-01-25-SingleEntryPhi.ll
projects/clangbsd/contrib/llvm/test/Transforms/LoopRotate/LRCrash-1.ll
projects/clangbsd/contrib/llvm/test/Transforms/LoopRotate/LRCrash-2.ll
projects/clangbsd/contrib/llvm/test/Transforms/LoopRotate/LRCrash-3.ll
projects/clangbsd/contrib/llvm/test/Transforms/LoopRotate/LRCrash-4.ll
projects/clangbsd/contrib/llvm/test/Transforms/LoopRotate/LRCrash-5.ll
projects/clangbsd/contrib/llvm/test/Transforms/LoopRotate/PhiRename-1.ll
projects/clangbsd/contrib/llvm/test/Transforms/LoopRotate/PhiSelfRefernce-1.ll
projects/clangbsd/contrib/llvm/test/Transforms/LoopRotate/pr2639.ll
projects/clangbsd/contrib/llvm/test/Transforms/LoopRotate/preserve-scev.ll
projects/clangbsd/contrib/llvm/test/Transforms/LoopSimplify/merge-exits.ll
projects/clangbsd/contrib/llvm/test/Transforms/Mem2Reg/crash.ll
projects/clangbsd/contrib/llvm/test/Transforms/MemCpyOpt/2008-03-13-ReturnSlotBitcast.ll
projects/clangbsd/contrib/llvm/test/Transforms/MemCpyOpt/align.ll
projects/clangbsd/contrib/llvm/test/Transforms/SCCP/ipsccp-basic.ll
projects/clangbsd/contrib/llvm/test/Transforms/SCCP/loadtest.ll
projects/clangbsd/contrib/llvm/test/Transforms/ScalarRepl/2003-05-29-ArrayFail.ll
projects/clangbsd/contrib/llvm/test/Transforms/ScalarRepl/2006-11-07-InvalidArrayPromote.ll
projects/clangbsd/contrib/llvm/test/Transforms/ScalarRepl/2008-06-05-loadstore-agg.ll
projects/clangbsd/contrib/llvm/test/Transforms/ScalarRepl/2008-09-22-vector-gep.ll
projects/clangbsd/contrib/llvm/test/Transforms/ScalarRepl/2009-03-04-MemCpyAlign.ll
projects/clangbsd/contrib/llvm/test/Transforms/ScalarRepl/DifferingTypes.ll
projects/clangbsd/contrib/llvm/test/Transforms/ScalarRepl/arraytest.ll
projects/clangbsd/contrib/llvm/test/Transforms/ScalarRepl/basictest.ll
projects/clangbsd/contrib/llvm/test/Transforms/ScalarRepl/bitfield-sroa.ll
projects/clangbsd/contrib/llvm/test/Transforms/ScalarRepl/copy-aggregate.ll
projects/clangbsd/contrib/llvm/test/Transforms/ScalarRepl/debuginfo.ll
projects/clangbsd/contrib/llvm/test/Transforms/ScalarRepl/load-store-aggregate.ll
projects/clangbsd/contrib/llvm/test/Transforms/ScalarRepl/memcpy-from-global.ll
projects/clangbsd/contrib/llvm/test/Transforms/ScalarRepl/not-a-vector.ll
projects/clangbsd/contrib/llvm/test/Transforms/ScalarRepl/union-fp-int.ll
projects/clangbsd/contrib/llvm/test/Transforms/ScalarRepl/union-packed.ll
projects/clangbsd/contrib/llvm/test/Transforms/ScalarRepl/vector_memcpy.ll
projects/clangbsd/contrib/llvm/test/Transforms/ScalarRepl/vector_promote.ll
projects/clangbsd/contrib/llvm/test/Transforms/SimplifyCFG/basictest.ll
projects/clangbsd/contrib/llvm/test/lit.cfg
projects/clangbsd/contrib/llvm/tools/clang/CMakeLists.txt
projects/clangbsd/contrib/llvm/tools/clang/clang.xcodeproj/project.pbxproj
projects/clangbsd/contrib/llvm/tools/clang/docs/LanguageExtensions.html
projects/clangbsd/contrib/llvm/tools/clang/docs/tools/clang.pod
projects/clangbsd/contrib/llvm/tools/clang/include/clang-c/Index.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/AST/ASTContext.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/AST/CanonicalType.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/AST/Decl.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/AST/DeclGroup.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/AST/DeclNodes.def
projects/clangbsd/contrib/llvm/tools/clang/include/clang/AST/DeclObjC.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/AST/DeclTemplate.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/AST/Expr.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/AST/ExprCXX.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/AST/RecordLayout.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/AST/Redeclarable.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/AST/StmtIterator.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/AST/StmtNodes.def
projects/clangbsd/contrib/llvm/tools/clang/include/clang/AST/TemplateName.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/AST/Type.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/AST/TypeLoc.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Analysis/CallGraph.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Analysis/PathSensitive/AnalysisContext.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Analysis/PathSensitive/BugReporter.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Analysis/PathSensitive/Checker.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Analysis/PathSensitive/GRExprEngine.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Analysis/PathSensitive/GRState.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Analysis/PathSensitive/GRTransferFuncs.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Analysis/PathSensitive/Store.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Analysis/PathSensitive/SymbolManager.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Analysis/ProgramPoint.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Analysis/Visitors/CFGRecStmtDeclVisitor.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Basic/Builtins.def
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticCommonKinds.td
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticDriverKinds.td
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticFrontendKinds.td
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticLexKinds.td
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticParseKinds.td
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSemaKinds.td
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Basic/OnDiskHashTable.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Basic/OperatorKinds.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Basic/PartialDiagnostic.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Basic/SourceManager.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Basic/TargetInfo.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Driver/Options.def
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Frontend/ASTUnit.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Frontend/CompileOptions.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Frontend/DeclXML.def
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Frontend/InitHeaderSearch.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Frontend/InitPreprocessor.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Frontend/PCHBitCodes.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Frontend/PCHReader.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Frontend/PCHWriter.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Frontend/TextDiagnosticPrinter.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Index/Utils.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Lex/LiteralSupport.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Lex/Preprocessor.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Lex/Token.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Parse/Action.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Parse/DeclSpec.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Parse/Parser.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Sema/CodeCompleteConsumer.h
projects/clangbsd/contrib/llvm/tools/clang/lib/AST/ASTContext.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/AST/CMakeLists.txt
projects/clangbsd/contrib/llvm/tools/clang/lib/AST/Decl.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/AST/DeclBase.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/AST/DeclCXX.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/AST/DeclObjC.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/AST/DeclPrinter.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/AST/DeclTemplate.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/AST/Expr.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/AST/ExprCXX.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/AST/ExprConstant.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/AST/RecordLayoutBuilder.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/AST/RecordLayoutBuilder.h
projects/clangbsd/contrib/llvm/tools/clang/lib/AST/StmtPrinter.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/AST/StmtProfile.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/AST/TemplateName.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/AST/Type.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Analysis/BasicObjCFoundationChecks.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Analysis/BasicObjCFoundationChecks.h
projects/clangbsd/contrib/llvm/tools/clang/lib/Analysis/BasicStore.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Analysis/CFRefCount.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Analysis/CMakeLists.txt
projects/clangbsd/contrib/llvm/tools/clang/lib/Analysis/CallGraph.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Analysis/CheckObjCUnusedIVars.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Analysis/GRExprEngine.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Analysis/GRExprEngineInternalChecks.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Analysis/RegionStore.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Basic/CMakeLists.txt
projects/clangbsd/contrib/llvm/tools/clang/lib/Basic/IdentifierTable.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Basic/TargetInfo.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Basic/Targets.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/CGBuiltin.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/CGCXX.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/CGCall.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/CGDecl.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/CGExpr.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/CGExprAgg.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/CGExprConstant.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/CGExprScalar.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/CGObjC.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/CGRecordLayoutBuilder.h
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/CGRtti.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/CGStmt.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/CGValue.h
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/CGVtable.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/CMakeLists.txt
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/CodeGenFunction.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/CodeGenFunction.h
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/CodeGenModule.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTypes.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/Mangle.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/Mangle.h
projects/clangbsd/contrib/llvm/tools/clang/lib/Driver/Tools.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Driver/Types.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/ASTConsumers.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/AnalysisConsumer.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/InitHeaderSearch.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/InitPreprocessor.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/PCHReader.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/PCHReaderDecl.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/PCHReaderStmt.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/PCHWriter.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/PCHWriterDecl.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/PCHWriterStmt.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/PrintPreprocessedOutput.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/RewriteObjC.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/TextDiagnosticPrinter.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Headers/CMakeLists.txt
projects/clangbsd/contrib/llvm/tools/clang/lib/Headers/stdint.h
projects/clangbsd/contrib/llvm/tools/clang/lib/Index/ResolveLocation.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Lex/HeaderMap.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Lex/PPDirectives.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Lex/PPExpressions.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Lex/PPMacroExpansion.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Parse/AttributeList.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Parse/DeclSpec.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Parse/MinimalAction.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Parse/ParseDecl.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Parse/ParseDeclCXX.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Parse/ParseExpr.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Parse/ParseExprCXX.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Parse/ParseObjc.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Parse/ParseStmt.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Parse/ParseTemplate.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Parse/Parser.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/CodeCompleteConsumer.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/Sema.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/Sema.h
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaCXXCast.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaChecking.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaCodeComplete.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaDecl.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaDeclAttr.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaDeclCXX.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaDeclObjC.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaExpr.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaExprCXX.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaLookup.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaOverload.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaStmt.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaTemplate.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaTemplateDeduction.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiate.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaType.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/TreeTransform.h
projects/clangbsd/contrib/llvm/tools/clang/test/Analysis/misc-ps-eager-assume.m
projects/clangbsd/contrib/llvm/tools/clang/test/Analysis/misc-ps-region-store.m
projects/clangbsd/contrib/llvm/tools/clang/test/Analysis/misc-ps.m
projects/clangbsd/contrib/llvm/tools/clang/test/Analysis/outofbound.c
projects/clangbsd/contrib/llvm/tools/clang/test/Analysis/retain-release-gc-only.m
projects/clangbsd/contrib/llvm/tools/clang/test/Analysis/retain-release.m
projects/clangbsd/contrib/llvm/tools/clang/test/Analysis/uninit-vals-ps-region.c
projects/clangbsd/contrib/llvm/tools/clang/test/Analysis/unused-ivars.m
projects/clangbsd/contrib/llvm/tools/clang/test/CMakeLists.txt
projects/clangbsd/contrib/llvm/tools/clang/test/CXX/basic/basic.lookup/basic.lookup.unqual/p14.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CXX/basic/basic.lookup/basic.lookup.unqual/p15.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CXX/class/class.union/p1.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CXX/dcl.dcl/dcl.spec/dcl.fct.spec/p3.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CXX/dcl.dcl/dcl.spec/dcl.fct.spec/p4.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CXX/dcl.dcl/dcl.spec/dcl.fct.spec/p6.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CXX/dcl.dcl/dcl.spec/dcl.stc/p10.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CXX/dcl.dcl/dcl.spec/dcl.typedef/p4.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CXX/temp/temp.decls/temp.class.spec/p6.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CXX/temp/temp.decls/temp.friend/p5.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CXX/temp/temp.param/p14.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CXX/temp/temp.res/temp.dep.res/temp.point/p1.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CXX/temp/temp.spec/temp.expl.spec/p3.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CXX/temp/temp.spec/temp.explicit/p3.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CodeGen/2008-07-21-mixed-var-fn-decl.c
projects/clangbsd/contrib/llvm/tools/clang/test/CodeGen/2008-07-29-override-alias-decl.c
projects/clangbsd/contrib/llvm/tools/clang/test/CodeGen/asm-inout.c
projects/clangbsd/contrib/llvm/tools/clang/test/CodeGen/blocks-2.c
projects/clangbsd/contrib/llvm/tools/clang/test/CodeGen/builtin-unwind-init.c
projects/clangbsd/contrib/llvm/tools/clang/test/CodeGen/cast-to-union.c
projects/clangbsd/contrib/llvm/tools/clang/test/CodeGen/function-attributes.c
projects/clangbsd/contrib/llvm/tools/clang/test/CodeGen/indirect-goto.c
projects/clangbsd/contrib/llvm/tools/clang/test/CodeGen/mangle.c
projects/clangbsd/contrib/llvm/tools/clang/test/CodeGen/union-init2.c
projects/clangbsd/contrib/llvm/tools/clang/test/CodeGen/volatile.c
projects/clangbsd/contrib/llvm/tools/clang/test/CodeGenCXX/ptr-to-datamember.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CodeGenCXX/temporaries.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CodeGenCXX/virt.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CodeGenObjC/PR4894-recursive-debug-crash.m
projects/clangbsd/contrib/llvm/tools/clang/test/CodeGenObjC/encode-test-2.m
projects/clangbsd/contrib/llvm/tools/clang/test/CodeGenObjC/synthesize_ivar.m
projects/clangbsd/contrib/llvm/tools/clang/test/Coverage/objc-language-features.inc
projects/clangbsd/contrib/llvm/tools/clang/test/Coverage/targets.c
projects/clangbsd/contrib/llvm/tools/clang/test/Driver/analyze.c
projects/clangbsd/contrib/llvm/tools/clang/test/Driver/ccc-add-args.c
projects/clangbsd/contrib/llvm/tools/clang/test/Driver/hello.c
projects/clangbsd/contrib/llvm/tools/clang/test/Driver/phases.c
projects/clangbsd/contrib/llvm/tools/clang/test/Driver/qa_override.c
projects/clangbsd/contrib/llvm/tools/clang/test/Driver/std.c
projects/clangbsd/contrib/llvm/tools/clang/test/Frontend/darwin-version.c
projects/clangbsd/contrib/llvm/tools/clang/test/Frontend/dependency-gen.c
projects/clangbsd/contrib/llvm/tools/clang/test/Lexer/block_cmt_end.c
projects/clangbsd/contrib/llvm/tools/clang/test/Makefile
projects/clangbsd/contrib/llvm/tools/clang/test/Misc/message-length.c
projects/clangbsd/contrib/llvm/tools/clang/test/PCH/pr4489.c
projects/clangbsd/contrib/llvm/tools/clang/test/Parser/cxx-template-decl.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/Preprocessor/assembler-with-cpp.c
projects/clangbsd/contrib/llvm/tools/clang/test/Preprocessor/c99-6_10_3_3_p4.c
projects/clangbsd/contrib/llvm/tools/clang/test/Preprocessor/c99-6_10_3_4_p5.c
projects/clangbsd/contrib/llvm/tools/clang/test/Preprocessor/c99-6_10_3_4_p6.c
projects/clangbsd/contrib/llvm/tools/clang/test/Preprocessor/c99-6_10_3_4_p7.c
projects/clangbsd/contrib/llvm/tools/clang/test/Preprocessor/c99-6_10_3_4_p9.c
projects/clangbsd/contrib/llvm/tools/clang/test/Preprocessor/comment_save.c
projects/clangbsd/contrib/llvm/tools/clang/test/Preprocessor/comment_save_macro.c
projects/clangbsd/contrib/llvm/tools/clang/test/Preprocessor/line-directive.c
projects/clangbsd/contrib/llvm/tools/clang/test/Preprocessor/macro_disable3.c
projects/clangbsd/contrib/llvm/tools/clang/test/Preprocessor/macro_paste_mscomment.c
projects/clangbsd/contrib/llvm/tools/clang/test/Preprocessor/macro_rescan_varargs.c
projects/clangbsd/contrib/llvm/tools/clang/test/Preprocessor/macro_rparen_scan2.c
projects/clangbsd/contrib/llvm/tools/clang/test/Preprocessor/output_paste_avoid.c
projects/clangbsd/contrib/llvm/tools/clang/test/Preprocessor/stringize_misc.c
projects/clangbsd/contrib/llvm/tools/clang/test/Sema/attr-deprecated.c
projects/clangbsd/contrib/llvm/tools/clang/test/Sema/callingconv.c
projects/clangbsd/contrib/llvm/tools/clang/test/Sema/constant-builtins-2.c
projects/clangbsd/contrib/llvm/tools/clang/test/Sema/decl-invalid.c
projects/clangbsd/contrib/llvm/tools/clang/test/Sema/format-strings.c
projects/clangbsd/contrib/llvm/tools/clang/test/Sema/init.c
projects/clangbsd/contrib/llvm/tools/clang/test/Sema/offsetof.c
projects/clangbsd/contrib/llvm/tools/clang/test/Sema/return-noreturn.c
projects/clangbsd/contrib/llvm/tools/clang/test/Sema/return.c
projects/clangbsd/contrib/llvm/tools/clang/test/Sema/statements.c
projects/clangbsd/contrib/llvm/tools/clang/test/Sema/stdcall-fastcall.c
projects/clangbsd/contrib/llvm/tools/clang/test/Sema/vector-init.c
projects/clangbsd/contrib/llvm/tools/clang/test/SemaCXX/constructor.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaCXX/implicit-int.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaCXX/invalid-member-expr.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaCXX/invalid-template-specifier.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaCXX/nested-name-spec.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaCXX/new-delete.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaCXX/overloaded-operator.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaCXX/typedef-redecl.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaObjC/continuation-class-err.m
projects/clangbsd/contrib/llvm/tools/clang/test/SemaObjC/id-isa-ref.m
projects/clangbsd/contrib/llvm/tools/clang/test/SemaObjC/return.m
projects/clangbsd/contrib/llvm/tools/clang/test/SemaObjCXX/overload.mm
projects/clangbsd/contrib/llvm/tools/clang/test/SemaObjCXX/references.mm
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/class-template-spec.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/constructor-template.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/copy-ctor-assign.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/default-expr-arguments.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/ext-vector-type.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/friend-template.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/instantiate-cast.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/instantiate-declref-ice.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/instantiate-declref.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/instantiate-function-1.mm
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/instantiate-method.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/instantiate-subscript.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/member-template-access-expr.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/nested-name-spec-template.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/nested-template.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/lit.site.cfg.in
projects/clangbsd/contrib/llvm/tools/clang/tools/CIndex/CIndex.cpp
projects/clangbsd/contrib/llvm/tools/clang/tools/CIndex/CIndex.exports
projects/clangbsd/contrib/llvm/tools/clang/tools/CIndex/CMakeLists.txt
projects/clangbsd/contrib/llvm/tools/clang/tools/CMakeLists.txt
projects/clangbsd/contrib/llvm/tools/clang/tools/c-index-test/c-index-test.c
projects/clangbsd/contrib/llvm/tools/clang/tools/clang-cc/clang-cc.cpp
projects/clangbsd/contrib/llvm/tools/clang/tools/wpa/clang-wpa.cpp
projects/clangbsd/contrib/llvm/tools/clang/www/UniversalDriver.html
projects/clangbsd/contrib/llvm/tools/clang/www/analyzer/latest_checker.html.incl
projects/clangbsd/contrib/llvm/tools/clang/www/cxx_status.html
projects/clangbsd/contrib/llvm/tools/gold/gold-plugin.cpp
projects/clangbsd/contrib/llvm/tools/lli/lli.cpp
projects/clangbsd/contrib/llvm/tools/llvm-mc/AsmLexer.h
projects/clangbsd/contrib/llvm/tools/llvm-mc/llvm-mc.cpp
projects/clangbsd/contrib/llvm/tools/llvmc/doc/LLVMC-Reference.rst
projects/clangbsd/contrib/llvm/tools/opt/opt.cpp
projects/clangbsd/contrib/llvm/unittests/ADT/StringMapTest.cpp
projects/clangbsd/contrib/llvm/unittests/ADT/ValueMapTest.cpp
projects/clangbsd/contrib/llvm/unittests/ExecutionEngine/JIT/JITEventListenerTest.cpp
projects/clangbsd/contrib/llvm/unittests/ExecutionEngine/JIT/JITMemoryManagerTest.cpp
projects/clangbsd/contrib/llvm/unittests/ExecutionEngine/JIT/JITTest.cpp
projects/clangbsd/contrib/llvm/unittests/ExecutionEngine/JIT/Makefile
projects/clangbsd/contrib/llvm/unittests/Makefile.unittest
projects/clangbsd/contrib/llvm/unittests/Support/ValueHandleTest.cpp
projects/clangbsd/contrib/llvm/unittests/Transforms/Utils/Cloning.cpp
projects/clangbsd/contrib/llvm/unittests/VMCore/MetadataTest.cpp
projects/clangbsd/contrib/llvm/utils/TableGen/CodeGenDAGPatterns.cpp
projects/clangbsd/contrib/llvm/utils/TableGen/CodeGenInstruction.cpp
projects/clangbsd/contrib/llvm/utils/TableGen/CodeGenInstruction.h
projects/clangbsd/contrib/llvm/utils/TableGen/DAGISelEmitter.cpp
projects/clangbsd/contrib/llvm/utils/TableGen/InstrInfoEmitter.cpp
projects/clangbsd/contrib/llvm/utils/TableGen/LLVMCConfigurationEmitter.cpp
projects/clangbsd/contrib/llvm/utils/TableGen/Record.cpp
projects/clangbsd/contrib/llvm/utils/TableGen/Record.h
projects/clangbsd/contrib/llvm/utils/TableGen/TGLexer.h
projects/clangbsd/contrib/llvm/utils/UpdateCMakeLists.pl
projects/clangbsd/contrib/llvm/utils/buildit/build_llvm
projects/clangbsd/contrib/llvm/utils/findoptdiff
projects/clangbsd/contrib/llvm/utils/lit/TestRunner.py
projects/clangbsd/contrib/llvm/utils/lit/Util.py
projects/clangbsd/contrib/llvm/utils/lit/lit.py
projects/clangbsd/contrib/llvm/utils/unittest/UnitTestMain/Makefile
projects/clangbsd/contrib/llvm/utils/unittest/googletest/Makefile
projects/clangbsd/contrib/llvm/utils/vim/llvm.vim
Directory Properties:
projects/clangbsd/contrib/llvm/ (props changed)
projects/clangbsd/contrib/llvm/tools/clang/ (props changed)
Modified: projects/clangbsd/contrib/llvm/CMakeLists.txt
==============================================================================
--- projects/clangbsd/contrib/llvm/CMakeLists.txt Wed Nov 4 15:24:32 2009 (r198897)
+++ projects/clangbsd/contrib/llvm/CMakeLists.txt Wed Nov 4 15:27:27 2009 (r198898)
@@ -319,16 +319,26 @@ if(LLVM_BUILD_EXAMPLES)
add_subdirectory(examples)
endif ()
-install(DIRECTORY include
- DESTINATION .
+install(DIRECTORY include/
+ DESTINATION include
+ FILES_MATCHING
+ PATTERN "*.def"
+ PATTERN "*.h"
+ PATTERN "*.td"
+ PATTERN "*.inc"
PATTERN ".svn" EXCLUDE
- PATTERN "*.cmake" EXCLUDE
- PATTERN "*.in" EXCLUDE
- PATTERN "*.tmp" EXCLUDE
)
-install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include
- DESTINATION .
+install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/
+ DESTINATION include
+ FILES_MATCHING
+ PATTERN "*.def"
+ PATTERN "*.h"
+ PATTERN "*.gen"
+ PATTERN "*.inc"
+ # Exclude include/llvm/CMakeFiles/intrinsics_gen.dir, matched by "*.def"
+ PATTERN "CMakeFiles" EXCLUDE
+ PATTERN ".svn" EXCLUDE
)
# TODO: make and install documentation.
Modified: projects/clangbsd/contrib/llvm/Makefile
==============================================================================
--- projects/clangbsd/contrib/llvm/Makefile Wed Nov 4 15:24:32 2009 (r198897)
+++ projects/clangbsd/contrib/llvm/Makefile Wed Nov 4 15:27:27 2009 (r198898)
@@ -24,7 +24,8 @@ LEVEL := .
# "llvmCore", then this is an "Apple-style" build; search for
# "Apple-style" in the comments for more info. Anything else is a
# normal build.
-ifneq ($(RC_ProjectName),llvmCore) # Normal build (not "Apple-style").
+ifneq ($(findstring llvmCore, $(RC_ProjectName)),llvmCore) # Normal build (not "Apple-style").
+
ifeq ($(BUILD_DIRS_ONLY),1)
DIRS := lib/System lib/Support utils
OPTIONAL_DIRS :=
@@ -94,6 +95,8 @@ cross-compile-build-tools:
$(Verb) if [ ! -f BuildTools/Makefile ]; then \
$(MKDIR) BuildTools; \
cd BuildTools ; \
+ unset CFLAGS ; \
+ unset CXXFLAGS ; \
$(PROJ_SRC_DIR)/configure --build=$(BUILD_TRIPLE) \
--host=$(BUILD_TRIPLE) --target=$(BUILD_TRIPLE); \
cd .. ; \
@@ -133,8 +136,7 @@ dist-hook::
$(Echo) Eliminating files constructed by configure
$(Verb) $(RM) -f \
$(TopDistDir)/include/llvm/Config/config.h \
- $(TopDistDir)/include/llvm/Support/DataTypes.h \
- $(TopDistDir)/include/llvm/Support/ThreadSupport.h
+ $(TopDistDir)/include/llvm/System/DataTypes.h
clang-only: all
tools-only: all
@@ -150,7 +152,7 @@ FilesToConfig := \
include/llvm/Config/config.h \
include/llvm/Config/Targets.def \
include/llvm/Config/AsmPrinters.def \
- include/llvm/Support/DataTypes.h \
+ include/llvm/System/DataTypes.h \
tools/llvmc/plugins/Base/Base.td
FilesToConfigPATH := $(addprefix $(LLVM_OBJ_ROOT)/,$(FilesToConfig))
Modified: projects/clangbsd/contrib/llvm/Makefile.config.in
==============================================================================
--- projects/clangbsd/contrib/llvm/Makefile.config.in Wed Nov 4 15:24:32 2009 (r198897)
+++ projects/clangbsd/contrib/llvm/Makefile.config.in Wed Nov 4 15:27:27 2009 (r198898)
@@ -250,6 +250,9 @@ RDYNAMIC := @RDYNAMIC@
#DEBUG_SYMBOLS = 1
@DEBUG_SYMBOLS@
+# The compiler flags to use for optimized builds.
+OPTIMIZE_OPTION := @OPTIMIZE_OPTION@
+
# When ENABLE_PROFILING is enabled, the llvm source base is built with profile
# information to allow gprof to be used to get execution frequencies.
#ENABLE_PROFILING = 1
@@ -320,3 +323,9 @@ ENABLE_LLVMC_DYNAMIC = 0
# support (via the -load option).
ENABLE_LLVMC_DYNAMIC_PLUGINS = 1
#@ENABLE_LLVMC_DYNAMIC_PLUGINS@
+
+# Optional flags supported by the compiler
+# -Wno-missing-field-initializers
+NO_MISSING_FIELD_INITIALIZERS = @NO_MISSING_FIELD_INITIALIZERS@
+# -Wno-variadic-macros
+NO_VARIADIC_MACROS = @NO_VARIADIC_MACROS@
Modified: projects/clangbsd/contrib/llvm/Makefile.rules
==============================================================================
--- projects/clangbsd/contrib/llvm/Makefile.rules Wed Nov 4 15:24:32 2009 (r198897)
+++ projects/clangbsd/contrib/llvm/Makefile.rules Wed Nov 4 15:27:27 2009 (r198898)
@@ -312,16 +312,6 @@ endif
#--------------------------------------------------------------------
CPP.Defines :=
-# OPTIMIZE_OPTION - The optimization level option we want to build LLVM with
-# this can be overridden on the make command line.
-ifndef OPTIMIZE_OPTION
- ifneq ($(HOST_OS),MingW)
- OPTIMIZE_OPTION := -O3
- else
- OPTIMIZE_OPTION := -O2
- endif
-endif
-
ifeq ($(ENABLE_OPTIMIZED),1)
BuildMode := Release
# Don't use -fomit-frame-pointer on Darwin or FreeBSD.
@@ -566,6 +556,8 @@ endif
ifeq ($(TARGET_OS),Darwin)
ifneq ($(ARCH),ARM)
TargetCommonOpts += -mmacosx-version-min=$(DARWIN_VERSION)
+ else
+ TargetCommonOpts += -marm
endif
endif
@@ -1238,7 +1230,7 @@ endif
endif
ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux NetBSD FreeBSD))
-LD.Flags += -Wl,--version-script=$(LLVM_SRC_ROOT)/autoconf/ExportMap.map
+ LD.Flags += -Wl,--version-script=$(LLVM_SRC_ROOT)/autoconf/ExportMap.map
endif
endif
Modified: projects/clangbsd/contrib/llvm/autoconf/configure.ac
==============================================================================
--- projects/clangbsd/contrib/llvm/autoconf/configure.ac Wed Nov 4 15:24:32 2009 (r198897)
+++ projects/clangbsd/contrib/llvm/autoconf/configure.ac Wed Nov 4 15:27:27 2009 (r198898)
@@ -607,6 +607,23 @@ if test -n "$LLVMGXX" && test -z "$LLVMG
AC_MSG_ERROR([Invalid llvm-gcc. Use --with-llvmgcc when --with-llvmgxx is used]);
fi
+dnl Override the option to use for optimized builds.
+AC_ARG_WITH(optimize-option,
+ AS_HELP_STRING([--with-optimize-option],
+ [Select the compiler options to use for optimized builds]),,
+ withval=default)
+AC_MSG_CHECKING([optimization flags])
+case "$withval" in
+ default)
+ case "$llvm_cv_os_type" in
+ MingW) optimize_option=-O3 ;;
+ *) optimize_option=-O2 ;;
+ esac ;;
+ *) optimize_option="$withval" ;;
+esac
+AC_SUBST(OPTIMIZE_OPTION,$optimize_option)
+AC_MSG_RESULT([$optimize_option])
+
dnl Specify extra build options
AC_ARG_WITH(extra-options,
AS_HELP_STRING([--with-extra-options],
@@ -943,6 +960,12 @@ fi
dnl Tool compatibility is okay if we make it here.
AC_MSG_RESULT([ok])
+dnl Check optional compiler flags.
+AC_MSG_CHECKING([optional compiler flags])
+CXX_FLAG_CHECK(NO_VARIADIC_MACROS, [-Wno-variadic-macros])
+CXX_FLAG_CHECK(NO_MISSING_FIELD_INITIALIZERS, [-Wno-missing-field-initializers])
+AC_MSG_RESULT([$NO_VARIADIC_MACROS $NO_MISSING_FIELD_INITIALIZERS])
+
dnl===-----------------------------------------------------------------------===
dnl===
dnl=== SECTION 5: Check for libraries
@@ -1349,7 +1372,7 @@ AC_CONFIG_HEADERS([include/llvm/Config/c
AC_CONFIG_FILES([include/llvm/Config/Targets.def])
AC_CONFIG_FILES([include/llvm/Config/AsmPrinters.def])
AC_CONFIG_FILES([include/llvm/Config/AsmParsers.def])
-AC_CONFIG_HEADERS([include/llvm/Support/DataTypes.h])
+AC_CONFIG_HEADERS([include/llvm/System/DataTypes.h])
dnl Configure the makefile's configuration data
AC_CONFIG_FILES([Makefile.config])
Modified: projects/clangbsd/contrib/llvm/cmake/config-ix.cmake
==============================================================================
--- projects/clangbsd/contrib/llvm/cmake/config-ix.cmake Wed Nov 4 15:24:32 2009 (r198897)
+++ projects/clangbsd/contrib/llvm/cmake/config-ix.cmake Wed Nov 4 15:27:27 2009 (r198898)
@@ -83,9 +83,9 @@ check_symbol_exists(floorf math.h HAVE_F
check_symbol_exists(mallinfo malloc.h HAVE_MALLINFO)
check_symbol_exists(malloc_zone_statistics malloc/malloc.h
HAVE_MALLOC_ZONE_STATISTICS)
-check_symbol_exists(mkdtemp unistd.h HAVE_MKDTEMP)
-check_symbol_exists(mkstemp unistd.h HAVE_MKSTEMP)
-check_symbol_exists(mktemp unistd.h HAVE_MKTEMP)
+check_symbol_exists(mkdtemp "stdlib.h;unistd.h" HAVE_MKDTEMP)
+check_symbol_exists(mkstemp "stdlib.h;unistd.h" HAVE_MKSTEMP)
+check_symbol_exists(mktemp "stdlib.h;unistd.h" HAVE_MKTEMP)
check_symbol_exists(pthread_mutex_lock pthread.h HAVE_PTHREAD_MUTEX_LOCK)
check_symbol_exists(sbrk unistd.h HAVE_SBRK)
check_symbol_exists(strtoll stdlib.h HAVE_STRTOLL)
@@ -229,7 +229,7 @@ configure_file(
)
configure_file(
- ${LLVM_MAIN_INCLUDE_DIR}/llvm/Support/DataTypes.h.cmake
- ${LLVM_BINARY_DIR}/include/llvm/Support/DataTypes.h
+ ${LLVM_MAIN_INCLUDE_DIR}/llvm/System/DataTypes.h.cmake
+ ${LLVM_BINARY_DIR}/include/llvm/System/DataTypes.h
)
Modified: projects/clangbsd/contrib/llvm/cmake/modules/LLVMLibDeps.cmake
==============================================================================
--- projects/clangbsd/contrib/llvm/cmake/modules/LLVMLibDeps.cmake Wed Nov 4 15:24:32 2009 (r198897)
+++ projects/clangbsd/contrib/llvm/cmake/modules/LLVMLibDeps.cmake Wed Nov 4 15:27:27 2009 (r198898)
@@ -23,7 +23,6 @@ set(MSVC_LIB_DEPS_LLVMCodeGen LLVMAnalys
set(MSVC_LIB_DEPS_LLVMCore LLVMSupport LLVMSystem)
set(MSVC_LIB_DEPS_LLVMCppBackend LLVMCore LLVMCppBackendInfo LLVMSupport LLVMSystem LLVMTarget)
set(MSVC_LIB_DEPS_LLVMCppBackendInfo LLVMSupport)
-set(MSVC_LIB_DEPS_LLVMDebugger LLVMAnalysis LLVMBitReader LLVMCore LLVMSupport LLVMSystem)
set(MSVC_LIB_DEPS_LLVMExecutionEngine LLVMCore LLVMSupport LLVMSystem LLVMTarget)
set(MSVC_LIB_DEPS_LLVMHello LLVMCore LLVMSupport LLVMSystem)
set(MSVC_LIB_DEPS_LLVMInstrumentation LLVMAnalysis LLVMCore LLVMScalarOpts LLVMSupport LLVMSystem LLVMTransformUtils)
Modified: projects/clangbsd/contrib/llvm/cmake/modules/LLVMProcessSources.cmake
==============================================================================
--- projects/clangbsd/contrib/llvm/cmake/modules/LLVMProcessSources.cmake Wed Nov 4 15:24:32 2009 (r198897)
+++ projects/clangbsd/contrib/llvm/cmake/modules/LLVMProcessSources.cmake Wed Nov 4 15:27:27 2009 (r198898)
@@ -22,6 +22,7 @@ endmacro(add_header_files)
function(llvm_process_sources OUT_VAR)
set( sources ${ARGN} )
+ llvm_check_source_file_list( ${sources} )
# Create file dependencies on the tablegenned files, if any. Seems
# that this is not strictly needed, as dependencies of the .cpp
# sources on the tablegenned .inc files are detected and handled,
@@ -37,3 +38,17 @@ function(llvm_process_sources OUT_VAR)
endif()
set( ${OUT_VAR} ${sources} PARENT_SCOPE )
endfunction(llvm_process_sources)
+
+
+function(llvm_check_source_file_list)
+ set(listed ${ARGN})
+ file(GLOB globbed *.cpp)
+ foreach(g ${globbed})
+ get_filename_component(fn ${g} NAME)
+ list(FIND listed ${fn} idx)
+ if( idx LESS 0 )
+ message(SEND_ERROR "Found unknown source file ${g}
+Please update ${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt\n")
+ endif()
+ endforeach()
+endfunction(llvm_check_source_file_list)
Modified: projects/clangbsd/contrib/llvm/configure
==============================================================================
--- projects/clangbsd/contrib/llvm/configure Wed Nov 4 15:24:32 2009 (r198897)
+++ projects/clangbsd/contrib/llvm/configure Wed Nov 4 15:27:27 2009 (r198898)
@@ -848,6 +848,7 @@ LLVM_ENUM_TARGETS
LLVM_ENUM_ASM_PRINTERS
LLVM_ENUM_ASM_PARSERS
ENABLE_CBE_PRINTF_A
+OPTIMIZE_OPTION
EXTRA_OPTIONS
BINUTILS_INCDIR
ENABLE_LLVMC_DYNAMIC
@@ -913,6 +914,8 @@ LLVMGCCCOMMAND
LLVMGXXCOMMAND
LLVMGCC
LLVMGXX
+NO_VARIADIC_MACROS
+NO_MISSING_FIELD_INITIALIZERS
USE_UDIS86
USE_OPROFILE
HAVE_PTHREAD
@@ -1595,6 +1598,8 @@ Optional Packages:
searches PATH)
--with-llvmgxx Specify location of llvm-g++ driver (default
searches PATH)
+ --with-optimize-option Select the compiler options to use for optimized
+ builds
--with-extra-options Specify additional options to compile LLVM with
--with-ocaml-libdir Specify install location for ocaml bindings (default
is stdlib)
@@ -5190,6 +5195,29 @@ echo "$as_me: error: Invalid llvm-gcc. U
fi
+# Check whether --with-optimize-option was given.
+if test "${with_optimize_option+set}" = set; then
+ withval=$with_optimize_option;
+else
+ withval=default
+fi
+
+{ echo "$as_me:$LINENO: checking optimization flags" >&5
+echo $ECHO_N "checking optimization flags... $ECHO_C" >&6; }
+case "$withval" in
+ default)
+ case "$llvm_cv_os_type" in
+ MingW) optimize_option=-O3 ;;
+ *) optimize_option=-O2 ;;
+ esac ;;
+ *) optimize_option="$withval" ;;
+esac
+OPTIMIZE_OPTION=$optimize_option
+
+{ echo "$as_me:$LINENO: result: $optimize_option" >&5
+echo "${ECHO_T}$optimize_option" >&6; }
+
+
# Check whether --with-extra-options was given.
if test "${with_extra_options+set}" = set; then
withval=$with_extra_options;
@@ -11008,7 +11036,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext < conftest.$ac_ext
+ echo '#line 13183 "configure"' > conftest.$ac_ext
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
@@ -14870,11 +14898,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:14873: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:14901: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:14877: \$? = $ac_status" >&5
+ echo "$as_me:14905: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -15138,11 +15166,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:15141: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:15169: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:15145: \$? = $ac_status" >&5
+ echo "$as_me:15173: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -15242,11 +15270,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:15245: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:15273: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:15249: \$? = $ac_status" >&5
+ echo "$as_me:15277: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -17694,7 +17722,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext < conftest.$ac_ext <&5)
+ (eval echo "\"\$as_me:20193: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:20169: \$? = $ac_status" >&5
+ echo "$as_me:20197: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -20266,11 +20294,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:20269: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:20297: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:20273: \$? = $ac_status" >&5
+ echo "$as_me:20301: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -21836,11 +21864,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:21839: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:21867: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:21843: \$? = $ac_status" >&5
+ echo "$as_me:21871: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -21940,11 +21968,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:21943: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:21971: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:21947: \$? = $ac_status" >&5
+ echo "$as_me:21975: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -24175,11 +24203,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:24178: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:24206: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:24182: \$? = $ac_status" >&5
+ echo "$as_me:24210: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -24443,11 +24471,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:24446: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:24474: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:24450: \$? = $ac_status" >&5
+ echo "$as_me:24478: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -24547,11 +24575,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:24550: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:24578: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:24554: \$? = $ac_status" >&5
+ echo "$as_me:24582: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -27459,6 +27487,15 @@ fi
{ echo "$as_me:$LINENO: result: ok" >&5
echo "${ECHO_T}ok" >&6; }
+{ echo "$as_me:$LINENO: checking optional compiler flags" >&5
+echo $ECHO_N "checking optional compiler flags... $ECHO_C" >&6; }
+NO_VARIADIC_MACROS=`$CXX -Wno-variadic-macros -fsyntax-only -xc /dev/null 2>/dev/null && echo -Wno-variadic-macros`
+
+NO_MISSING_FIELD_INITIALIZERS=`$CXX -Wno-missing-field-initializers -fsyntax-only -xc /dev/null 2>/dev/null && echo -Wno-missing-field-initializers`
+
+{ echo "$as_me:$LINENO: result: $NO_VARIADIC_MACROS $NO_MISSING_FIELD_INITIALIZERS" >&5
+echo "${ECHO_T}$NO_VARIADIC_MACROS $NO_MISSING_FIELD_INITIALIZERS" >&6; }
+
{ echo "$as_me:$LINENO: checking for sin in -lm" >&5
@@ -35260,7 +35297,7 @@ ac_config_files="$ac_config_files includ
ac_config_files="$ac_config_files include/llvm/Config/AsmParsers.def"
-ac_config_headers="$ac_config_headers include/llvm/Support/DataTypes.h"
+ac_config_headers="$ac_config_headers include/llvm/System/DataTypes.h"
ac_config_files="$ac_config_files Makefile.config"
@@ -35887,7 +35924,7 @@ do
"include/llvm/Config/Targets.def") CONFIG_FILES="$CONFIG_FILES include/llvm/Config/Targets.def" ;;
"include/llvm/Config/AsmPrinters.def") CONFIG_FILES="$CONFIG_FILES include/llvm/Config/AsmPrinters.def" ;;
"include/llvm/Config/AsmParsers.def") CONFIG_FILES="$CONFIG_FILES include/llvm/Config/AsmParsers.def" ;;
- "include/llvm/Support/DataTypes.h") CONFIG_HEADERS="$CONFIG_HEADERS include/llvm/Support/DataTypes.h" ;;
+ "include/llvm/System/DataTypes.h") CONFIG_HEADERS="$CONFIG_HEADERS include/llvm/System/DataTypes.h" ;;
"Makefile.config") CONFIG_FILES="$CONFIG_FILES Makefile.config" ;;
"llvm.spec") CONFIG_FILES="$CONFIG_FILES llvm.spec" ;;
"docs/doxygen.cfg") CONFIG_FILES="$CONFIG_FILES docs/doxygen.cfg" ;;
@@ -36061,11 +36098,11 @@ LLVM_ENUM_TARGETS!$LLVM_ENUM_TARGETS$ac_
LLVM_ENUM_ASM_PRINTERS!$LLVM_ENUM_ASM_PRINTERS$ac_delim
LLVM_ENUM_ASM_PARSERS!$LLVM_ENUM_ASM_PARSERS$ac_delim
ENABLE_CBE_PRINTF_A!$ENABLE_CBE_PRINTF_A$ac_delim
+OPTIMIZE_OPTION!$OPTIMIZE_OPTION$ac_delim
EXTRA_OPTIONS!$EXTRA_OPTIONS$ac_delim
BINUTILS_INCDIR!$BINUTILS_INCDIR$ac_delim
ENABLE_LLVMC_DYNAMIC!$ENABLE_LLVMC_DYNAMIC$ac_delim
ENABLE_LLVMC_DYNAMIC_PLUGINS!$ENABLE_LLVMC_DYNAMIC_PLUGINS$ac_delim
-CXX!$CXX$ac_delim
_ACEOF
if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then
@@ -36107,6 +36144,7 @@ _ACEOF
ac_delim='%!_!# '
for ac_last_try in false false false false false :; do
cat >conf$$subs.sed <<_ACEOF
+CXX!$CXX$ac_delim
CXXFLAGS!$CXXFLAGS$ac_delim
ac_ct_CXX!$ac_ct_CXX$ac_delim
NM!$NM$ac_delim
@@ -36167,6 +36205,8 @@ LLVMGCCCOMMAND!$LLVMGCCCOMMAND$ac_delim
LLVMGXXCOMMAND!$LLVMGXXCOMMAND$ac_delim
LLVMGCC!$LLVMGCC$ac_delim
LLVMGXX!$LLVMGXX$ac_delim
+NO_VARIADIC_MACROS!$NO_VARIADIC_MACROS$ac_delim
+NO_MISSING_FIELD_INITIALIZERS!$NO_MISSING_FIELD_INITIALIZERS$ac_delim
USE_UDIS86!$USE_UDIS86$ac_delim
USE_OPROFILE!$USE_OPROFILE$ac_delim
HAVE_PTHREAD!$HAVE_PTHREAD$ac_delim
@@ -36201,7 +36241,7 @@ LIBOBJS!$LIBOBJS$ac_delim
LTLIBOBJS!$LTLIBOBJS$ac_delim
_ACEOF
- if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 92; then
+ if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 95; then
break
elif $ac_last_try; then
{ { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
Modified: projects/clangbsd/contrib/llvm/docs/BitCodeFormat.html
==============================================================================
--- projects/clangbsd/contrib/llvm/docs/BitCodeFormat.html Wed Nov 4 15:24:32 2009 (r198897)
+++ projects/clangbsd/contrib/llvm/docs/BitCodeFormat.html Wed Nov 4 15:27:27 2009 (r198898)
@@ -27,6 +27,15 @@
LLVM IR Encoding
- Basics
+ - MODULE_BLOCK Contents
+ - PARAMATTR_BLOCK Contents
+ - TYPE_BLOCK Contents
+ - CONSTANTS_BLOCK Contents
+ - FUNCTION_BLOCK Contents
+ - TYPE_SYMTAB_BLOCK Contents
+ - VALUE_SYMTAB_BLOCK Contents
+ - METADATA_BLOCK Contents
+ - METADATA_ATTACHMENT Contents
@@ -220,7 +229,7 @@ A bitstream is a sequential series of
@@ -258,7 +267,7 @@ application specific. Nested blocks capt
encoded in it, and various properties are associated with blocks as the file is
parsed. Block definitions allow the reader to efficiently skip blocks
in constant time if the reader wants a summary of blocks, or if it wants to
-efficiently skip data they do not understand. The LLVM IR reader uses this
+efficiently skip data it does not understand. The LLVM IR reader uses this
mechanism to skip function bodies, lazily reading them on demand.
@@ -268,7 +277,8 @@ block. In particular, each block mainta
-- A current abbrev id width. This value starts at 2, and is set every time a
+
- A current abbrev id width. This value starts at 2 at the beginning of
+ the stream, and is set every time a
block record is entered. The block entry specifies the abbrev id width for
the body of the block.
@@ -335,13 +345,14 @@ an even multiple of 32-bits.
-Data records consist of a record code and a number of (up to) 64-bit integer
-values. The interpretation of the code and values is application specific and
-there are multiple different ways to encode a record (with an unabbrev record or
-with an abbreviation). In the LLVM IR format, for example, there is a record
+Data records consist of a record code and a number of (up to) 64-bit
+integer values. The interpretation of the code and values is
+application specific and may vary between different block types.
+Records can be encoded either using an unabbrev record, or with an
+abbreviation. In the LLVM IR format, for example, there is a record
which encodes the target triple of a module. The code is
-MODULE_CODE_TRIPLE, and the values of the record are the ASCII codes
-for the characters in the string.
+MODULE_CODE_TRIPLE, and the values of the record are the
+ASCII codes for the characters in the string.
@@ -358,7 +369,7 @@ Encoding
An UNABBREV_RECORD provides a default fallback encoding, which is both
completely general and extremely inefficient. It can describe an arbitrary
-record by emitting the code and operands as vbrs.
+record by emitting the code and operands as VBRs.
@@ -391,6 +402,11 @@ allows the files to be completely self d
abbreviations is defined below.
+The record code, which is the first field of an abbreviated record,
+may be encoded in the abbreviation definition (as a literal
+operand) or supplied in the abbreviated record (as a Fixed or VBR
+operand value).
+
@@ -409,8 +425,9 @@ emitted.
Abbreviations can be determined dynamically per client, per file. Because the
abbreviations are stored in the bitstream itself, different streams of the same
-format can contain different sets of abbreviations if the specific stream does
-not need it. As a concrete example, LLVM IR files usually emit an abbreviation
+format can contain different sets of abbreviations according to the needs
+of the specific stream.
+As a concrete example, LLVM IR files usually emit an abbreviation
for binary operators. If a specific LLVM module contained no or few binary
operators, the abbreviation does not need to be emitted.
@@ -431,7 +448,8 @@ defined abbreviations in the scope of th
inside this immediate block — it is not visible in subblocks or enclosing
blocks. Abbreviations are implicitly assigned IDs sequentially starting from 4
(the first application-defined abbreviation ID). Any abbreviations defined in a
-BLOCKINFO record receive IDs first, in order, followed by any
+BLOCKINFO record for the particular block type
+receive IDs first, in order, followed by any
abbreviations defined within the block itself. Abbreviated data records
reference this ID to indicate what abbreviation they are invoking.
@@ -461,31 +479,32 @@ emitted as their code, followed by the e
The possible operand encodings are:
-
-- Fixed: The field should be emitted as
+
+- Fixed (code 1): The field should be emitted as
a fixed-width value, whose width is specified by
the operand's extra data.
-- VBR: The field should be emitted as
+
- VBR (code 2): The field should be emitted as
a variable-width value, whose width is
specified by the operand's extra data.
-- Array: This field is an array of values. The array operand
- has no extra data, but expects another operand to follow it which indicates
+
- Array (code 3): This field is an array of values. The array operand
+ has no extra data, but expects another operand to follow it, indicating
the element type of the array. When reading an array in an abbreviated
record, the first integer is a vbr6 that indicates the array length,
followed by the encoded elements of the array. An array may only occur as
the last operand of an abbreviation (except for the one final operand that
gives the array's type).
-- Char6: This field should be emitted as
+
- Char6 (code 4): This field should be emitted as
a char6-encoded value. This operand type takes no
- extra data.
-- Blob: This field is emitted as a vbr6, followed by padding to a
+ extra data. Char6 encoding is normally used as an array element type.
+
+- Blob (code 5): This field is emitted as a vbr6, followed by padding to a
32-bit boundary (for alignment) and an array of 8-bit objects. The array of
bytes is further followed by tail padding to ensure that its total length is
a multiple of 4 bytes. This makes it very efficient for the reader to
decode the data without having to make a copy of it: it can use a pointer to
the data in the mapped in file and poke directly at it. A blob may only
occur as the last operand of an abbreviation.
-
+
For example, target triples in LLVM modules are encoded as a record of the
@@ -517,7 +536,7 @@ as:
- The first value, 4, is the abbreviation ID for this abbreviation.
-- The second value, 2, is the code for TRIPLE in LLVM IR files.
+- The second value, 2, is the record code for TRIPLE records within LLVM IR file MODULE_BLOCK blocks.
- The third value, 4, is the length of the array.
- The rest of the values are the char6 encoded values
for "abcd".
@@ -541,7 +560,7 @@ used for any other string value.
In addition to the basic block structure and record encodings, the bitstream
-also defines specific builtin block types. These block types specify how the
+also defines specific built-in block types. These block types specify how the
stream is to be decoded or other metadata. In the future, new standard blocks
may be added. Block IDs 0-7 are reserved for standard blocks.
@@ -569,7 +588,7 @@ blocks. The currently specified records
-The SETBID record indicates which block ID is being
+The SETBID record (code 1) indicates which block ID is being
described. SETBID records can occur multiple times throughout the
block to change which block ID is being described. There must be
a SETBID record prior to any other records.
@@ -584,13 +603,13 @@ in BLOCKINFO blocks receive abb
in DEFINE_ABBREV.
-The BLOCKNAME can optionally occur in this block. The elements of
-the record are the bytes for the string name of the block. llvm-bcanalyzer uses
+
The BLOCKNAME record (code 2) can optionally occur in this block. The elements of
+the record are the bytes of the string name of the block. llvm-bcanalyzer can use
this to dump out bitcode files symbolically.
-The SETRECORDNAME record can optionally occur in this block. The
-first entry is a record ID number and the rest of the elements of the record are
-the bytes for the string name of the record. llvm-bcanalyzer uses
+
The SETRECORDNAME record (code 3) can also optionally occur in this block. The
+first operand value is a record ID number, and the rest of the elements of the record are
+the bytes for the string name of the record. llvm-bcanalyzer can use
this to dump out bitcode files symbolically.
@@ -626,7 +645,7 @@ Each of the fields are 32-bit fields sto
the rest of the bitcode file fields). The Magic number is always
0x0B17C0DE and the version is currently always 0. The Offset
field is the offset in bytes to the start of the bitcode stream in the file, and
-the Size field is a size in bytes of the stream. CPUType is a target-specific
+the Size field is the size in bytes of the stream. CPUType is a target-specific
value that can be used to encode the CPU of the target.
@@ -681,26 +700,28 @@ When combined with the bitcode magic num
-Variable Width Integers are an efficient way to
-encode arbitrary sized unsigned values, but is an extremely inefficient way to
-encode signed values (as signed values are otherwise treated as maximally large
-unsigned values).
+Variable Width Integer encoding is an efficient way to
+encode arbitrary sized unsigned values, but is an extremely inefficient for
+encoding signed values, as signed values are otherwise treated as maximally large
+unsigned values.
-As such, signed vbr values of a specific width are emitted as follows:
+As such, signed VBR values of a specific width are emitted as follows:
-- Positive values are emitted as vbrs of the specified width, but with their
+
- Positive values are emitted as VBRs of the specified width, but with their
value shifted left by one.
-- Negative values are emitted as vbrs of the specified width, but the negated
+
- Negative values are emitted as VBRs of the specified width, but the negated
value is shifted left by one, and the low bit is set.
-With this encoding, small positive and small negative values can both be emitted
-efficiently.
+With this encoding, small positive and small negative values can both
+be emitted efficiently. Signed VBR encoding is used in
+CST_CODE_INTEGER and CST_CODE_WIDE_INTEGER records
+within CONSTANTS_BLOCK blocks.
@@ -716,21 +737,23 @@ LLVM IR is defined with the following bl
-- 8 — MODULE_BLOCK — This is the top-level block that
+
- 8 — MODULE_BLOCK — This is the top-level block that
contains the entire module, and describes a variety of per-module
information.
-- 9 — PARAMATTR_BLOCK — This enumerates the parameter
+
- 9 — PARAMATTR_BLOCK — This enumerates the parameter
attributes.
-- 10 — TYPE_BLOCK — This describes all of the types in
+
- 10 — TYPE_BLOCK — This describes all of the types in
the module.
-- 11 — CONSTANTS_BLOCK — This describes constants for a
+
- 11 — CONSTANTS_BLOCK — This describes constants for a
module or function.
-- 12 — FUNCTION_BLOCK — This describes a function
+
- 12 — FUNCTION_BLOCK — This describes a function
body.
-- 13 — TYPE_SYMTAB_BLOCK — This describes the type symbol
+
- 13 — TYPE_SYMTAB_BLOCK — This describes the type symbol
table.
-- 14 — VALUE_SYMTAB_BLOCK — This describes a value symbol
+
- 14 — VALUE_SYMTAB_BLOCK — This describes a value symbol
table.
+- 15 — METADATA_BLOCK — This describes metadata items.
+- 16 — METADATA_ATTACHMENT — This contains records associating metadata with function instruction values.
@@ -741,7 +764,387 @@ LLVM IR is defined with the following bl
-
+
The MODULE_BLOCK block (id 8) is the top-level block for LLVM
+bitcode files, and each bitcode file must contain exactly one. In
+addition to records (described below) containing information
+about the module, a MODULE_BLOCK block may contain the
+following sub-blocks:
+
+
+
+
+
+
+
+
+
+
+
+
[VERSION, version#]
+
+
The VERSION record (code 1) contains a single value
+indicating the format version. Only version 0 is supported at this
+time.
+
+
+
+
+
+
+
[TRIPLE, ...string...]
+
+
The TRIPLE record (code 2) contains a variable number of
+values representing the bytes of the target triple
+specification string.
+
+
+
+
+
+
+
[DATALAYOUT, ...string...]
+
+
The DATALAYOUT record (code 3) contains a variable number of
+values representing the bytes of the target datalayout
+specification string.
+
+
+
+
+
+
+
[ASM, ...string...]
+
+
The ASM record (code 4) contains a variable number of
+values representing the bytes of module asm strings, with
+individual assembly blocks separated by newline (ASCII 10) characters.
+
+
+
+
+
+
+
[SECTIONNAME, ...string...]
+
+
The SECTIONNAME record (code 5) contains a variable number
+of values representing the bytes of a single section name
+string. There should be one SECTIONNAME record for each
+section name referenced (e.g., in global variable or function
+section attributes) within the module. These records can be
+referenced by the 1-based index in the section fields of
+GLOBALVAR or FUNCTION records.
+
+
+
+
+
+
+
[DEPLIB, ...string...]
+
+
The DEPLIB record (code 6) contains a variable number of
+values representing the bytes of a single dependent library name
+string, one of the libraries mentioned in a deplibs
+declaration. There should be one DEPLIB record for each
+library name referenced.
+
+
+
+
+
+
+
[GLOBALVAR, pointer type, isconst, initid, linkage, alignment, section, visibility, threadlocal]
+
+
The GLOBALVAR record (code 7) marks the declaration or
+definition of a global variable. The operand fields are:
+
+
+- pointer type: The type index of the pointer type used to point to
+this global variable
+
+- isconst: Non-zero if the variable is treated as constant within
+the module, or zero if it is not
+
+- initid: If non-zero, the value index of the initializer for this
+variable, plus 1.
+
+- linkage: An encoding of the linkage
+type for this variable:
+
+ - external: code 0
+ - weak: code 1
+ - appending: code 2
+ - internal: code 3
+ - linkonce: code 4
+ - dllimport: code 5
+ - dllexport: code 6
+ - extern_weak: code 7
+ - common: code 8
+ - private: code 9
+ - weak_odr: code 10
+ - linkonce_odr: code 11
+ - available_externally: code 12
+ - linker_private: code 13
+
+
+
+- alignment: The logarithm base 2 of the variable's requested
+alignment, plus 1
+
+- section: If non-zero, the 1-based section index in the
+table of MODULE_CODE_SECTIONNAME
+entries.
+
+- visibility: If present, an
+encoding of the visibility of this variable:
+
+ - default: code 0
+ - hidden: code 1
+ - protected: code 2
+
+
+
+- threadlocal: If present and non-zero, indicates that the variable
+is thread_local
+
+
+
+
+
+
+
+
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
From owner-svn-src-projects@FreeBSD.ORG Wed Nov 4 16:59:54 2009
Return-Path:
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id 54AAA1065694;
Wed, 4 Nov 2009 16:59:54 +0000 (UTC)
(envelope-from rdivacky@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c])
by mx1.freebsd.org (Postfix) with ESMTP id 2A9678FC15;
Wed, 4 Nov 2009 16:59:54 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id nA4Gxs0Q039290;
Wed, 4 Nov 2009 16:59:54 GMT (envelope-from rdivacky@svn.freebsd.org)
Received: (from rdivacky@localhost)
by svn.freebsd.org (8.14.3/8.14.3/Submit) id nA4GxsaX039289;
Wed, 4 Nov 2009 16:59:54 GMT (envelope-from rdivacky@svn.freebsd.org)
Message-Id: <200911041659.nA4GxsaX039289@svn.freebsd.org>
From: Roman Divacky
Date: Wed, 4 Nov 2009 16:59:54 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc:
Subject: svn commit: r198909 -
projects/clangbsd/contrib/llvm/lib/Transforms/Utils
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "SVN commit messages for the src " projects"
tree"
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Wed, 04 Nov 2009 16:59:54 -0000
Author: rdivacky
Date: Wed Nov 4 16:59:53 2009
New Revision: 198909
URL: http://svn.freebsd.org/changeset/base/198909
Log:
Merge file deletion from vendor.
Deleted:
projects/clangbsd/contrib/llvm/lib/Transforms/Utils/LowerAllocations.cpp
Modified:
Directory Properties:
projects/clangbsd/contrib/llvm/ (props changed)
projects/clangbsd/contrib/llvm/tools/clang/ (props changed)
From owner-svn-src-projects@FreeBSD.ORG Wed Nov 4 17:00:24 2009
Return-Path:
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id 996F0106568B;
Wed, 4 Nov 2009 17:00:24 +0000 (UTC)
(envelope-from rdivacky@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c])
by mx1.freebsd.org (Postfix) with ESMTP id 8513F8FC28;
Wed, 4 Nov 2009 17:00:24 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id nA4H0OBu039373;
Wed, 4 Nov 2009 17:00:24 GMT (envelope-from rdivacky@svn.freebsd.org)
Received: (from rdivacky@localhost)
by svn.freebsd.org (8.14.3/8.14.3/Submit) id nA4H0OVu039363;
Wed, 4 Nov 2009 17:00:24 GMT (envelope-from rdivacky@svn.freebsd.org)
Message-Id: <200911041700.nA4H0OVu039363@svn.freebsd.org>
From: Roman Divacky
Date: Wed, 4 Nov 2009 17:00:24 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc:
Subject: svn commit: r198910 - in projects/clangbsd/usr.bin/clang/lib:
libclanganalysis libclangast libclangcodegen libllvmanalysis
libllvmarmcodegen libllvmcodegen libllvmipo libllvmscalaropts
libllvmtrans...
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "SVN commit messages for the src " projects"
tree"
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Wed, 04 Nov 2009 17:00:24 -0000
Author: rdivacky
Date: Wed Nov 4 17:00:24 2009
New Revision: 198910
URL: http://svn.freebsd.org/changeset/base/198910
Log:
Adjust makefiles for new llvm/clang.
Modified:
projects/clangbsd/usr.bin/clang/lib/libclanganalysis/Makefile
projects/clangbsd/usr.bin/clang/lib/libclangast/Makefile
projects/clangbsd/usr.bin/clang/lib/libclangcodegen/Makefile
projects/clangbsd/usr.bin/clang/lib/libllvmanalysis/Makefile
projects/clangbsd/usr.bin/clang/lib/libllvmarmcodegen/Makefile
projects/clangbsd/usr.bin/clang/lib/libllvmcodegen/Makefile
projects/clangbsd/usr.bin/clang/lib/libllvmipo/Makefile
projects/clangbsd/usr.bin/clang/lib/libllvmscalaropts/Makefile
projects/clangbsd/usr.bin/clang/lib/libllvmtransformutils/Makefile
Modified: projects/clangbsd/usr.bin/clang/lib/libclanganalysis/Makefile
==============================================================================
--- projects/clangbsd/usr.bin/clang/lib/libclanganalysis/Makefile Wed Nov 4 16:59:53 2009 (r198909)
+++ projects/clangbsd/usr.bin/clang/lib/libclanganalysis/Makefile Wed Nov 4 17:00:24 2009 (r198910)
@@ -3,18 +3,21 @@
LIB= clanganalysis
SRCDIR= tools/clang/lib/Analysis
-SRCS= AnalysisContext.cpp AnalysisManager.cpp BasicConstraintManager.cpp \
+SRCS= AnalysisContext.cpp AnalysisManager.cpp AttrNonNullChecker.cpp \
+ BadCallChecker.cpp BasicConstraintManager.cpp \
BasicObjCFoundationChecks.cpp BasicStore.cpp BasicValueFactory.cpp \
BugReporter.cpp BugReporterVisitors.cpp CFG.cpp CFRefCount.cpp \
- CallGraph.cpp CallInliner.cpp CheckDeadStores.cpp CheckNSError.cpp \
+ CallGraph.cpp CallInliner.cpp CheckDeadStores.cpp \
CheckObjCDealloc.cpp CheckObjCInstMethSignature.cpp \
- CheckObjCUnusedIVars.cpp CheckSecuritySyntaxOnly.cpp Environment.cpp \
+ CheckObjCUnusedIVars.cpp CheckSecuritySyntaxOnly.cpp DereferenceChecker.cpp DivZeroChecker.cpp Environment.cpp \
ExplodedGraph.cpp GRBlockCounter.cpp GRCoreEngine.cpp GRExprEngine.cpp \
GRExprEngineInternalChecks.cpp GRState.cpp LiveVariables.cpp \
- MemRegion.cpp PathDiagnostic.cpp RangeConstraintManager.cpp \
- RegionStore.cpp SVals.cpp SValuator.cpp SimpleConstraintManager.cpp \
- SimpleSValuator.cpp Store.cpp SymbolManager.cpp \
- UninitializedValues.cpp ValueManager.cpp
+ MemRegion.cpp NSAutoreleasePoolChecker.cpp NSErrorChecker.cpp PathDiagnostic.cpp \
+ RangeConstraintManager.cpp RegionStore.cpp SVals.cpp SValuator.cpp \
+ SimpleConstraintManager.cpp SimpleSValuator.cpp Store.cpp \
+ SymbolManager.cpp UndefinedArgChecker.cpp \
+ UndefinedAssignmentChecker.cpp UninitializedValues.cpp \
+ ValueManager.cpp VLASizeChecker.cpp
TGHDRS= DiagnosticAnalysisKinds DiagnosticCommonKinds
Modified: projects/clangbsd/usr.bin/clang/lib/libclangast/Makefile
==============================================================================
--- projects/clangbsd/usr.bin/clang/lib/libclangast/Makefile Wed Nov 4 16:59:53 2009 (r198909)
+++ projects/clangbsd/usr.bin/clang/lib/libclangast/Makefile Wed Nov 4 17:00:24 2009 (r198910)
@@ -9,7 +9,8 @@ SRCS= APValue.cpp ASTConsumer.cpp ASTCon
ExprCXX.cpp ExprConstant.cpp InheritViz.cpp \
NestedNameSpecifier.cpp ParentMap.cpp RecordLayoutBuilder.cpp \
Stmt.cpp StmtDumper.cpp StmtIterator.cpp StmtPrinter.cpp \
- StmtProfile.cpp StmtViz.cpp TemplateName.cpp Type.cpp TypeLoc.cpp
+ StmtProfile.cpp StmtViz.cpp TemplateBase.cpp TemplateName.cpp Type.cpp \
+ TypeLoc.cpp
TGHDRS= DiagnosticASTKinds DiagnosticCommonKinds
Modified: projects/clangbsd/usr.bin/clang/lib/libclangcodegen/Makefile
==============================================================================
--- projects/clangbsd/usr.bin/clang/lib/libclangcodegen/Makefile Wed Nov 4 16:59:53 2009 (r198909)
+++ projects/clangbsd/usr.bin/clang/lib/libclangcodegen/Makefile Wed Nov 4 17:00:24 2009 (r198910)
@@ -3,7 +3,8 @@
LIB= clangcodegen
SRCDIR= tools/clang/lib/CodeGen
-SRCS= CGBlocks.cpp CGBuiltin.cpp CGCXX.cpp CGCXXClass.cpp CGCXXExpr.cpp \
+SRCS= CGBlocks.cpp CGBuiltin.cpp CGException.cpp CGCXX.cpp CGCXXClass.cpp \
+ CGCXXExpr.cpp \
CGCXXTemp.cpp CGCall.cpp CGDebugInfo.cpp CGDecl.cpp CGExpr.cpp \
CGExprAgg.cpp CGExprComplex.cpp CGExprConstant.cpp CGExprScalar.cpp \
CGObjC.cpp CGObjCGNU.cpp CGObjCMac.cpp CGRecordLayoutBuilder.cpp \
Modified: projects/clangbsd/usr.bin/clang/lib/libllvmanalysis/Makefile
==============================================================================
--- projects/clangbsd/usr.bin/clang/lib/libllvmanalysis/Makefile Wed Nov 4 16:59:53 2009 (r198909)
+++ projects/clangbsd/usr.bin/clang/lib/libllvmanalysis/Makefile Wed Nov 4 17:00:24 2009 (r198910)
@@ -11,7 +11,7 @@ SRCS= AliasAnalysis.cpp AliasAnalysisCou
InstCount.cpp Interval.cpp IntervalPartition.cpp \
LibCallAliasAnalysis.cpp LibCallSemantics.cpp LiveValues.cpp \
LoopDependenceAnalysis.cpp LoopInfo.cpp LoopPass.cpp \
- MallocHelper.cpp MemoryDependenceAnalysis.cpp PointerTracking.cpp \
+ MemoryBuiltins.cpp MemoryDependenceAnalysis.cpp PointerTracking.cpp \
PostDominators.cpp ProfileEstimatorPass.cpp ProfileInfo.cpp \
ProfileInfoLoader.cpp ProfileInfoLoaderPass.cpp \
ProfileVerifierPass.cpp ScalarEvolution.cpp \
Modified: projects/clangbsd/usr.bin/clang/lib/libllvmarmcodegen/Makefile
==============================================================================
--- projects/clangbsd/usr.bin/clang/lib/libllvmarmcodegen/Makefile Wed Nov 4 16:59:53 2009 (r198909)
+++ projects/clangbsd/usr.bin/clang/lib/libllvmarmcodegen/Makefile Wed Nov 4 17:00:24 2009 (r198910)
@@ -9,6 +9,7 @@ SRCS= ARMBaseInstrInfo.cpp ARMBaseRegist
ARMISelLowering.cpp ARMInstrInfo.cpp ARMJITInfo.cpp \
ARMLoadStoreOptimizer.cpp ARMLoadStoreOptimizer.cpp ARMMCAsmInfo.cpp \
ARMRegisterInfo.cpp ARMSubtarget.cpp ARMTargetMachine.cpp \
+ NEONMoveFix.cpp \
NEONPreAllocPass.cpp Thumb1InstrInfo.cpp Thumb1RegisterInfo.cpp \
Thumb2ITBlockPass.cpp Thumb2InstrInfo.cpp Thumb2RegisterInfo.cpp \
Thumb2SizeReduction.cpp
Modified: projects/clangbsd/usr.bin/clang/lib/libllvmcodegen/Makefile
==============================================================================
--- projects/clangbsd/usr.bin/clang/lib/libllvmcodegen/Makefile Wed Nov 4 16:59:53 2009 (r198909)
+++ projects/clangbsd/usr.bin/clang/lib/libllvmcodegen/Makefile Wed Nov 4 17:00:24 2009 (r198910)
@@ -3,12 +3,12 @@
LIB= llvmcodegen
SRCDIR= lib/CodeGen
-SRCS= BranchFolding.cpp CodePlacementOpt.cpp \
- DeadMachineInstructionElim.cpp DwarfEHPrepare.cpp \
- ELFCodeEmitter.cpp ELFWriter.cpp ExactHazardRecognizer.cpp \
- GCMetadata.cpp GCMetadataPrinter.cpp GCStrategy.cpp \
- IfConversion.cpp IntrinsicLowering.cpp LLVMTargetMachine.cpp \
- LatencyPriorityQueue.cpp LiveInterval.cpp \
+SRCS= AggressiveAntiDepBreaker.cpp BranchFolding.cpp CodePlacementOpt.cpp \
+ CriticalAntiDepBreaker.cpp DeadMachineInstructionElim.cpp \
+ DwarfEHPrepare.cpp ELFCodeEmitter.cpp ELFWriter.cpp \
+ ExactHazardRecognizer.cpp GCMetadata.cpp GCMetadataPrinter.cpp \
+ GCStrategy.cpp IfConversion.cpp IntrinsicLowering.cpp \
+ LLVMTargetMachine.cpp LatencyPriorityQueue.cpp LiveInterval.cpp \
LiveIntervalAnalysis.cpp LiveStackAnalysis.cpp \
LiveVariables.cpp LowerSubregs.cpp MachOCodeEmitter.cpp MachOWriter.cpp \
MachineBasicBlock.cpp MachineDominators.cpp \
@@ -18,16 +18,17 @@ SRCS= BranchFolding.cpp CodePlacementOpt
MachinePassRegistry.cpp MachineRegisterInfo.cpp \
MachineSink.cpp MachineVerifier.cpp ObjectCodeEmitter.cpp OcamlGC.cpp \
PHIElimination.cpp Passes.cpp PostRASchedulerList.cpp \
- PreAllocSplitting.cpp PrologEpilogInserter.cpp \
+ PreAllocSplitting.cpp ProcessImplicitDefs.cpp PrologEpilogInserter.cpp \
PseudoSourceValue.cpp RegAllocLinearScan.cpp RegAllocLocal.cpp \
RegAllocPBQP.cpp RegisterCoalescer.cpp \
RegisterScavenging.cpp ScheduleDAG.cpp ScheduleDAGEmit.cpp \
ScheduleDAGInstrs.cpp ScheduleDAGPrinter.cpp \
ShrinkWrapping.cpp ShadowStackGC.cpp \
- SimpleRegisterCoalescing.cpp SjLjEHPrepare.cpp Spiller.cpp \
- StackProtector.cpp StackSlotColoring.cpp StrongPHIElimination.cpp \
- TargetInstrInfoImpl.cpp TwoAddressInstructionPass.cpp \
- UnreachableBlockElim.cpp VirtRegMap.cpp VirtRegRewriter.cpp
+ SimpleRegisterCoalescing.cpp SjLjEHPrepare.cpp SlotIndexes.cpp \
+ Spiller.cpp StackProtector.cpp StackSlotColoring.cpp \
+ StrongPHIElimination.cpp TargetInstrInfoImpl.cpp \
+ TwoAddressInstructionPass.cpp UnreachableBlockElim.cpp VirtRegMap.cpp \
+ VirtRegRewriter.cpp
TGHDRS= Intrinsics
Modified: projects/clangbsd/usr.bin/clang/lib/libllvmipo/Makefile
==============================================================================
--- projects/clangbsd/usr.bin/clang/lib/libllvmipo/Makefile Wed Nov 4 16:59:53 2009 (r198909)
+++ projects/clangbsd/usr.bin/clang/lib/libllvmipo/Makefile Wed Nov 4 17:00:24 2009 (r198910)
@@ -9,7 +9,7 @@ SRCS= ArgumentPromotion.cpp ConstantMerg
IPConstantPropagation.cpp IPO.cpp \
InlineAlways.cpp InlineSimple.cpp Inliner.cpp Internalize.cpp \
LoopExtractor.cpp LowerSetJmp.cpp MergeFunctions.cpp \
- PartialSpecialization.cpp PruneEH.cpp RaiseAllocations.cpp \
+ PartialSpecialization.cpp PruneEH.cpp \
StripDeadPrototypes.cpp StripSymbols.cpp \
StructRetPromotion.cpp
Modified: projects/clangbsd/usr.bin/clang/lib/libllvmscalaropts/Makefile
==============================================================================
--- projects/clangbsd/usr.bin/clang/lib/libllvmscalaropts/Makefile Wed Nov 4 16:59:53 2009 (r198909)
+++ projects/clangbsd/usr.bin/clang/lib/libllvmscalaropts/Makefile Wed Nov 4 17:00:24 2009 (r198910)
@@ -3,7 +3,7 @@
LIB= llvmscalaropts
SRCDIR= lib/Transforms/Scalar
-SRCS= ADCE.cpp BasicBlockPlacement.cpp CodeGenLICM.cpp CodeGenPrepare.cpp \
+SRCS= ADCE.cpp BasicBlockPlacement.cpp CodeGenPrepare.cpp \
CondPropagate.cpp ConstantProp.cpp DCE.cpp \
DeadStoreElimination.cpp GVN.cpp IndVarSimplify.cpp \
InstructionCombining.cpp JumpThreading.cpp LICM.cpp \
Modified: projects/clangbsd/usr.bin/clang/lib/libllvmtransformutils/Makefile
==============================================================================
--- projects/clangbsd/usr.bin/clang/lib/libllvmtransformutils/Makefile Wed Nov 4 16:59:53 2009 (r198909)
+++ projects/clangbsd/usr.bin/clang/lib/libllvmtransformutils/Makefile Wed Nov 4 17:00:24 2009 (r198910)
@@ -8,9 +8,9 @@ SRCS= AddrModeMatcher.cpp BasicBlockUtil
CloneModule.cpp CodeExtractor.cpp \
DemoteRegToStack.cpp InlineFunction.cpp \
InstructionNamer.cpp LCSSA.cpp Local.cpp LoopSimplify.cpp \
- LowerAllocations.cpp LowerInvoke.cpp LowerSwitch.cpp \
+ LoopUnroll.cpp LowerInvoke.cpp LowerSwitch.cpp \
Mem2Reg.cpp PromoteMemoryToRegister.cpp SSAUpdater.cpp SSI.cpp \
- SimplifyCFG.cpp UnifyFunctionExitNodes.cpp UnrollLoop.cpp \
+ SimplifyCFG.cpp UnifyFunctionExitNodes.cpp \
ValueMapper.cpp
TGHDRS= Intrinsics
From owner-svn-src-projects@FreeBSD.ORG Wed Nov 4 23:33:36 2009
Return-Path:
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id EA2791065695;
Wed, 4 Nov 2009 23:33:36 +0000 (UTC)
(envelope-from gonzo@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c])
by mx1.freebsd.org (Postfix) with ESMTP id BE7008FC17;
Wed, 4 Nov 2009 23:33:36 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id nA4NXaaE050319;
Wed, 4 Nov 2009 23:33:36 GMT (envelope-from gonzo@svn.freebsd.org)
Received: (from gonzo@localhost)
by svn.freebsd.org (8.14.3/8.14.3/Submit) id nA4NXavU050316;
Wed, 4 Nov 2009 23:33:36 GMT (envelope-from gonzo@svn.freebsd.org)
Message-Id: <200911042333.nA4NXavU050316@svn.freebsd.org>
From: Oleksandr Tymoshenko
Date: Wed, 4 Nov 2009 23:33:36 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc:
Subject: svn commit: r198932 - projects/mips/sys/mips/atheros
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "SVN commit messages for the src " projects"
tree"
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Wed, 04 Nov 2009 23:33:37 -0000
Author: gonzo
Date: Wed Nov 4 23:33:36 2009
New Revision: 198932
URL: http://svn.freebsd.org/changeset/base/198932
Log:
- Remove noisy "Implement me" stubs
- Handle SIOCSIFFLAGS ioctl
Modified:
projects/mips/sys/mips/atheros/if_arge.c
projects/mips/sys/mips/atheros/if_argevar.h
Modified: projects/mips/sys/mips/atheros/if_arge.c
==============================================================================
--- projects/mips/sys/mips/atheros/if_arge.c Wed Nov 4 22:39:18 2009 (r198931)
+++ projects/mips/sys/mips/atheros/if_arge.c Wed Nov 4 23:33:36 2009 (r198932)
@@ -272,6 +272,7 @@ arge_attach(device_t dev)
ifp->if_ioctl = arge_ioctl;
ifp->if_start = arge_start;
ifp->if_init = arge_init;
+ sc->arge_if_flags = ifp->if_flags;
/* XXX: add real size */
IFQ_SET_MAXLEN(&ifp->if_snd, IFQ_MAXLEN);
@@ -900,25 +901,38 @@ arge_ioctl(struct ifnet *ifp, u_long com
switch (command) {
case SIOCSIFFLAGS:
- printf("Implement me: SIOCSIFFLAGS\n");
+ ARGE_LOCK(sc);
+ if ((ifp->if_flags & IFF_UP) != 0) {
+ if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) {
+ if (((ifp->if_flags ^ sc->arge_if_flags)
+ & (IFF_PROMISC | IFF_ALLMULTI)) != 0)
+ arge_rx_locked(sc);
+ } else {
+ if (!sc->arge_detach)
+ arge_init_locked(sc);
+ }
+ } else if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) {
+ ifp->if_drv_flags &= ~IFF_DRV_RUNNING;
+ arge_stop(sc);
+ }
+ sc->arge_if_flags = ifp->if_flags;
+ ARGE_UNLOCK(sc);
error = 0;
break;
case SIOCADDMULTI:
case SIOCDELMULTI:
- printf("Implement me: SIOCDELMULTI\n");
+ /* XXX: implement SIOCDELMULTI */
error = 0;
break;
case SIOCGIFMEDIA:
case SIOCSIFMEDIA:
- printf("Implement me: SIOCSIFMEDIA\n");
mii = device_get_softc(sc->arge_miibus);
error = ifmedia_ioctl(ifp, ifr, &mii->mii_media, command);
break;
case SIOCSIFCAP:
- printf("Implement me: SIOCSIFCAP\n");
+ /* XXX: Check other capabilities */
#ifdef DEVICE_POLLING
mask = ifp->if_capenable ^ ifr->ifr_reqcap;
- error = 0;
if (mask & IFCAP_POLLING) {
if (ifr->ifr_reqcap & IFCAP_POLLING) {
ARGE_WRITE(sc, AR71XX_DMA_INTR, 0);
@@ -936,6 +950,7 @@ arge_ioctl(struct ifnet *ifp, u_long com
ARGE_UNLOCK(sc);
}
}
+ error = 0;
break;
#endif
default:
Modified: projects/mips/sys/mips/atheros/if_argevar.h
==============================================================================
--- projects/mips/sys/mips/atheros/if_argevar.h Wed Nov 4 22:39:18 2009 (r198931)
+++ projects/mips/sys/mips/atheros/if_argevar.h Wed Nov 4 23:33:36 2009 (r198932)
@@ -133,6 +133,7 @@ struct arge_softc {
int arge_phy_num;
uint32_t arge_ddr_flush_reg;
uint32_t arge_pll_reg;
+ int arge_if_flags;
};
#endif /* __IF_ARGEVAR_H__ */
From owner-svn-src-projects@FreeBSD.ORG Wed Nov 4 23:34:58 2009
Return-Path:
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id 6A7F0106566C;
Wed, 4 Nov 2009 23:34:58 +0000 (UTC)
(envelope-from gonzo@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c])
by mx1.freebsd.org (Postfix) with ESMTP id 4FC398FC15;
Wed, 4 Nov 2009 23:34:58 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id nA4NYwGI050377;
Wed, 4 Nov 2009 23:34:58 GMT (envelope-from gonzo@svn.freebsd.org)
Received: (from gonzo@localhost)
by svn.freebsd.org (8.14.3/8.14.3/Submit) id nA4NYwfG050375;
Wed, 4 Nov 2009 23:34:58 GMT (envelope-from gonzo@svn.freebsd.org)
Message-Id: <200911042334.nA4NYwfG050375@svn.freebsd.org>
From: Oleksandr Tymoshenko
Date: Wed, 4 Nov 2009 23:34:58 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc:
Subject: svn commit: r198933 - projects/mips/sys/mips/atheros
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "SVN commit messages for the src " projects"
tree"
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Wed, 04 Nov 2009 23:34:58 -0000
Author: gonzo
Date: Wed Nov 4 23:34:58 2009
New Revision: 198933
URL: http://svn.freebsd.org/changeset/base/198933
Log:
- style(9): replace whitespaces with tabs
Modified:
projects/mips/sys/mips/atheros/if_arge.c
Modified: projects/mips/sys/mips/atheros/if_arge.c
==============================================================================
--- projects/mips/sys/mips/atheros/if_arge.c Wed Nov 4 23:33:36 2009 (r198932)
+++ projects/mips/sys/mips/atheros/if_arge.c Wed Nov 4 23:34:58 2009 (r198933)
@@ -295,7 +295,7 @@ arge_attach(device_t dev)
/*
* No MAC address configured. Generate the random one.
*/
- if (bootverbose)
+ if (bootverbose)
device_printf(dev,
"Generating random ethernet address.\n");
@@ -929,29 +929,29 @@ arge_ioctl(struct ifnet *ifp, u_long com
mii = device_get_softc(sc->arge_miibus);
error = ifmedia_ioctl(ifp, ifr, &mii->mii_media, command);
break;
- case SIOCSIFCAP:
+ case SIOCSIFCAP:
/* XXX: Check other capabilities */
#ifdef DEVICE_POLLING
- mask = ifp->if_capenable ^ ifr->ifr_reqcap;
- if (mask & IFCAP_POLLING) {
- if (ifr->ifr_reqcap & IFCAP_POLLING) {
+ mask = ifp->if_capenable ^ ifr->ifr_reqcap;
+ if (mask & IFCAP_POLLING) {
+ if (ifr->ifr_reqcap & IFCAP_POLLING) {
ARGE_WRITE(sc, AR71XX_DMA_INTR, 0);
- error = ether_poll_register(arge_poll, ifp);
- if (error)
- return error;
- ARGE_LOCK(sc);
- ifp->if_capenable |= IFCAP_POLLING;
- ARGE_UNLOCK(sc);
- } else {
+ error = ether_poll_register(arge_poll, ifp);
+ if (error)
+ return error;
+ ARGE_LOCK(sc);
+ ifp->if_capenable |= IFCAP_POLLING;
+ ARGE_UNLOCK(sc);
+ } else {
ARGE_WRITE(sc, AR71XX_DMA_INTR, DMA_INTR_ALL);
- error = ether_poll_deregister(ifp);
- ARGE_LOCK(sc);
- ifp->if_capenable &= ~IFCAP_POLLING;
- ARGE_UNLOCK(sc);
- }
- }
+ error = ether_poll_deregister(ifp);
+ ARGE_LOCK(sc);
+ ifp->if_capenable &= ~IFCAP_POLLING;
+ ARGE_UNLOCK(sc);
+ }
+ }
error = 0;
- break;
+ break;
#endif
default:
error = ether_ioctl(ifp, command, data);
@@ -1392,8 +1392,8 @@ arge_newbuf(struct arge_softc *sc, int i
static __inline void
arge_fixup_rx(struct mbuf *m)
{
- int i;
- uint16_t *src, *dst;
+ int i;
+ uint16_t *src, *dst;
src = mtod(m, uint16_t *);
dst = src - 1;
@@ -1415,12 +1415,12 @@ arge_poll(struct ifnet *ifp, enum poll_c
struct arge_softc *sc = ifp->if_softc;
int rx_npkts = 0;
- if (ifp->if_drv_flags & IFF_DRV_RUNNING) {
+ if (ifp->if_drv_flags & IFF_DRV_RUNNING) {
ARGE_LOCK(sc);
arge_tx_locked(sc);
rx_npkts = arge_rx_locked(sc);
ARGE_UNLOCK(sc);
- }
+ }
return (rx_npkts);
}
From owner-svn-src-projects@FreeBSD.ORG Thu Nov 5 03:07:37 2009
Return-Path:
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id 78D42106566B;
Thu, 5 Nov 2009 03:07:37 +0000 (UTC)
(envelope-from nwhitehorn@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c])
by mx1.freebsd.org (Postfix) with ESMTP id 67D0B8FC2D;
Thu, 5 Nov 2009 03:07:37 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id nA537bKn055618;
Thu, 5 Nov 2009 03:07:37 GMT
(envelope-from nwhitehorn@svn.freebsd.org)
Received: (from nwhitehorn@localhost)
by svn.freebsd.org (8.14.3/8.14.3/Submit) id nA537blq055617;
Thu, 5 Nov 2009 03:07:37 GMT
(envelope-from nwhitehorn@svn.freebsd.org)
Message-Id: <200911050307.nA537blq055617@svn.freebsd.org>
From: Nathan Whitehorn
Date: Thu, 5 Nov 2009 03:07:37 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc:
Subject: svn commit: r198938 - projects/ppc64/sys/powerpc/include
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "SVN commit messages for the src " projects"
tree"
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Thu, 05 Nov 2009 03:07:37 -0000
Author: nwhitehorn
Date: Thu Nov 5 03:07:37 2009
New Revision: 198938
URL: http://svn.freebsd.org/changeset/base/198938
Log:
Fix some types in the ucontext struct to handle 64-bit and Book-E.
Modified:
projects/ppc64/sys/powerpc/include/ucontext.h
Modified: projects/ppc64/sys/powerpc/include/ucontext.h
==============================================================================
--- projects/ppc64/sys/powerpc/include/ucontext.h Thu Nov 5 02:31:10 2009 (r198937)
+++ projects/ppc64/sys/powerpc/include/ucontext.h Thu Nov 5 03:07:37 2009 (r198938)
@@ -44,7 +44,7 @@ typedef struct __mcontext {
int mc_len; /* sizeof(__mcontext) */
uint64_t mc_avec[32*2]; /* vector register file */
uint32_t mc_av[2];
- uint32_t mc_frame[41];
+ register_t mc_frame[42];
uint64_t mc_fpreg[33];
} mcontext_t __aligned(16);
From owner-svn-src-projects@FreeBSD.ORG Thu Nov 5 03:54:04 2009
Return-Path:
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id 58A1D1065672;
Thu, 5 Nov 2009 03:54:04 +0000 (UTC)
(envelope-from gonzo@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c])
by mx1.freebsd.org (Postfix) with ESMTP id 480ED8FC1E;
Thu, 5 Nov 2009 03:54:04 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id nA53s4Ib056880;
Thu, 5 Nov 2009 03:54:04 GMT (envelope-from gonzo@svn.freebsd.org)
Received: (from gonzo@localhost)
by svn.freebsd.org (8.14.3/8.14.3/Submit) id nA53s42I056878;
Thu, 5 Nov 2009 03:54:04 GMT (envelope-from gonzo@svn.freebsd.org)
Message-Id: <200911050354.nA53s42I056878@svn.freebsd.org>
From: Oleksandr Tymoshenko
Date: Thu, 5 Nov 2009 03:54:04 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc:
Subject: svn commit: r198939 - projects/mips/sys/mips/atheros
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "SVN commit messages for the src " projects"
tree"
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Thu, 05 Nov 2009 03:54:04 -0000
Author: gonzo
Date: Thu Nov 5 03:54:03 2009
New Revision: 198939
URL: http://svn.freebsd.org/changeset/base/198939
Log:
- Replace dumb cut'n'paste call with not to self (XXX)
Modified:
projects/mips/sys/mips/atheros/if_arge.c
Modified: projects/mips/sys/mips/atheros/if_arge.c
==============================================================================
--- projects/mips/sys/mips/atheros/if_arge.c Thu Nov 5 03:07:37 2009 (r198938)
+++ projects/mips/sys/mips/atheros/if_arge.c Thu Nov 5 03:54:03 2009 (r198939)
@@ -905,8 +905,10 @@ arge_ioctl(struct ifnet *ifp, u_long com
if ((ifp->if_flags & IFF_UP) != 0) {
if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) {
if (((ifp->if_flags ^ sc->arge_if_flags)
- & (IFF_PROMISC | IFF_ALLMULTI)) != 0)
- arge_rx_locked(sc);
+ & (IFF_PROMISC | IFF_ALLMULTI)) != 0) {
+ /* XXX: handle promisc & multi flags */
+ }
+
} else {
if (!sc->arge_detach)
arge_init_locked(sc);
From owner-svn-src-projects@FreeBSD.ORG Thu Nov 5 17:22:13 2009
Return-Path:
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id C64F0106568B;
Thu, 5 Nov 2009 17:22:13 +0000 (UTC)
(envelope-from rdivacky@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c])
by mx1.freebsd.org (Postfix) with ESMTP id B00108FC2E;
Thu, 5 Nov 2009 17:22:13 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id nA5HMDZD085022;
Thu, 5 Nov 2009 17:22:13 GMT (envelope-from rdivacky@svn.freebsd.org)
Received: (from rdivacky@localhost)
by svn.freebsd.org (8.14.3/8.14.3/Submit) id nA5HMDF6084994;
Thu, 5 Nov 2009 17:22:13 GMT (envelope-from rdivacky@svn.freebsd.org)
Message-Id: <200911051722.nA5HMDF6084994@svn.freebsd.org>
From: Roman Divacky
Date: Thu, 5 Nov 2009 17:22:13 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc:
Subject: svn commit: r198955 - in projects/clangbsd/contrib/llvm:
docs/CommandGuide examples/BrainF include/llvm
include/llvm/Analysis include/llvm/CodeGen
include/llvm/Support include/llvm/Target lib/Analy...
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "SVN commit messages for the src " projects"
tree"
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Thu, 05 Nov 2009 17:22:14 -0000
Author: rdivacky
Date: Thu Nov 5 17:22:12 2009
New Revision: 198955
URL: http://svn.freebsd.org/changeset/base/198955
Log:
Merge LLVM/clang from vendor.
Added:
projects/clangbsd/contrib/llvm/test/CodeGen/ARM/indirectbr.ll
- copied unchanged from r198954, vendor/llvm/dist/test/CodeGen/ARM/indirectbr.ll
projects/clangbsd/contrib/llvm/test/CodeGen/PowerPC/indirectbr.ll
- copied unchanged from r198954, vendor/llvm/dist/test/CodeGen/PowerPC/indirectbr.ll
projects/clangbsd/contrib/llvm/test/Transforms/DeadStoreElimination/no-targetdata.ll
- copied unchanged from r198954, vendor/llvm/dist/test/Transforms/DeadStoreElimination/no-targetdata.ll
projects/clangbsd/contrib/llvm/tools/clang/test/SemaCXX/compare.cpp
- copied unchanged from r198954, vendor/clang/dist/test/SemaCXX/compare.cpp
Modified:
projects/clangbsd/contrib/llvm/docs/CommandGuide/lit.pod
projects/clangbsd/contrib/llvm/examples/BrainF/BrainF.cpp
projects/clangbsd/contrib/llvm/include/llvm/Analysis/MemoryBuiltins.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/AsmPrinter.h
projects/clangbsd/contrib/llvm/include/llvm/CodeGen/SlotIndexes.h
projects/clangbsd/contrib/llvm/include/llvm/Instructions.h
projects/clangbsd/contrib/llvm/include/llvm/Support/ConstantFolder.h
projects/clangbsd/contrib/llvm/include/llvm/Support/Format.h
projects/clangbsd/contrib/llvm/include/llvm/Support/LeakDetector.h
projects/clangbsd/contrib/llvm/include/llvm/Support/OutputBuffer.h
projects/clangbsd/contrib/llvm/include/llvm/Support/PassNameParser.h
projects/clangbsd/contrib/llvm/include/llvm/Support/RecyclingAllocator.h
projects/clangbsd/contrib/llvm/include/llvm/Support/TargetFolder.h
projects/clangbsd/contrib/llvm/include/llvm/Target/TargetIntrinsicInfo.h
projects/clangbsd/contrib/llvm/lib/Analysis/DebugInfo.cpp
projects/clangbsd/contrib/llvm/lib/Analysis/MemoryBuiltins.cpp
projects/clangbsd/contrib/llvm/lib/AsmParser/LLParser.cpp
projects/clangbsd/contrib/llvm/lib/AsmParser/LLParser.h
projects/clangbsd/contrib/llvm/lib/Bitcode/Reader/BitcodeReader.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/AggressiveAntiDepBreaker.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/AggressiveAntiDepBreaker.h
projects/clangbsd/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/LLVMTargetMachine.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/MachineLICM.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/PostRASchedulerList.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/ScheduleDAGInstrs.cpp
projects/clangbsd/contrib/llvm/lib/CodeGen/SlotIndexes.cpp
projects/clangbsd/contrib/llvm/lib/Support/MemoryBuffer.cpp
projects/clangbsd/contrib/llvm/lib/System/Win32/Path.inc
projects/clangbsd/contrib/llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp
projects/clangbsd/contrib/llvm/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp
projects/clangbsd/contrib/llvm/lib/Target/Blackfin/BlackfinIntrinsicInfo.cpp
projects/clangbsd/contrib/llvm/lib/Target/Blackfin/BlackfinIntrinsicInfo.h
projects/clangbsd/contrib/llvm/lib/Target/MSP430/AsmPrinter/MSP430AsmPrinter.cpp
projects/clangbsd/contrib/llvm/lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp
projects/clangbsd/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.cpp
projects/clangbsd/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.h
projects/clangbsd/contrib/llvm/lib/Target/PowerPC/PPCInstr64Bit.td
projects/clangbsd/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.td
projects/clangbsd/contrib/llvm/lib/Target/X86/AsmPrinter/X86MCInstLower.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/IPO/GlobalOpt.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/JumpThreading.cpp
projects/clangbsd/contrib/llvm/lib/Transforms/Scalar/SCCP.cpp
projects/clangbsd/contrib/llvm/lib/VMCore/Core.cpp
projects/clangbsd/contrib/llvm/lib/VMCore/Instructions.cpp
projects/clangbsd/contrib/llvm/test/Analysis/PointerTracking/sizes.ll
projects/clangbsd/contrib/llvm/test/Transforms/GlobalOpt/2009-06-01-RecursivePHI.ll
projects/clangbsd/contrib/llvm/test/Transforms/GlobalOpt/heap-sra-1.ll
projects/clangbsd/contrib/llvm/test/Transforms/GlobalOpt/heap-sra-2.ll
projects/clangbsd/contrib/llvm/test/Transforms/GlobalOpt/heap-sra-3.ll
projects/clangbsd/contrib/llvm/test/Transforms/GlobalOpt/heap-sra-4.ll
projects/clangbsd/contrib/llvm/test/Transforms/GlobalOpt/heap-sra-phi.ll
projects/clangbsd/contrib/llvm/test/Transforms/GlobalOpt/malloc-promote-1.ll
projects/clangbsd/contrib/llvm/test/Transforms/GlobalOpt/malloc-promote-2.ll
projects/clangbsd/contrib/llvm/test/Transforms/GlobalOpt/malloc-promote-3.ll
projects/clangbsd/contrib/llvm/test/Transforms/JumpThreading/crash.ll
projects/clangbsd/contrib/llvm/tools/clang/include/clang/AST/ASTConsumer.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Analysis/PathDiagnostic.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Analysis/PathSensitive/AnalysisManager.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Analysis/PathSensitive/BugType.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Analysis/PathSensitive/Checker.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Analysis/PathSensitive/Checkers/UndefinedAssignmentChecker.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Analysis/PathSensitive/GRExprEngine.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Basic/Diagnostic.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticGroups.td
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticParseKinds.td
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSemaKinds.td
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Frontend/ASTConsumers.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Frontend/AnalysisConsumer.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Frontend/InitPreprocessor.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Frontend/PathDiagnosticClients.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Frontend/TextDiagnosticPrinter.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Frontend/Utils.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Lex/Preprocessor.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Parse/Action.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Parse/DeclSpec.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Parse/Parser.h
projects/clangbsd/contrib/llvm/tools/clang/include/clang/Rewrite/HTMLRewrite.h
projects/clangbsd/contrib/llvm/tools/clang/lib/AST/ASTContext.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/AST/DeclarationName.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/AST/RecordLayoutBuilder.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/AST/RecordLayoutBuilder.h
projects/clangbsd/contrib/llvm/tools/clang/lib/AST/Type.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Analysis/GRExprEngine.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Analysis/UndefinedAssignmentChecker.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Analysis/VLASizeChecker.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/CGCXX.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/CGDecl.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/CodeGenFunction.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/CodeGen/CodeGenFunction.h
projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/AnalysisConsumer.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/HTMLDiagnostics.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/HTMLPrint.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/InitPreprocessor.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/PlistDiagnostics.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/TextDiagnosticPrinter.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Headers/stdint.h
projects/clangbsd/contrib/llvm/tools/clang/lib/Lex/Preprocessor.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Parse/DeclSpec.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Parse/MinimalAction.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Parse/ParseDecl.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Parse/ParseDeclCXX.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Parse/ParseExprCXX.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Parse/ParseTemplate.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Parse/ParseTentative.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Rewrite/HTMLRewrite.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/Sema.h
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaCXXCast.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaCXXScopeSpec.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaDeclCXX.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaExpr.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaExprCXX.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaOverload.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaTemplate.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/SemaType.cpp
projects/clangbsd/contrib/llvm/tools/clang/lib/Sema/TreeTransform.h
projects/clangbsd/contrib/llvm/tools/clang/test/Analysis/misc-ps.m
projects/clangbsd/contrib/llvm/tools/clang/test/CMakeLists.txt
projects/clangbsd/contrib/llvm/tools/clang/test/CXX/dcl.dcl/basic.namespace/namespace.udecl/p5-cxx0x.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CodeGenCXX/array-construction.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CodeGenCXX/ptr-to-datamember.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CodeGenCXX/ptr-to-member-function.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/CodeGenCXX/virt.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/Coverage/html-diagnostics.c
projects/clangbsd/contrib/llvm/tools/clang/test/Frontend/dependency-gen.c
projects/clangbsd/contrib/llvm/tools/clang/test/Makefile
projects/clangbsd/contrib/llvm/tools/clang/test/Parser/if-scope-c90.c
projects/clangbsd/contrib/llvm/tools/clang/test/Parser/if-scope-c99.c
projects/clangbsd/contrib/llvm/tools/clang/test/Preprocessor/stdint.c
projects/clangbsd/contrib/llvm/tools/clang/test/Sema/compare.c
projects/clangbsd/contrib/llvm/tools/clang/test/Sema/conditional-expr.c
projects/clangbsd/contrib/llvm/tools/clang/test/SemaCXX/conditional-expr.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaCXX/constructor-initializer.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaCXX/overload-member-call.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaCXX/overloaded-operator.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaCXX/primary-base.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/example-dynarray.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/instantiate-complete.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/instantiate-deeply.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/instantiate-expr-1.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/member-access-expr.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/member-template-access-expr.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/temp_arg_nontype.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/SemaTemplate/template-id-expr.cpp
projects/clangbsd/contrib/llvm/tools/clang/test/lit.cfg
projects/clangbsd/contrib/llvm/tools/clang/tools/clang-cc/clang-cc.cpp
projects/clangbsd/contrib/llvm/tools/clang/utils/C++Tests/LLVM-Syntax/lit.local.cfg
projects/clangbsd/contrib/llvm/tools/clang/www/analyzer/latest_checker.html.incl
projects/clangbsd/contrib/llvm/utils/lit/LitConfig.py
projects/clangbsd/contrib/llvm/utils/lit/lit.py
Directory Properties:
projects/clangbsd/contrib/llvm/ (props changed)
projects/clangbsd/contrib/llvm/tools/clang/ (props changed)
Modified: projects/clangbsd/contrib/llvm/docs/CommandGuide/lit.pod
==============================================================================
--- projects/clangbsd/contrib/llvm/docs/CommandGuide/lit.pod Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/docs/CommandGuide/lit.pod Thu Nov 5 17:22:12 2009 (r198955)
@@ -54,6 +54,12 @@ number of detected available CPUs.
Search for I and I when searching for test suites,
instead I and I.
+=item B<--param> I, B<--param> I=I
+
+Add a user defined parameter I with the given I (or the empty
+string if not given). The meaning and use of these parameters is test suite
+dependent.
+
=back
=head1 OUTPUT OPTIONS
Modified: projects/clangbsd/contrib/llvm/examples/BrainF/BrainF.cpp
==============================================================================
--- projects/clangbsd/contrib/llvm/examples/BrainF/BrainF.cpp Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/examples/BrainF/BrainF.cpp Thu Nov 5 17:22:12 2009 (r198955)
@@ -81,8 +81,11 @@ void BrainF::header(LLVMContext& C) {
ConstantInt *val_mem = ConstantInt::get(C, APInt(32, memtotal));
BasicBlock* BB = builder->GetInsertBlock();
const Type* IntPtrTy = IntegerType::getInt32Ty(C);
- ptr_arr = CallInst::CreateMalloc(BB, IntPtrTy, IntegerType::getInt8Ty(C),
- val_mem, NULL, "arr");
+ const Type* Int8Ty = IntegerType::getInt8Ty(C);
+ Constant* allocsize = ConstantExpr::getSizeOf(Int8Ty);
+ allocsize = ConstantExpr::getTruncOrBitCast(allocsize, IntPtrTy);
+ ptr_arr = CallInst::CreateMalloc(BB, IntPtrTy, Int8Ty, allocsize, val_mem,
+ NULL, "arr");
BB->getInstList().push_back(cast(ptr_arr));
//call void @llvm.memset.i32(i8 *%arr, i8 0, i32 %d, i32 1)
Modified: projects/clangbsd/contrib/llvm/include/llvm/Analysis/MemoryBuiltins.h
==============================================================================
--- projects/clangbsd/contrib/llvm/include/llvm/Analysis/MemoryBuiltins.h Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/include/llvm/Analysis/MemoryBuiltins.h Thu Nov 5 17:22:12 2009 (r198955)
@@ -50,13 +50,17 @@ const CallInst* isArrayMalloc(const Valu
const TargetData* TD);
/// getMallocType - Returns the PointerType resulting from the malloc call.
-/// This PointerType is the result type of the call's only bitcast use.
-/// If there is no unique bitcast use, then return NULL.
+/// The PointerType depends on the number of bitcast uses of the malloc call:
+/// 0: PointerType is the malloc calls' return type.
+/// 1: PointerType is the bitcast's result type.
+/// >1: Unique PointerType cannot be determined, return NULL.
const PointerType* getMallocType(const CallInst* CI);
-/// getMallocAllocatedType - Returns the Type allocated by malloc call. This
-/// Type is the result type of the call's only bitcast use. If there is no
-/// unique bitcast use, then return NULL.
+/// getMallocAllocatedType - Returns the Type allocated by malloc call.
+/// The Type depends on the number of bitcast uses of the malloc call:
+/// 0: PointerType is the malloc calls' return type.
+/// 1: PointerType is the bitcast's result type.
+/// >1: Unique PointerType cannot be determined, return NULL.
const Type* getMallocAllocatedType(const CallInst* CI);
/// getMallocArraySize - Returns the array size of a malloc call. If the
Modified: projects/clangbsd/contrib/llvm/include/llvm/CodeGen/AsmPrinter.h
==============================================================================
--- projects/clangbsd/contrib/llvm/include/llvm/CodeGen/AsmPrinter.h Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/include/llvm/CodeGen/AsmPrinter.h Thu Nov 5 17:22:12 2009 (r198955)
@@ -374,8 +374,10 @@ namespace llvm {
/// printImplicitDef - This method prints the specified machine instruction
/// that is an implicit def.
virtual void printImplicitDef(const MachineInstr *MI) const;
-
-
+
+ /// printKill - This method prints the specified kill machine instruction.
+ virtual void printKill(const MachineInstr *MI) const;
+
/// printPICJumpTableSetLabel - This method prints a set label for the
/// specified MachineBasicBlock for a jumptable entry.
virtual void printPICJumpTableSetLabel(unsigned uid,
Modified: projects/clangbsd/contrib/llvm/include/llvm/CodeGen/SlotIndexes.h
==============================================================================
--- projects/clangbsd/contrib/llvm/include/llvm/CodeGen/SlotIndexes.h Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/include/llvm/CodeGen/SlotIndexes.h Thu Nov 5 17:22:12 2009 (r198955)
@@ -28,6 +28,7 @@
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/Support/Allocator.h"
+#include "llvm/Support/ErrorHandling.h"
namespace llvm {
@@ -38,14 +39,35 @@ namespace llvm {
class IndexListEntry {
private:
+ static std::auto_ptr emptyKeyEntry,
+ tombstoneKeyEntry;
+ typedef enum { EMPTY_KEY, TOMBSTONE_KEY } ReservedEntryType;
+ static const unsigned EMPTY_KEY_INDEX = ~0U & ~3U,
+ TOMBSTONE_KEY_INDEX = ~0U & ~7U;
+
IndexListEntry *next, *prev;
MachineInstr *mi;
unsigned index;
+ // This constructor is only to be used by getEmptyKeyEntry
+ // & getTombstoneKeyEntry. It sets index to the given
+ // value and mi to zero.
+ IndexListEntry(ReservedEntryType r) : mi(0) {
+ switch(r) {
+ case EMPTY_KEY: index = EMPTY_KEY_INDEX; break;
+ case TOMBSTONE_KEY: index = TOMBSTONE_KEY_INDEX; break;
+ default: assert(false && "Invalid value for constructor.");
+ }
+ }
+
public:
- IndexListEntry(MachineInstr *mi, unsigned index)
- : mi(mi), index(index) {}
+ IndexListEntry(MachineInstr *mi, unsigned index) : mi(mi), index(index) {
+ if (index == EMPTY_KEY_INDEX || index == TOMBSTONE_KEY_INDEX) {
+ llvm_report_error("Attempt to create invalid index. "
+ "Available indexes may have been exhausted?.");
+ }
+ }
MachineInstr* getInstr() const { return mi; }
void setInstr(MachineInstr *mi) { this->mi = mi; }
@@ -60,6 +82,24 @@ namespace llvm {
IndexListEntry* getPrev() { return prev; }
const IndexListEntry* getPrev() const { return prev; }
void setPrev(IndexListEntry *prev) { this->prev = prev; }
+
+ // This function returns the index list entry that is to be used for empty
+ // SlotIndex keys.
+ static IndexListEntry* getEmptyKeyEntry() {
+ if (emptyKeyEntry.get() == 0) {
+ emptyKeyEntry.reset(new IndexListEntry(EMPTY_KEY));
+ }
+ return emptyKeyEntry.get();
+ }
+
+ // This function returns the index list entry that is to be used for
+ // tombstone SlotIndex keys.
+ static IndexListEntry* getTombstoneKeyEntry() {
+ if (tombstoneKeyEntry.get() == 0) {
+ tombstoneKeyEntry.reset(new IndexListEntry(TOMBSTONE_KEY));
+ }
+ return tombstoneKeyEntry.get();
+ }
};
// Specialize PointerLikeTypeTraits for IndexListEntry.
@@ -81,10 +121,6 @@ namespace llvm {
friend class DenseMapInfo;
private:
-
- // FIXME: Is there any way to statically allocate these things and have
- // them 8-byte aligned?
- static std::auto_ptr emptyKeyPtr, tombstoneKeyPtr;
static const unsigned PHI_BIT = 1 << 2;
PointerIntPair lie;
@@ -95,7 +131,6 @@ namespace llvm {
}
IndexListEntry& entry() const {
- assert(lie.getPointer() != 0 && "Use of invalid index.");
return *lie.getPointer();
}
@@ -116,25 +151,15 @@ namespace llvm {
enum Slot { LOAD, USE, DEF, STORE, NUM };
static inline SlotIndex getEmptyKey() {
- // FIXME: How do we guarantee these numbers don't get allocated to
- // legit indexes?
- if (emptyKeyPtr.get() == 0)
- emptyKeyPtr.reset(new IndexListEntry(0, ~0U & ~3U));
-
- return SlotIndex(emptyKeyPtr.get(), 0);
+ return SlotIndex(IndexListEntry::getEmptyKeyEntry(), 0);
}
static inline SlotIndex getTombstoneKey() {
- // FIXME: How do we guarantee these numbers don't get allocated to
- // legit indexes?
- if (tombstoneKeyPtr.get() == 0)
- tombstoneKeyPtr.reset(new IndexListEntry(0, ~0U & ~7U));
-
- return SlotIndex(tombstoneKeyPtr.get(), 0);
+ return SlotIndex(IndexListEntry::getTombstoneKeyEntry(), 0);
}
/// Construct an invalid index.
- SlotIndex() : lie(&getEmptyKey().entry(), 0) {}
+ SlotIndex() : lie(IndexListEntry::getEmptyKeyEntry(), 0) {}
// Construct a new slot index from the given one, set the phi flag on the
// new index to the value of the phi parameter.
Modified: projects/clangbsd/contrib/llvm/include/llvm/Instructions.h
==============================================================================
--- projects/clangbsd/contrib/llvm/include/llvm/Instructions.h Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/include/llvm/Instructions.h Thu Nov 5 17:22:12 2009 (r198955)
@@ -899,11 +899,12 @@ public:
/// 3. Bitcast the result of the malloc call to the specified type.
static Instruction *CreateMalloc(Instruction *InsertBefore,
const Type *IntPtrTy, const Type *AllocTy,
- Value *ArraySize = 0,
+ Value *AllocSize, Value *ArraySize = 0,
const Twine &Name = "");
static Instruction *CreateMalloc(BasicBlock *InsertAtEnd,
const Type *IntPtrTy, const Type *AllocTy,
- Value *ArraySize = 0, Function* MallocF = 0,
+ Value *AllocSize, Value *ArraySize = 0,
+ Function* MallocF = 0,
const Twine &Name = "");
/// CreateFree - Generate the IR for a call to the builtin free function.
static void CreateFree(Value* Source, Instruction *InsertBefore);
Modified: projects/clangbsd/contrib/llvm/include/llvm/Support/ConstantFolder.h
==============================================================================
--- projects/clangbsd/contrib/llvm/include/llvm/Support/ConstantFolder.h Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/include/llvm/Support/ConstantFolder.h Thu Nov 5 17:22:12 2009 (r198955)
@@ -18,6 +18,8 @@
#define LLVM_SUPPORT_CONSTANTFOLDER_H
#include "llvm/Constants.h"
+#include "llvm/Instruction.h"
+#include "llvm/InstrTypes.h"
namespace llvm {
Modified: projects/clangbsd/contrib/llvm/include/llvm/Support/Format.h
==============================================================================
--- projects/clangbsd/contrib/llvm/include/llvm/Support/Format.h Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/include/llvm/Support/Format.h Thu Nov 5 17:22:12 2009 (r198955)
@@ -23,6 +23,7 @@
#ifndef LLVM_SUPPORT_FORMAT_H
#define LLVM_SUPPORT_FORMAT_H
+#include
#include
#ifdef WIN32
#define snprintf _snprintf
Modified: projects/clangbsd/contrib/llvm/include/llvm/Support/LeakDetector.h
==============================================================================
--- projects/clangbsd/contrib/llvm/include/llvm/Support/LeakDetector.h Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/include/llvm/Support/LeakDetector.h Thu Nov 5 17:22:12 2009 (r198955)
@@ -26,6 +26,7 @@
namespace llvm {
+class LLVMContext;
class Value;
struct LeakDetector {
Modified: projects/clangbsd/contrib/llvm/include/llvm/Support/OutputBuffer.h
==============================================================================
--- projects/clangbsd/contrib/llvm/include/llvm/Support/OutputBuffer.h Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/include/llvm/Support/OutputBuffer.h Thu Nov 5 17:22:12 2009 (r198955)
@@ -14,6 +14,7 @@
#ifndef LLVM_SUPPORT_OUTPUTBUFFER_H
#define LLVM_SUPPORT_OUTPUTBUFFER_H
+#include
#include
#include
Modified: projects/clangbsd/contrib/llvm/include/llvm/Support/PassNameParser.h
==============================================================================
--- projects/clangbsd/contrib/llvm/include/llvm/Support/PassNameParser.h Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/include/llvm/Support/PassNameParser.h Thu Nov 5 17:22:12 2009 (r198955)
@@ -25,6 +25,7 @@
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/ErrorHandling.h"
+#include "llvm/Support/raw_ostream.h"
#include "llvm/Pass.h"
#include
#include
Modified: projects/clangbsd/contrib/llvm/include/llvm/Support/RecyclingAllocator.h
==============================================================================
--- projects/clangbsd/contrib/llvm/include/llvm/Support/RecyclingAllocator.h Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/include/llvm/Support/RecyclingAllocator.h Thu Nov 5 17:22:12 2009 (r198955)
@@ -41,7 +41,7 @@ public:
/// SubClass. The storage may be either newly allocated or recycled.
///
template
- SubClass *Allocate() { return Base.Allocate(Allocator); }
+ SubClass *Allocate() { return Base.template Allocate(Allocator); }
T *Allocate() { return Base.Allocate(Allocator); }
Modified: projects/clangbsd/contrib/llvm/include/llvm/Support/TargetFolder.h
==============================================================================
--- projects/clangbsd/contrib/llvm/include/llvm/Support/TargetFolder.h Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/include/llvm/Support/TargetFolder.h Thu Nov 5 17:22:12 2009 (r198955)
@@ -20,6 +20,8 @@
#define LLVM_SUPPORT_TARGETFOLDER_H
#include "llvm/Constants.h"
+#include "llvm/Instruction.h"
+#include "llvm/InstrTypes.h"
#include "llvm/Analysis/ConstantFolding.h"
namespace llvm {
Modified: projects/clangbsd/contrib/llvm/include/llvm/Target/TargetIntrinsicInfo.h
==============================================================================
--- projects/clangbsd/contrib/llvm/include/llvm/Target/TargetIntrinsicInfo.h Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/include/llvm/Target/TargetIntrinsicInfo.h Thu Nov 5 17:22:12 2009 (r198955)
@@ -14,6 +14,8 @@
#ifndef LLVM_TARGET_TARGETINTRINSICINFO_H
#define LLVM_TARGET_TARGETINTRINSICINFO_H
+#include
+
namespace llvm {
class Function;
@@ -32,7 +34,13 @@ public:
virtual ~TargetIntrinsicInfo();
/// Return the name of a target intrinsic, e.g. "llvm.bfin.ssync".
- virtual const char *getName(unsigned IntrID) const =0;
+ /// The Tys and numTys parameters are for intrinsics with overloaded types
+ /// (e.g., those using iAny or fAny). For a declaration for an overloaded
+ /// intrinsic, Tys should point to an array of numTys pointers to Type,
+ /// and must provide exactly one type for each overloaded type in the
+ /// intrinsic.
+ virtual std::string getName(unsigned IID, const Type **Tys = 0,
+ unsigned numTys = 0) const = 0;
/// Look up target intrinsic by name. Return intrinsic ID or 0 for unknown
/// names.
@@ -40,6 +48,15 @@ public:
/// Return the target intrinsic ID of a function, or 0.
virtual unsigned getIntrinsicID(Function *F) const;
+
+ /// Returns true if the intrinsic can be overloaded.
+ virtual bool isOverloaded(unsigned IID) const = 0;
+
+ /// Create or insert an LLVM Function declaration for an intrinsic,
+ /// and return it. The Tys and numTys are for intrinsics with overloaded
+ /// types. See above for more information.
+ virtual Function *getDeclaration(Module *M, unsigned ID, const Type **Tys = 0,
+ unsigned numTys = 0) const = 0;
};
} // End llvm namespace
Modified: projects/clangbsd/contrib/llvm/lib/Analysis/DebugInfo.cpp
==============================================================================
--- projects/clangbsd/contrib/llvm/lib/Analysis/DebugInfo.cpp Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/lib/Analysis/DebugInfo.cpp Thu Nov 5 17:22:12 2009 (r198955)
@@ -401,12 +401,18 @@ bool DIVariable::Verify() const {
/// getOriginalTypeSize - If this type is derived from a base type then
/// return base type size.
uint64_t DIDerivedType::getOriginalTypeSize() const {
- DIType BT = getTypeDerivedFrom();
- if (!BT.isNull() && BT.isDerivedType())
- return DIDerivedType(BT.getNode()).getOriginalTypeSize();
- if (BT.isNull())
- return getSizeInBits();
- return BT.getSizeInBits();
+ unsigned Tag = getTag();
+ if (Tag == dwarf::DW_TAG_member || Tag == dwarf::DW_TAG_typedef ||
+ Tag == dwarf::DW_TAG_const_type || Tag == dwarf::DW_TAG_volatile_type ||
+ Tag == dwarf::DW_TAG_restrict_type) {
+ DIType BaseType = getTypeDerivedFrom();
+ if (BaseType.isDerivedType())
+ return DIDerivedType(BaseType.getNode()).getOriginalTypeSize();
+ else
+ return BaseType.getSizeInBits();
+ }
+
+ return getSizeInBits();
}
/// describes - Return true if this subprogram provides debugging
Modified: projects/clangbsd/contrib/llvm/lib/Analysis/MemoryBuiltins.cpp
==============================================================================
--- projects/clangbsd/contrib/llvm/lib/Analysis/MemoryBuiltins.cpp Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/lib/Analysis/MemoryBuiltins.cpp Thu Nov 5 17:22:12 2009 (r198955)
@@ -17,6 +17,7 @@
#include "llvm/Instructions.h"
#include "llvm/Module.h"
#include "llvm/Analysis/ConstantFolding.h"
+#include "llvm/Target/TargetData.h"
using namespace llvm;
//===----------------------------------------------------------------------===//
@@ -96,45 +97,47 @@ static Value *isArrayMallocHelper(const
if (!CI)
return NULL;
- // Type must be known to determine array size.
+ // The size of the malloc's result type must be known to determine array size.
const Type *T = getMallocAllocatedType(CI);
- if (!T)
+ if (!T || !T->isSized() || !TD)
return NULL;
Value *MallocArg = CI->getOperand(1);
+ const Type *ArgType = MallocArg->getType();
ConstantExpr *CO = dyn_cast(MallocArg);
BinaryOperator *BO = dyn_cast(MallocArg);
- Constant *ElementSize = ConstantExpr::getSizeOf(T);
- ElementSize = ConstantExpr::getTruncOrBitCast(ElementSize,
- MallocArg->getType());
- Constant *FoldedElementSize =
- ConstantFoldConstantExpression(cast(ElementSize), Context, TD);
+ unsigned ElementSizeInt = TD->getTypeAllocSize(T);
+ if (const StructType *ST = dyn_cast(T))
+ ElementSizeInt = TD->getStructLayout(ST)->getSizeInBytes();
+ Constant *ElementSize = ConstantInt::get(ArgType, ElementSizeInt);
// First, check if CI is a non-array malloc.
- if (CO && ((CO == ElementSize) ||
- (FoldedElementSize && (CO == FoldedElementSize))))
+ if (CO && CO == ElementSize)
// Match CreateMalloc's use of constant 1 array-size for non-array mallocs.
- return ConstantInt::get(MallocArg->getType(), 1);
+ return ConstantInt::get(ArgType, 1);
// Second, check if CI is an array malloc whose array size can be determined.
- if (isConstantOne(ElementSize) ||
- (FoldedElementSize && isConstantOne(FoldedElementSize)))
+ if (isConstantOne(ElementSize))
return MallocArg;
+ if (ConstantInt *CInt = dyn_cast(MallocArg))
+ if (CInt->getZExtValue() % ElementSizeInt == 0)
+ return ConstantInt::get(ArgType, CInt->getZExtValue() / ElementSizeInt);
+
if (!CO && !BO)
return NULL;
Value *Op0 = NULL;
Value *Op1 = NULL;
unsigned Opcode = 0;
- if (CO && ((CO->getOpcode() == Instruction::Mul) ||
+ if (CO && ((CO->getOpcode() == Instruction::Mul) ||
(CO->getOpcode() == Instruction::Shl))) {
Op0 = CO->getOperand(0);
Op1 = CO->getOperand(1);
Opcode = CO->getOpcode();
}
- if (BO && ((BO->getOpcode() == Instruction::Mul) ||
+ if (BO && ((BO->getOpcode() == Instruction::Mul) ||
(BO->getOpcode() == Instruction::Shl))) {
Op0 = BO->getOperand(0);
Op1 = BO->getOperand(1);
@@ -144,12 +147,10 @@ static Value *isArrayMallocHelper(const
// Determine array size if malloc's argument is the product of a mul or shl.
if (Op0) {
if (Opcode == Instruction::Mul) {
- if ((Op1 == ElementSize) ||
- (FoldedElementSize && (Op1 == FoldedElementSize)))
+ if (Op1 == ElementSize)
// ArraySize * ElementSize
return Op0;
- if ((Op0 == ElementSize) ||
- (FoldedElementSize && (Op0 == FoldedElementSize)))
+ if (Op0 == ElementSize)
// ElementSize * ArraySize
return Op1;
}
@@ -161,11 +162,10 @@ static Value *isArrayMallocHelper(const
uint64_t BitToSet = Op1Int.getLimitedValue(Op1Int.getBitWidth() - 1);
Value *Op1Pow = ConstantInt::get(Context,
APInt(Op1Int.getBitWidth(), 0).set(BitToSet));
- if (Op0 == ElementSize || (FoldedElementSize && Op0 == FoldedElementSize))
+ if (Op0 == ElementSize)
// ArraySize << log2(ElementSize)
return Op1Pow;
- if (Op1Pow == ElementSize ||
- (FoldedElementSize && Op1Pow == FoldedElementSize))
+ if (Op1Pow == ElementSize)
// ElementSize << log2(ArraySize)
return Op0;
}
@@ -205,35 +205,41 @@ const CallInst *llvm::isArrayMalloc(cons
}
/// getMallocType - Returns the PointerType resulting from the malloc call.
-/// This PointerType is the result type of the call's only bitcast use.
-/// If there is no unique bitcast use, then return NULL.
+/// The PointerType depends on the number of bitcast uses of the malloc call:
+/// 0: PointerType is the calls' return type.
+/// 1: PointerType is the bitcast's result type.
+/// >1: Unique PointerType cannot be determined, return NULL.
const PointerType *llvm::getMallocType(const CallInst *CI) {
assert(isMalloc(CI) && "GetMallocType and not malloc call");
- const BitCastInst *BCI = NULL;
-
+ const PointerType *MallocType = NULL;
+ unsigned NumOfBitCastUses = 0;
+
// Determine if CallInst has a bitcast use.
for (Value::use_const_iterator UI = CI->use_begin(), E = CI->use_end();
UI != E; )
- if ((BCI = dyn_cast(cast(*UI++))))
- break;
+ if (const BitCastInst *BCI = dyn_cast(*UI++)) {
+ MallocType = cast(BCI->getDestTy());
+ NumOfBitCastUses++;
+ }
- // Malloc call has 1 bitcast use and no other uses, so type is the bitcast's
- // destination type.
- if (BCI && CI->hasOneUse())
- return cast(BCI->getDestTy());
+ // Malloc call has 1 bitcast use, so type is the bitcast's destination type.
+ if (NumOfBitCastUses == 1)
+ return MallocType;
// Malloc call was not bitcast, so type is the malloc function's return type.
- if (!BCI)
+ if (NumOfBitCastUses == 0)
return cast(CI->getType());
// Type could not be determined.
return NULL;
}
-/// getMallocAllocatedType - Returns the Type allocated by malloc call. This
-/// Type is the result type of the call's only bitcast use. If there is no
-/// unique bitcast use, then return NULL.
+/// getMallocAllocatedType - Returns the Type allocated by malloc call.
+/// The Type depends on the number of bitcast uses of the malloc call:
+/// 0: PointerType is the malloc calls' return type.
+/// 1: PointerType is the bitcast's result type.
+/// >1: Unique PointerType cannot be determined, return NULL.
const Type *llvm::getMallocAllocatedType(const CallInst *CI) {
const PointerType *PT = getMallocType(CI);
return PT ? PT->getElementType() : NULL;
Modified: projects/clangbsd/contrib/llvm/lib/AsmParser/LLParser.cpp
==============================================================================
--- projects/clangbsd/contrib/llvm/lib/AsmParser/LLParser.cpp Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/lib/AsmParser/LLParser.cpp Thu Nov 5 17:22:12 2009 (r198955)
@@ -480,17 +480,17 @@ bool LLParser::ParseMDNode(MetadataBase
if (ParseUInt32(MID)) return true;
// Check existing MDNode.
- std::map::iterator I = MetadataCache.find(MID);
+ std::map::iterator I = MetadataCache.find(MID);
if (I != MetadataCache.end()) {
- Node = I->second;
+ Node = cast(I->second);
return false;
}
// Check known forward references.
- std::map >::iterator
+ std::map >::iterator
FI = ForwardRefMDNodes.find(MID);
if (FI != ForwardRefMDNodes.end()) {
- Node = FI->second.first;
+ Node = cast(FI->second.first);
return false;
}
@@ -570,7 +570,7 @@ bool LLParser::ParseStandaloneMetadata()
MDNode *Init = MDNode::get(Context, Elts.data(), Elts.size());
MetadataCache[MetadataID] = Init;
- std::map >::iterator
+ std::map >::iterator
FI = ForwardRefMDNodes.find(MetadataID);
if (FI != ForwardRefMDNodes.end()) {
MDNode *FwdNode = cast(FI->second.first);
@@ -3619,12 +3619,14 @@ bool LLParser::ParseAlloc(Instruction *&
// Autoupgrade old malloc instruction to malloc call.
// FIXME: Remove in LLVM 3.0.
const Type *IntPtrTy = Type::getInt32Ty(Context);
+ Constant *AllocSize = ConstantExpr::getSizeOf(Ty);
+ AllocSize = ConstantExpr::getTruncOrBitCast(AllocSize, IntPtrTy);
if (!MallocF)
// Prototype malloc as "void *(int32)".
// This function is renamed as "malloc" in ValidateEndOfModule().
MallocF = cast(
M->getOrInsertFunction("", Type::getInt8PtrTy(Context), IntPtrTy, NULL));
- Inst = CallInst::CreateMalloc(BB, IntPtrTy, Ty, Size, MallocF);
+ Inst = CallInst::CreateMalloc(BB, IntPtrTy, Ty, AllocSize, Size, MallocF);
return false;
}
Modified: projects/clangbsd/contrib/llvm/lib/AsmParser/LLParser.h
==============================================================================
--- projects/clangbsd/contrib/llvm/lib/AsmParser/LLParser.h Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/lib/AsmParser/LLParser.h Thu Nov 5 17:22:12 2009 (r198955)
@@ -79,8 +79,8 @@ namespace llvm {
std::map > ForwardRefTypeIDs;
std::vector NumberedTypes;
/// MetadataCache - This map keeps track of parsed metadata constants.
- std::map MetadataCache;
- std::map > ForwardRefMDNodes;
+ std::map MetadataCache;
+ std::map > ForwardRefMDNodes;
SmallVector, 2> MDsOnInst;
struct UpRefRecord {
/// Loc - This is the location of the upref.
Modified: projects/clangbsd/contrib/llvm/lib/Bitcode/Reader/BitcodeReader.cpp
==============================================================================
--- projects/clangbsd/contrib/llvm/lib/Bitcode/Reader/BitcodeReader.cpp Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/lib/Bitcode/Reader/BitcodeReader.cpp Thu Nov 5 17:22:12 2009 (r198955)
@@ -2101,8 +2101,10 @@ bool BitcodeReader::ParseFunctionBody(Fu
if (!Ty || !Size) return Error("Invalid MALLOC record");
if (!CurBB) return Error("Invalid malloc instruction with no BB");
const Type *Int32Ty = IntegerType::getInt32Ty(CurBB->getContext());
+ Constant *AllocSize = ConstantExpr::getSizeOf(Ty->getElementType());
+ AllocSize = ConstantExpr::getTruncOrBitCast(AllocSize, Int32Ty);
I = CallInst::CreateMalloc(CurBB, Int32Ty, Ty->getElementType(),
- Size, NULL);
+ AllocSize, Size, NULL);
InstructionList.push_back(I);
break;
}
Modified: projects/clangbsd/contrib/llvm/lib/CodeGen/AggressiveAntiDepBreaker.cpp
==============================================================================
--- projects/clangbsd/contrib/llvm/lib/CodeGen/AggressiveAntiDepBreaker.cpp Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/lib/CodeGen/AggressiveAntiDepBreaker.cpp Thu Nov 5 17:22:12 2009 (r198955)
@@ -491,8 +491,9 @@ BitVector AggressiveAntiDepBreaker::GetR
}
bool AggressiveAntiDepBreaker::FindSuitableFreeRegisters(
- unsigned AntiDepGroupIndex,
- std::map &RenameMap) {
+ unsigned AntiDepGroupIndex,
+ RenameOrderType& RenameOrder,
+ std::map &RenameMap) {
unsigned *KillIndices = State->GetKillIndices();
unsigned *DefIndices = State->GetDefIndices();
std::multimap&
@@ -547,22 +548,41 @@ bool AggressiveAntiDepBreaker::FindSuita
if (Regs.size() > 1)
return false;
- // Check each possible rename register for SuperReg. If that register
- // is available, and the corresponding registers are available for
- // the other group subregisters, then we can use those registers to
- // rename.
- DEBUG(errs() << "\tFind Register:");
+ // Check each possible rename register for SuperReg in round-robin
+ // order. If that register is available, and the corresponding
+ // registers are available for the other group subregisters, then we
+ // can use those registers to rename.
BitVector SuperBV = RenameRegisterMap[SuperReg];
- for (int r = SuperBV.find_first(); r != -1; r = SuperBV.find_next(r)) {
- const unsigned Reg = (unsigned)r;
+ const TargetRegisterClass *SuperRC =
+ TRI->getPhysicalRegisterRegClass(SuperReg, MVT::Other);
+
+ const TargetRegisterClass::iterator RB = SuperRC->allocation_order_begin(MF);
+ const TargetRegisterClass::iterator RE = SuperRC->allocation_order_end(MF);
+ if (RB == RE) {
+ DEBUG(errs() << "\tEmpty Regclass!!\n");
+ return false;
+ }
+
+ if (RenameOrder.count(SuperRC) == 0)
+ RenameOrder.insert(RenameOrderType::value_type(SuperRC, RE));
+
+ DEBUG(errs() << "\tFind Register:");
+
+ const TargetRegisterClass::iterator OrigR = RenameOrder[SuperRC];
+ const TargetRegisterClass::iterator EndR = ((OrigR == RE) ? RB : OrigR);
+ TargetRegisterClass::iterator R = OrigR;
+ do {
+ if (R == RB) R = RE;
+ --R;
+ const unsigned Reg = *R;
// Don't replace a register with itself.
if (Reg == SuperReg) continue;
-
+
DEBUG(errs() << " " << TRI->getName(Reg));
-
+
// If Reg is dead and Reg's most recent def is not before
- // SuperRegs's kill, it's safe to replace SuperReg with
- // Reg. We must also check all subregisters of Reg.
+ // SuperRegs's kill, it's safe to replace SuperReg with Reg. We
+ // must also check all subregisters of Reg.
if (State->IsLive(Reg) || (KillIndices[SuperReg] > DefIndices[Reg])) {
DEBUG(errs() << "(live)");
continue;
@@ -580,13 +600,15 @@ bool AggressiveAntiDepBreaker::FindSuita
if (found)
continue;
}
-
+
if (Reg != 0) {
DEBUG(errs() << '\n');
+ RenameOrder.erase(SuperRC);
+ RenameOrder.insert(RenameOrderType::value_type(SuperRC, R));
RenameMap.insert(std::pair(SuperReg, Reg));
return true;
}
- }
+ } while (R != EndR);
DEBUG(errs() << '\n');
@@ -627,6 +649,9 @@ unsigned AggressiveAntiDepBreaker::Break
State = new AggressiveAntiDepState(*SavedState);
}
}
+
+ // For each regclass the next register to use for renaming.
+ RenameOrderType RenameOrder;
// ...need a map from MI to SUnit.
std::map MISUnitMap;
@@ -738,7 +763,7 @@ unsigned AggressiveAntiDepBreaker::Break
// Look for a suitable register to use to break the anti-dependence.
std::map RenameMap;
- if (FindSuitableFreeRegisters(GroupIndex, RenameMap)) {
+ if (FindSuitableFreeRegisters(GroupIndex, RenameOrder, RenameMap)) {
DEBUG(errs() << "\tBreaking anti-dependence edge on "
<< TRI->getName(AntiDepReg) << ":");
Modified: projects/clangbsd/contrib/llvm/lib/CodeGen/AggressiveAntiDepBreaker.h
==============================================================================
--- projects/clangbsd/contrib/llvm/lib/CodeGen/AggressiveAntiDepBreaker.h Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/lib/CodeGen/AggressiveAntiDepBreaker.h Thu Nov 5 17:22:12 2009 (r198955)
@@ -155,6 +155,9 @@ namespace llvm {
void FinishBlock();
private:
+ typedef std::map RenameOrderType;
+
/// IsImplicitDefUse - Return true if MO represents a register
/// that is both implicitly used and defined in MI
bool IsImplicitDefUse(MachineInstr *MI, MachineOperand& MO);
@@ -169,6 +172,7 @@ namespace llvm {
void ScanInstruction(MachineInstr *MI, unsigned Count);
BitVector GetRenameRegisters(unsigned Reg);
bool FindSuitableFreeRegisters(unsigned AntiDepGroupIndex,
+ RenameOrderType& RenameOrder,
std::map &RenameMap);
};
}
Modified: projects/clangbsd/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
==============================================================================
--- projects/clangbsd/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp Thu Nov 5 17:22:12 2009 (r198955)
@@ -1590,6 +1590,17 @@ void AsmPrinter::printImplicitDef(const
<< TRI->getName(MI->getOperand(0).getReg());
}
+void AsmPrinter::printKill(const MachineInstr *MI) const {
+ if (!VerboseAsm) return;
+ O.PadToColumn(MAI->getCommentColumn());
+ O << MAI->getCommentString() << " kill:";
+ for (unsigned n = 0, e = MI->getNumOperands(); n != e; ++n) {
+ const MachineOperand &op = MI->getOperand(n);
+ assert(op.isReg() && "KILL instruction must have only register operands");
+ O << ' ' << TRI->getName(op.getReg()) << (op.isDef() ? "" : "");
+ }
+}
+
/// printLabel - This method prints a local label used by debug and
/// exception handling tables.
void AsmPrinter::printLabel(const MachineInstr *MI) const {
Modified: projects/clangbsd/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
==============================================================================
--- projects/clangbsd/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp Thu Nov 5 17:22:12 2009 (r198955)
@@ -1137,6 +1137,9 @@ DIE *DwarfDebug::CreateMemberDIE(Compile
AddSourceLine(MemberDie, &DT);
+ DIEBlock *MemLocationDie = new DIEBlock();
+ AddUInt(MemLocationDie, 0, dwarf::DW_FORM_data1, dwarf::DW_OP_plus_uconst);
+
uint64_t Size = DT.getSizeInBits();
uint64_t FieldSize = DT.getOriginalTypeSize();
@@ -1155,12 +1158,16 @@ DIE *DwarfDebug::CreateMemberDIE(Compile
// Maybe we need to work from the other end.
if (TD->isLittleEndian()) Offset = FieldSize - (Offset + Size);
AddUInt(MemberDie, dwarf::DW_AT_bit_offset, 0, Offset);
- }
- DIEBlock *Block = new DIEBlock();
- AddUInt(Block, 0, dwarf::DW_FORM_data1, dwarf::DW_OP_plus_uconst);
- AddUInt(Block, 0, dwarf::DW_FORM_udata, DT.getOffsetInBits() >> 3);
- AddBlock(MemberDie, dwarf::DW_AT_data_member_location, 0, Block);
+ // Here WD_AT_data_member_location points to the anonymous
+ // field that includes this bit field.
+ AddUInt(MemLocationDie, 0, dwarf::DW_FORM_udata, FieldOffset >> 3);
+
+ } else
+ // This is not a bitfield.
+ AddUInt(MemLocationDie, 0, dwarf::DW_FORM_udata, DT.getOffsetInBits() >> 3);
+
+ AddBlock(MemberDie, dwarf::DW_AT_data_member_location, 0, MemLocationDie);
if (DT.isProtected())
AddUInt(MemberDie, dwarf::DW_AT_accessibility, 0,
Modified: projects/clangbsd/contrib/llvm/lib/CodeGen/LLVMTargetMachine.cpp
==============================================================================
--- projects/clangbsd/contrib/llvm/lib/CodeGen/LLVMTargetMachine.cpp Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/lib/CodeGen/LLVMTargetMachine.cpp Thu Nov 5 17:22:12 2009 (r198955)
@@ -31,6 +31,22 @@ namespace llvm {
bool EnableFastISel;
}
+static cl::opt DisablePostRA("disable-post-ra", cl::Hidden,
+ cl::desc("Disable Post Regalloc"));
+static cl::opt DisableBranchFold("disable-branch-fold", cl::Hidden,
+ cl::desc("Disable branch folding"));
+static cl::opt DisableCodePlace("disable-code-place", cl::Hidden,
+ cl::desc("Disable code placement"));
+static cl::opt DisableSSC("disable-ssc", cl::Hidden,
+ cl::desc("Disable Stack Slot Coloring"));
+static cl::opt DisableMachineLICM("disable-machine-licm", cl::Hidden,
+ cl::desc("Disable Machine LICM"));
+static cl::opt DisableMachineSink("disable-machine-sink", cl::Hidden,
+ cl::desc("Disable Machine Sinking"));
+static cl::opt DisableLSR("disable-lsr", cl::Hidden,
+ cl::desc("Disable Loop Strength Reduction Pass"));
+static cl::opt DisableCGP("disable-cgp", cl::Hidden,
+ cl::desc("Disable Codegen Prepare"));
static cl::opt PrintLSR("print-lsr-output", cl::Hidden,
cl::desc("Print LLVM IR produced by the loop-reduce pass"));
static cl::opt PrintISelInput("print-isel-input", cl::Hidden,
@@ -208,7 +224,7 @@ bool LLVMTargetMachine::addCommonCodeGen
// Standard LLVM-Level Passes.
// Run loop strength reduction before anything else.
- if (OptLevel != CodeGenOpt::None) {
+ if (OptLevel != CodeGenOpt::None && !DisableLSR) {
PM.add(createLoopStrengthReducePass(getTargetLowering()));
if (PrintLSR)
PM.add(createPrintFunctionPass("\n\n*** Code after LSR ***\n", &errs()));
@@ -236,7 +252,7 @@ bool LLVMTargetMachine::addCommonCodeGen
// Make sure that no unreachable blocks are instruction selected.
PM.add(createUnreachableBlockEliminationPass());
- if (OptLevel != CodeGenOpt::None)
+ if (OptLevel != CodeGenOpt::None && !DisableCGP)
PM.add(createCodeGenPreparePass(getTargetLowering()));
PM.add(createStackProtectorPass(getTargetLowering()));
@@ -265,8 +281,10 @@ bool LLVMTargetMachine::addCommonCodeGen
/* allowDoubleDefs= */ true);
if (OptLevel != CodeGenOpt::None) {
- PM.add(createMachineLICMPass());
- PM.add(createMachineSinkingPass());
+ if (!DisableMachineLICM)
+ PM.add(createMachineLICMPass());
+ if (!DisableMachineSink)
+ PM.add(createMachineSinkingPass());
printAndVerify(PM, "After MachineLICM and MachineSinking",
/* allowDoubleDefs= */ true);
}
@@ -281,7 +299,7 @@ bool LLVMTargetMachine::addCommonCodeGen
printAndVerify(PM, "After Register Allocation");
// Perform stack slot coloring.
- if (OptLevel != CodeGenOpt::None) {
+ if (OptLevel != CodeGenOpt::None && !DisableSSC) {
// FIXME: Re-enable coloring with register when it's capable of adding
// kill markers.
PM.add(createStackSlotColoringPass(false));
@@ -304,13 +322,13 @@ bool LLVMTargetMachine::addCommonCodeGen
printAndVerify(PM, "After PreSched2 passes");
// Second pass scheduler.
- if (OptLevel != CodeGenOpt::None) {
+ if (OptLevel != CodeGenOpt::None && !DisablePostRA) {
PM.add(createPostRAScheduler(OptLevel));
printAndVerify(PM, "After PostRAScheduler");
}
// Branch folding must be run after regalloc and prolog/epilog insertion.
- if (OptLevel != CodeGenOpt::None) {
+ if (OptLevel != CodeGenOpt::None && !DisableBranchFold) {
PM.add(createBranchFoldingPass(getEnableTailMergeDefault()));
printAndVerify(PM, "After BranchFolding");
}
@@ -324,13 +342,13 @@ bool LLVMTargetMachine::addCommonCodeGen
PM.add(createDebugLabelFoldingPass());
printAndVerify(PM, "After DebugLabelFolding");
- if (addPreEmitPass(PM, OptLevel))
- printAndVerify(PM, "After PreEmit passes");
-
- if (OptLevel != CodeGenOpt::None) {
+ if (OptLevel != CodeGenOpt::None && !DisableCodePlace) {
PM.add(createCodePlacementOptPass());
printAndVerify(PM, "After CodePlacementOpt");
}
+ if (addPreEmitPass(PM, OptLevel))
+ printAndVerify(PM, "After PreEmit passes");
+
return false;
}
Modified: projects/clangbsd/contrib/llvm/lib/CodeGen/MachineLICM.cpp
==============================================================================
--- projects/clangbsd/contrib/llvm/lib/CodeGen/MachineLICM.cpp Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/lib/CodeGen/MachineLICM.cpp Thu Nov 5 17:22:12 2009 (r198955)
@@ -111,6 +111,13 @@ namespace {
/// be hoistable.
MachineInstr *ExtractHoistableLoad(MachineInstr *MI);
+ /// EliminateCSE - Given a LICM'ed instruction, look for an instruction on
+ /// the preheader that compute the same value. If it's found, do a RAU on
+ /// with the definition of the existing instruction rather than hoisting
+ /// the instruction to the preheader.
+ bool EliminateCSE(MachineInstr *MI,
+ DenseMap >::iterator &CI);
+
/// Hoist - When an instruction is found to only use loop invariant operands
/// that is safe to hoist, this instruction is called to do the dirty work.
///
@@ -349,37 +356,6 @@ bool MachineLICM::IsProfitableToHoist(Ma
return true;
}
-static const MachineInstr *LookForDuplicate(const MachineInstr *MI,
- std::vector &PrevMIs,
- MachineRegisterInfo *RegInfo) {
- unsigned NumOps = MI->getNumOperands();
- for (unsigned i = 0, e = PrevMIs.size(); i != e; ++i) {
- const MachineInstr *PrevMI = PrevMIs[i];
- unsigned NumOps2 = PrevMI->getNumOperands();
- if (NumOps != NumOps2)
- continue;
- bool IsSame = true;
- for (unsigned j = 0; j != NumOps; ++j) {
- const MachineOperand &MO = MI->getOperand(j);
- if (MO.isReg() && MO.isDef()) {
- if (RegInfo->getRegClass(MO.getReg()) !=
- RegInfo->getRegClass(PrevMI->getOperand(j).getReg())) {
- IsSame = false;
- break;
- }
- continue;
- }
- if (!MO.isIdenticalTo(PrevMI->getOperand(j))) {
- IsSame = false;
- break;
- }
- }
- if (IsSame)
- return PrevMI;
- }
- return 0;
-}
-
MachineInstr *MachineLICM::ExtractHoistableLoad(MachineInstr *MI) {
// If not, we may be able to unfold a load and hoist that.
// First test whether the instruction is loading from an amenable
@@ -456,6 +432,55 @@ void MachineLICM::InitCSEMap(MachineBasi
}
}
+static const MachineInstr *LookForDuplicate(const MachineInstr *MI,
+ std::vector &PrevMIs,
+ MachineRegisterInfo *RegInfo) {
+ unsigned NumOps = MI->getNumOperands();
+ for (unsigned i = 0, e = PrevMIs.size(); i != e; ++i) {
+ const MachineInstr *PrevMI = PrevMIs[i];
+ unsigned NumOps2 = PrevMI->getNumOperands();
+ if (NumOps != NumOps2)
+ continue;
+ bool IsSame = true;
+ for (unsigned j = 0; j != NumOps; ++j) {
+ const MachineOperand &MO = MI->getOperand(j);
+ if (MO.isReg() && MO.isDef()) {
+ if (RegInfo->getRegClass(MO.getReg()) !=
+ RegInfo->getRegClass(PrevMI->getOperand(j).getReg())) {
+ IsSame = false;
+ break;
+ }
+ continue;
+ }
+ if (!MO.isIdenticalTo(PrevMI->getOperand(j))) {
+ IsSame = false;
+ break;
+ }
+ }
+ if (IsSame)
+ return PrevMI;
+ }
+ return 0;
+}
+
+bool MachineLICM::EliminateCSE(MachineInstr *MI,
+ DenseMap >::iterator &CI) {
+ if (CI != CSEMap.end()) {
+ if (const MachineInstr *Dup = LookForDuplicate(MI, CI->second, RegInfo)) {
+ DEBUG(errs() << "CSEing " << *MI << " with " << *Dup);
+ for (unsigned i = 0, e = MI->getNumOperands(); i != e; ++i) {
+ const MachineOperand &MO = MI->getOperand(i);
+ if (MO.isReg() && MO.isDef())
+ RegInfo->replaceRegWith(MO.getReg(), Dup->getOperand(i).getReg());
+ }
+ MI->eraseFromParent();
+ ++NumCSEed;
+ return true;
+ }
+ }
+ return false;
+}
+
/// Hoist - When an instruction is found to use only loop invariant operands
/// that are safe to hoist, this instruction is called to do the dirty work.
///
@@ -488,24 +513,8 @@ void MachineLICM::Hoist(MachineInstr *MI
unsigned Opcode = MI->getOpcode();
DenseMap >::iterator
CI = CSEMap.find(Opcode);
- bool DoneCSE = false;
- if (CI != CSEMap.end()) {
- const MachineInstr *Dup = LookForDuplicate(MI, CI->second, RegInfo);
- if (Dup) {
- DEBUG(errs() << "CSEing " << *MI << " with " << *Dup);
- for (unsigned i = 0, e = MI->getNumOperands(); i != e; ++i) {
- const MachineOperand &MO = MI->getOperand(i);
- if (MO.isReg() && MO.isDef())
- RegInfo->replaceRegWith(MO.getReg(), Dup->getOperand(i).getReg());
- }
- MI->eraseFromParent();
- DoneCSE = true;
- ++NumCSEed;
- }
- }
-
- // Otherwise, splice the instruction to the preheader.
- if (!DoneCSE) {
+ if (!EliminateCSE(MI, CI)) {
+ // Otherwise, splice the instruction to the preheader.
CurPreheader->splice(CurPreheader->getFirstTerminator(),MI->getParent(),MI);
// Add to the CSE map.
Modified: projects/clangbsd/contrib/llvm/lib/CodeGen/PostRASchedulerList.cpp
==============================================================================
--- projects/clangbsd/contrib/llvm/lib/CodeGen/PostRASchedulerList.cpp Thu Nov 5 17:18:09 2009 (r198954)
+++ projects/clangbsd/contrib/llvm/lib/CodeGen/PostRASchedulerList.cpp Thu Nov 5 17:22:12 2009 (r198955)
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
From owner-svn-src-projects@FreeBSD.ORG Thu Nov 5 18:14:27 2009
Return-Path:
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id 93780106566C;
Thu, 5 Nov 2009 18:14:25 +0000 (UTC) (envelope-from rrs@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c])
by mx1.freebsd.org (Postfix) with ESMTP id 815188FC13;
Thu, 5 Nov 2009 18:14:25 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id nA5IEP1N086431;
Thu, 5 Nov 2009 18:14:25 GMT (envelope-from rrs@svn.freebsd.org)
Received: (from rrs@localhost)
by svn.freebsd.org (8.14.3/8.14.3/Submit) id nA5IEPeT086420;
Thu, 5 Nov 2009 18:14:25 GMT (envelope-from rrs@svn.freebsd.org)
Message-Id: <200911051814.nA5IEPeT086420@svn.freebsd.org>
From: Randall Stewart
Date: Thu, 5 Nov 2009 18:14:25 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc:
Subject: svn commit: r198956 - projects/mips/sys/mips/rmi
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "SVN commit messages for the src " projects"
tree"
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Thu, 05 Nov 2009 18:14:27 -0000
Author: rrs
Date: Thu Nov 5 18:14:25 2009
New Revision: 198956
URL: http://svn.freebsd.org/changeset/base/198956
Log:
ok we now get so that the uart init's and we can print. We
cannot set baud rate as they did in 6.4, this hoses things and
we loose our 38400 default term.
We now lock somewhere in tcinit.
Added:
projects/mips/sys/mips/rmi/bus_space_rmi.c
Modified:
projects/mips/sys/mips/rmi/clock.c
projects/mips/sys/mips/rmi/clock.h
projects/mips/sys/mips/rmi/files.xlr
projects/mips/sys/mips/rmi/iodi.c
projects/mips/sys/mips/rmi/iomap.h
projects/mips/sys/mips/rmi/msgring.h
projects/mips/sys/mips/rmi/on_chip.c
projects/mips/sys/mips/rmi/pcibus.c
projects/mips/sys/mips/rmi/pic.h
projects/mips/sys/mips/rmi/uart_bus_xlr_iodi.c
projects/mips/sys/mips/rmi/uart_cpu_mips_xlr.c
projects/mips/sys/mips/rmi/xlr_machdep.c
Added: projects/mips/sys/mips/rmi/bus_space_rmi.c
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ projects/mips/sys/mips/rmi/bus_space_rmi.c Thu Nov 5 18:14:25 2009 (r198956)
@@ -0,0 +1,795 @@
+/*-
+ * Copyright (c) 2009 RMI Corporation
+ * 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$
+ */
+#include
+__FBSDID("$FreeBSD$");
+
+#include
+#include
+#include
+#include
+#include
+#include
+
+#include
+#include
+#include
+#include
+
+#include
+#include
+void xlr_putc(char);
+void xlr_print_int(uint32_t);
+
+static int rmi_bus_space_map(void *t, bus_addr_t addr,
+ bus_size_t size, int flags,
+ bus_space_handle_t *bshp);
+
+
+static void rmi_bus_space_unmap(void *t, bus_space_handle_t bsh,
+ bus_size_t size);
+
+static int rmi_bus_space_subregion(void *t,
+ bus_space_handle_t bsh,
+ bus_size_t offset, bus_size_t size,
+ bus_space_handle_t *nbshp);
+
+static u_int8_t rmi_bus_space_read_1(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset);
+
+static u_int16_t rmi_bus_space_read_2(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset);
+
+static u_int32_t rmi_bus_space_read_4(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset);
+
+static void rmi_bus_space_read_multi_1(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset, u_int8_t *addr,
+ size_t count);
+
+static void rmi_bus_space_read_multi_2(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset, u_int16_t *addr,
+ size_t count);
+
+static void rmi_bus_space_read_multi_4(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset, u_int32_t *addr,
+ size_t count);
+
+static void rmi_bus_space_read_region_1(void *t,
+ bus_space_handle_t bsh,
+ bus_size_t offset, u_int8_t *addr,
+ size_t count);
+
+static void rmi_bus_space_read_region_2(void *t,
+ bus_space_handle_t bsh,
+ bus_size_t offset, u_int16_t *addr,
+ size_t count);
+
+static void rmi_bus_space_read_region_4(void *t,
+ bus_space_handle_t bsh,
+ bus_size_t offset, u_int32_t *addr,
+ size_t count);
+
+static void rmi_bus_space_write_1(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset, u_int8_t value);
+
+static void rmi_bus_space_write_2(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset, u_int16_t value);
+
+static void rmi_bus_space_write_4(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset, u_int32_t value);
+
+static void rmi_bus_space_write_multi_1(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset,
+ const u_int8_t *addr,
+ size_t count);
+static void rmi_bus_space_write_multi_2(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset,
+ const u_int16_t *addr,
+ size_t count);
+
+static void rmi_bus_space_write_multi_4(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset,
+ const u_int32_t *addr,
+ size_t count);
+
+static void rmi_bus_space_write_region_2(void *t,
+ bus_space_handle_t bsh,
+ bus_size_t offset,
+ const u_int16_t *addr,
+ size_t count);
+
+static void rmi_bus_space_write_region_4(void *t,
+ bus_space_handle_t bsh,
+ bus_size_t offset,
+ const u_int32_t *addr,
+ size_t count);
+
+
+static void rmi_bus_space_set_region_2(void *t,
+ bus_space_handle_t bsh,
+ bus_size_t offset, u_int16_t value,
+ size_t count);
+static void rmi_bus_space_set_region_4(void *t,
+ bus_space_handle_t bsh,
+ bus_size_t offset, u_int32_t value,
+ size_t count);
+
+static void rmi_bus_space_barrier(void *tag __unused, bus_space_handle_t bsh __unused,
+ bus_size_t offset __unused, bus_size_t len __unused, int flags);
+
+
+static void rmi_bus_space_copy_region_2(void *t,
+ bus_space_handle_t bsh1,
+ bus_size_t off1,
+ bus_space_handle_t bsh2,
+ bus_size_t off2, size_t count);
+
+u_int8_t rmi_bus_space_read_stream_1(void *t, bus_space_handle_t handle,
+ bus_size_t offset);
+
+static u_int16_t rmi_bus_space_read_stream_2(void *t, bus_space_handle_t handle,
+ bus_size_t offset);
+
+static u_int32_t rmi_bus_space_read_stream_4(void *t, bus_space_handle_t handle,
+ bus_size_t offset);
+static void rmi_bus_space_read_multi_stream_1(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset, u_int8_t *addr,
+ size_t count);
+
+static void rmi_bus_space_read_multi_stream_2(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset, u_int16_t *addr,
+ size_t count);
+
+static void rmi_bus_space_read_multi_stream_4(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset, u_int32_t *addr,
+ size_t count);
+
+void rmi_bus_space_write_stream_1(void *t, bus_space_handle_t bsh,
+ bus_size_t offset, u_int8_t value);
+static void rmi_bus_space_write_stream_2(void *t, bus_space_handle_t handle,
+ bus_size_t offset, u_int16_t value);
+
+static void rmi_bus_space_write_stream_4(void *t, bus_space_handle_t handle,
+ bus_size_t offset, u_int32_t value);
+
+static void rmi_bus_space_write_multi_stream_1(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset,
+ const u_int8_t *addr,
+ size_t count);
+static void rmi_bus_space_write_multi_stream_2(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset,
+ const u_int16_t *addr,
+ size_t count);
+
+static void rmi_bus_space_write_multi_stream_4(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset,
+ const u_int32_t *addr,
+ size_t count);
+
+
+static struct bus_space local_rmi_bus_space = {
+ /* cookie */
+ (void *) 0,
+
+ /* mapping/unmapping */
+ rmi_bus_space_map,
+ rmi_bus_space_unmap,
+ rmi_bus_space_subregion,
+
+ /* allocation/deallocation */
+ NULL,
+ NULL,
+
+ /* barrier */
+ rmi_bus_space_barrier,
+
+ /* read (single) */
+ rmi_bus_space_read_1,
+ rmi_bus_space_read_2,
+ rmi_bus_space_read_4,
+ NULL,
+
+ /* read multiple */
+ rmi_bus_space_read_multi_1,
+ rmi_bus_space_read_multi_2,
+ rmi_bus_space_read_multi_4,
+ NULL,
+
+ /* read region */
+ rmi_bus_space_read_region_1,
+ rmi_bus_space_read_region_2,
+ rmi_bus_space_read_region_4,
+ NULL,
+
+ /* write (single) */
+ rmi_bus_space_write_1,
+ rmi_bus_space_write_2,
+ rmi_bus_space_write_4,
+ NULL,
+
+ /* write multiple */
+ rmi_bus_space_write_multi_1,
+ rmi_bus_space_write_multi_2,
+ rmi_bus_space_write_multi_4,
+ NULL,
+
+ /* write region */
+ NULL,
+ rmi_bus_space_write_region_2,
+ rmi_bus_space_write_region_4,
+ NULL,
+
+ /* set multiple */
+ NULL,
+ NULL,
+ NULL,
+ NULL,
+
+ /* set region */
+ NULL,
+ rmi_bus_space_set_region_2,
+ rmi_bus_space_set_region_4,
+ NULL,
+
+ /* copy */
+ NULL,
+ rmi_bus_space_copy_region_2,
+ NULL,
+ NULL,
+
+ /* read (single) stream */
+ rmi_bus_space_read_stream_1,
+ rmi_bus_space_read_stream_2,
+ rmi_bus_space_read_stream_4,
+ NULL,
+
+ /* read multiple stream */
+ rmi_bus_space_read_multi_stream_1,
+ rmi_bus_space_read_multi_stream_2,
+ rmi_bus_space_read_multi_stream_4,
+ NULL,
+
+ /* read region stream */
+ rmi_bus_space_read_region_1,
+ rmi_bus_space_read_region_2,
+ rmi_bus_space_read_region_4,
+ NULL,
+
+ /* write (single) stream */
+ rmi_bus_space_write_stream_1,
+ rmi_bus_space_write_stream_2,
+ rmi_bus_space_write_stream_4,
+ NULL,
+
+ /* write multiple stream */
+ rmi_bus_space_write_multi_stream_1,
+ rmi_bus_space_write_multi_stream_2,
+ rmi_bus_space_write_multi_stream_4,
+ NULL,
+
+ /* write region stream */
+ NULL,
+ rmi_bus_space_write_region_2,
+ rmi_bus_space_write_region_4,
+ NULL,
+};
+
+/* generic bus_space tag */
+bus_space_tag_t rmi_bus_space = &local_rmi_bus_space;
+
+#define MIPS_BUS_SPACE_IO 0 /* space is i/o space */
+#define MIPS_BUS_SPACE_MEM 1 /* space is mem space */
+#define MIPS_BUS_SPACE_PCI 10 /* avoid conflict with other spaces */
+
+#define BUS_SPACE_UNRESTRICTED (~0)
+
+#define SWAP32(x)\
+ (((x) & 0xff000000) >> 24) | \
+ (((x) & 0x000000ff) << 24) | \
+ (((x) & 0x0000ff00) << 8) | \
+ (((x) & 0x00ff0000) >> 8)
+
+#define SWAP16(x)\
+ (((x) & 0xff00) >> 8) | \
+ (((x) & 0x00ff) << 8)
+
+/*
+ * Map a region of device bus space into CPU virtual address space.
+ */
+
+
+static int
+rmi_bus_space_map(void *t __unused, bus_addr_t addr,
+ bus_size_t size __unused, int flags __unused,
+ bus_space_handle_t *bshp)
+{
+
+ *bshp = addr;
+ return (0);
+}
+
+/*
+ * Unmap a region of device bus space.
+ */
+static void
+rmi_bus_space_unmap(void *t __unused, bus_space_handle_t bsh __unused,
+ bus_size_t size __unused)
+{
+}
+
+/*
+ * Get a new handle for a subregion of an already-mapped area of bus space.
+ */
+
+static int
+rmi_bus_space_subregion(void *t __unused, bus_space_handle_t bsh,
+ bus_size_t offset, bus_size_t size __unused,
+ bus_space_handle_t *nbshp)
+{
+ *nbshp = bsh + offset;
+ return (0);
+}
+
+/*
+ * Read a 1, 2, 4, or 8 byte quantity from bus space
+ * described by tag/handle/offset.
+ */
+
+static u_int8_t
+rmi_bus_space_read_1(void *tag, bus_space_handle_t handle,
+ bus_size_t offset)
+{
+ if ((int)tag == MIPS_BUS_SPACE_PCI)
+ return (u_int8_t)(*(volatile u_int8_t *)(handle + offset));
+ else
+ return (u_int8_t)(*(volatile u_int32_t *)(handle + offset));
+}
+
+static u_int16_t
+rmi_bus_space_read_2(void *tag, bus_space_handle_t handle,
+ bus_size_t offset)
+{
+ if ((int)tag == MIPS_BUS_SPACE_PCI)
+ return SWAP16((u_int16_t)(*(volatile u_int16_t *)(handle + offset)));
+ else
+ return *(volatile u_int16_t *)(handle + offset);
+}
+
+static u_int32_t
+rmi_bus_space_read_4(void *tag, bus_space_handle_t handle,
+ bus_size_t offset)
+{
+ if ((int)tag == MIPS_BUS_SPACE_PCI)
+ return SWAP32((*(volatile u_int32_t *)(handle + offset)));
+ else
+ return (*(volatile u_int32_t *)(handle + offset));
+}
+
+
+
+/*
+ * Read `count' 1, 2, 4, or 8 byte quantities from bus space
+ * described by tag/handle/offset and copy into buffer provided.
+ */
+static void
+rmi_bus_space_read_multi_1(void *tag, bus_space_handle_t handle,
+ bus_size_t offset, u_int8_t *addr, size_t count)
+{
+
+ if ((int)tag != MIPS_BUS_SPACE_PCI)
+ return;
+ while (count--) {
+ *addr = (*(volatile u_int8_t *)(handle + offset));
+ addr++;
+ }
+}
+
+static void
+rmi_bus_space_read_multi_2(void *tag, bus_space_handle_t handle,
+ bus_size_t offset, u_int16_t *addr, size_t count)
+{
+
+ if ((int)tag != MIPS_BUS_SPACE_PCI)
+ return;
+ while (count--) {
+ *addr = *(volatile u_int16_t *)(handle + offset);
+ *addr = SWAP16(*addr);
+ addr++;
+ }
+}
+
+static void
+rmi_bus_space_read_multi_4(void *tag, bus_space_handle_t handle,
+ bus_size_t offset, u_int32_t *addr, size_t count)
+{
+
+ if ((int)tag != MIPS_BUS_SPACE_PCI)
+ return;
+ while (count--) {
+ *addr = *(volatile u_int32_t *)(handle + offset);
+ *addr = SWAP32(*addr);
+ addr++;
+ }
+}
+
+/*
+ * Write the 1, 2, 4, or 8 byte value `value' to bus space
+ * described by tag/handle/offset.
+ */
+
+
+static void
+rmi_bus_space_write_1(void *tag, bus_space_handle_t handle,
+ bus_size_t offset, u_int8_t value)
+{
+ mips_sync();
+ if ((int)tag == MIPS_BUS_SPACE_PCI)
+ *(volatile u_int8_t *)(handle + offset) = value;
+ else
+ *(volatile u_int32_t *)(handle + offset) = (u_int32_t)value;
+}
+
+static void
+rmi_bus_space_write_2(void *tag, bus_space_handle_t handle,
+ bus_size_t offset, u_int16_t value)
+{
+ mips_sync();
+ if ((int)tag == MIPS_BUS_SPACE_PCI) {
+ *(volatile u_int16_t *)(handle + offset) = SWAP16(value);
+ } else
+ *(volatile u_int16_t *)(handle + offset) = value;
+}
+
+
+static void
+rmi_bus_space_write_4(void *tag, bus_space_handle_t handle,
+ bus_size_t offset, u_int32_t value)
+{
+ mips_sync();
+ if ((int)tag == MIPS_BUS_SPACE_PCI) {
+ *(volatile u_int32_t *)(handle + offset) = SWAP32(value);
+ } else
+ *(volatile u_int32_t *)(handle + offset) = value;
+}
+
+
+
+/*
+ * Write `count' 1, 2, 4, or 8 byte quantities from the buffer
+ * provided to bus space described by tag/handle/offset.
+ */
+
+
+static void
+rmi_bus_space_write_multi_1(void *tag, bus_space_handle_t handle,
+ bus_size_t offset, const u_int8_t *addr, size_t count)
+{
+ mips_sync();
+ if ((int)tag != MIPS_BUS_SPACE_PCI)
+ return;
+ while (count--) {
+ (*(volatile u_int8_t *)(handle + offset)) = *addr;
+ addr++;
+ }
+}
+
+static void
+rmi_bus_space_write_multi_2(void *tag, bus_space_handle_t handle,
+ bus_size_t offset, const u_int16_t *addr, size_t count)
+{
+ mips_sync();
+ if ((int)tag != MIPS_BUS_SPACE_PCI)
+ return;
+ while (count--) {
+ (*(volatile u_int16_t *)(handle + offset)) = SWAP16(*addr);
+ addr++;
+ }
+}
+
+static void
+rmi_bus_space_write_multi_4(void *tag, bus_space_handle_t handle,
+ bus_size_t offset, const u_int32_t *addr, size_t count)
+{
+ mips_sync();
+ if ((int)tag != MIPS_BUS_SPACE_PCI)
+ return;
+ while (count--) {
+ (*(volatile u_int32_t *)(handle + offset)) = SWAP32(*addr);
+ addr++;
+ }
+}
+
+/*
+ * Write `count' 1, 2, 4, or 8 byte value `val' to bus space described
+ * by tag/handle starting at `offset'.
+ */
+
+static void
+rmi_bus_space_set_region_2(void *t, bus_space_handle_t bsh,
+ bus_size_t offset, u_int16_t value, size_t count)
+{
+ bus_addr_t addr = bsh + offset;
+
+ for (; count != 0; count--, addr += 2)
+ (*(volatile u_int16_t *)(addr)) = value;
+}
+
+static void
+rmi_bus_space_set_region_4(void *t, bus_space_handle_t bsh,
+ bus_size_t offset, u_int32_t value, size_t count)
+{
+ bus_addr_t addr = bsh + offset;
+
+ for (; count != 0; count--, addr += 4)
+ (*(volatile u_int32_t *)(addr)) = value;
+}
+
+
+/*
+ * Copy `count' 1, 2, 4, or 8 byte values from bus space starting
+ * at tag/bsh1/off1 to bus space starting at tag/bsh2/off2.
+ */
+static void
+rmi_bus_space_copy_region_2(void *t, bus_space_handle_t bsh1,
+ bus_size_t off1, bus_space_handle_t bsh2,
+ bus_size_t off2, size_t count)
+{
+ printf("bus_space_copy_region_2 - unimplemented\n");
+}
+
+/*
+ * Read `count' 1, 2, 4, or 8 byte quantities from bus space
+ * described by tag/handle/offset and copy into buffer provided.
+ */
+
+u_int8_t
+rmi_bus_space_read_stream_1(void *t, bus_space_handle_t handle,
+ bus_size_t offset)
+{
+
+ return *((volatile u_int8_t *)(handle + offset));
+}
+
+
+static u_int16_t
+rmi_bus_space_read_stream_2(void *t, bus_space_handle_t handle,
+ bus_size_t offset)
+{
+ return *(volatile u_int16_t *)(handle + offset);
+}
+
+
+static u_int32_t
+rmi_bus_space_read_stream_4(void *t, bus_space_handle_t handle,
+ bus_size_t offset)
+{
+ return (*(volatile u_int32_t *)(handle + offset));
+}
+
+
+static void
+rmi_bus_space_read_multi_stream_1(void *tag, bus_space_handle_t handle,
+ bus_size_t offset, u_int8_t *addr, size_t count)
+{
+
+ if ((int)tag != MIPS_BUS_SPACE_PCI)
+ return;
+ while (count--) {
+ *addr = (*(volatile u_int8_t *)(handle + offset));
+ addr++;
+ }
+}
+
+static void
+rmi_bus_space_read_multi_stream_2(void *tag, bus_space_handle_t handle,
+ bus_size_t offset, u_int16_t *addr, size_t count)
+{
+
+ if ((int)tag != MIPS_BUS_SPACE_PCI)
+ return;
+ while (count--) {
+ *addr = (*(volatile u_int16_t *)(handle + offset));
+ addr++;
+ }
+}
+
+static void
+rmi_bus_space_read_multi_stream_4(void *tag, bus_space_handle_t handle,
+ bus_size_t offset, u_int32_t *addr, size_t count)
+{
+
+ if ((int)tag != MIPS_BUS_SPACE_PCI)
+ return;
+ while (count--) {
+ *addr = (*(volatile u_int32_t *)(handle + offset));
+ addr++;
+ }
+}
+
+
+
+/*
+ * Read `count' 1, 2, 4, or 8 byte quantities from bus space
+ * described by tag/handle and starting at `offset' and copy into
+ * buffer provided.
+ */
+void
+rmi_bus_space_read_region_1(void *t, bus_space_handle_t bsh,
+ bus_size_t offset, u_int8_t *addr, size_t count)
+{
+ bus_addr_t baddr = bsh + offset;
+
+ while (count--) {
+ *addr++ = (*(volatile u_int8_t *)(baddr));
+ baddr += 1;
+ }
+}
+
+void
+rmi_bus_space_read_region_2(void *t, bus_space_handle_t bsh,
+ bus_size_t offset, u_int16_t *addr, size_t count)
+{
+ bus_addr_t baddr = bsh + offset;
+
+ while (count--) {
+ *addr++ = (*(volatile u_int16_t *)(baddr));
+ baddr += 2;
+ }
+}
+
+void
+rmi_bus_space_read_region_4(void *t, bus_space_handle_t bsh,
+ bus_size_t offset, u_int32_t *addr, size_t count)
+{
+ bus_addr_t baddr = bsh + offset;
+
+ while (count--) {
+ *addr++ = (*(volatile u_int32_t *)(baddr));
+ baddr += 4;
+ }
+}
+
+
+void
+rmi_bus_space_write_stream_1(void *t, bus_space_handle_t handle,
+ bus_size_t offset, u_int8_t value)
+{
+ mips_sync();
+ *(volatile u_int8_t *)(handle + offset) = value;
+}
+
+
+static void
+rmi_bus_space_write_stream_2(void *t, bus_space_handle_t handle,
+ bus_size_t offset, u_int16_t value)
+{
+ mips_sync();
+ *(volatile u_int16_t *)(handle + offset) = value;
+}
+
+
+static void
+rmi_bus_space_write_stream_4(void *t, bus_space_handle_t handle,
+ bus_size_t offset, u_int32_t value)
+{
+ mips_sync();
+ *(volatile u_int32_t *)(handle + offset) = value;
+}
+
+
+static void
+rmi_bus_space_write_multi_stream_1(void *tag, bus_space_handle_t handle,
+ bus_size_t offset, const u_int8_t *addr, size_t count)
+{
+ mips_sync();
+ if ((int)tag != MIPS_BUS_SPACE_PCI)
+ return;
+ while (count--) {
+ (*(volatile u_int8_t *)(handle + offset)) = *addr;
+ addr++;
+ }
+}
+
+static void
+rmi_bus_space_write_multi_stream_2(void *tag, bus_space_handle_t handle,
+ bus_size_t offset, const u_int16_t *addr, size_t count)
+{
+ mips_sync();
+ if ((int)tag != MIPS_BUS_SPACE_PCI)
+ return;
+ while (count--) {
+ (*(volatile u_int16_t *)(handle + offset)) = *addr;
+ addr++;
+ }
+}
+
+static void
+rmi_bus_space_write_multi_stream_4(void *tag, bus_space_handle_t handle,
+ bus_size_t offset, const u_int32_t *addr, size_t count)
+{
+ mips_sync();
+ if ((int)tag != MIPS_BUS_SPACE_PCI)
+ return;
+ while (count--) {
+ (*(volatile u_int32_t *)(handle + offset)) = *addr;
+ addr++;
+ }
+}
+
+void
+rmi_bus_space_write_region_2(void *t,
+ bus_space_handle_t bsh,
+ bus_size_t offset,
+ const u_int16_t *addr,
+ size_t count)
+{
+ bus_addr_t baddr = (bus_addr_t)bsh + offset;
+ while (count--) {
+ (*(volatile u_int16_t *)(baddr)) = *addr;
+ addr++;
+ baddr += 2;
+ }
+}
+
+void
+rmi_bus_space_write_region_4(void *t, bus_space_handle_t bsh,
+ bus_size_t offset, const u_int32_t *addr, size_t count)
+{
+ bus_addr_t baddr = bsh + offset;
+
+ while (count--) {
+ (*(volatile u_int32_t *)(baddr)) = *addr;
+ addr++;
+ baddr += 4;
+ }
+}
+
+static void
+rmi_bus_space_barrier(void *tag __unused, bus_space_handle_t bsh __unused,
+ bus_size_t offset __unused, bus_size_t len __unused, int flags)
+{
+
+}
Modified: projects/mips/sys/mips/rmi/clock.c
==============================================================================
--- projects/mips/sys/mips/rmi/clock.c Thu Nov 5 17:22:12 2009 (r198955)
+++ projects/mips/sys/mips/rmi/clock.c Thu Nov 5 18:14:25 2009 (r198956)
@@ -163,6 +163,24 @@ pic_timecounthandler(struct trapframe *t
}
void
+rmi_early_counter_init()
+{
+ int cpu = PCPU_GET(cpuid);
+ xlr_reg_t *mmio = xlr_io_mmio(XLR_IO_PIC_OFFSET);
+
+ /* We do this to get the PIC time counter running right
+ * after system start. Otherwise the DELAY() function will
+ * not be able to work since it won't have a TC to read.
+ */
+ xlr_write_reg(mmio, PIC_TIMER_6_MAXVAL_0, (0xffffffff & 0xffffffff));
+ xlr_write_reg(mmio, PIC_TIMER_6_MAXVAL_1, (0xffffffff & 0xffffffff));
+ xlr_write_reg(mmio, PIC_IRT_0_TIMER_6, (1 << cpu));
+ xlr_write_reg(mmio, PIC_IRT_1_TIMER_6, (1 << 31) | (0 << 30) | (1 << 6) | (PIC_TIMER_6_IRQ));
+ pic_update_control(1 << (8 + 6));
+}
+
+
+void
platform_initclocks(void)
{
int cpu = PCPU_GET(cpuid);
@@ -204,7 +222,8 @@ platform_initclocks(void)
/* Setup PIC Interrupt */
- mtx_lock_spin(&xlr_pic_lock);
+ if (rmi_spin_mutex_safe)
+ mtx_lock_spin(&xlr_pic_lock);
xlr_write_reg(mmio, PIC_TIMER_7_MAXVAL_0, (maxval & 0xffffffff)); /* 0x100 + 7 */
xlr_write_reg(mmio, PIC_TIMER_7_MAXVAL_1, (maxval >> 32) & 0xffffffff); /* 0x110 + 7 */
/* 0x40 + 8 */
@@ -221,7 +240,8 @@ platform_initclocks(void)
xlr_write_reg(mmio, PIC_IRT_0_TIMER_6, (1 << cpu));
xlr_write_reg(mmio, PIC_IRT_1_TIMER_6, (1 << 31) | (0 << 30) | (1 << 6) | (PIC_TIMER_6_IRQ));
pic_update_control(1 << (8 + 6));
- mtx_unlock_spin(&xlr_pic_lock);
+ if (rmi_spin_mutex_safe)
+ mtx_unlock_spin(&xlr_pic_lock);
} else {
/* Setup count-compare interrupt for vcpu[1-31] */
mips_wr_compare((xlr_boot1_info.cpu_frequency) / hz);
Modified: projects/mips/sys/mips/rmi/clock.h
==============================================================================
--- projects/mips/sys/mips/rmi/clock.h Thu Nov 5 17:22:12 2009 (r198955)
+++ projects/mips/sys/mips/rmi/clock.h Thu Nov 5 18:14:25 2009 (r198956)
@@ -36,5 +36,5 @@
void count_compare_clockhandler(struct trapframe *);
void pic_hardclockhandler(struct trapframe *);
int pic_timecounthandler(struct trapframe *);
-
+void rmi_early_counter_init(void);
#endif /* _RMI_CLOCK_H_ */
Modified: projects/mips/sys/mips/rmi/files.xlr
==============================================================================
--- projects/mips/sys/mips/rmi/files.xlr Thu Nov 5 17:22:12 2009 (r198955)
+++ projects/mips/sys/mips/rmi/files.xlr Thu Nov 5 18:14:25 2009 (r198956)
@@ -18,6 +18,7 @@ mips/rmi/pcibus.c optional pci
mips/rmi/xlr_pci.c optional pci
#mips/rmi/xls_ehci.c optional usb ehci
dev/rmi/xlr/rge.c optional rge
+mips/rmi/bus_space_rmi.c standard
dev/iicbus/xlr_rtc.c optional xlr_rtc
dev/iicbus/xlr_temperature.c optional xlr_temperature
dev/iicbus/xlr_eeprom.c optional xlr_eeprom
Modified: projects/mips/sys/mips/rmi/iodi.c
==============================================================================
--- projects/mips/sys/mips/rmi/iodi.c Thu Nov 5 17:22:12 2009 (r198955)
+++ projects/mips/sys/mips/rmi/iodi.c Thu Nov 5 18:14:25 2009 (r198956)
@@ -99,6 +99,7 @@ static void pic_usb_ack(void *arg)
}
*/
+
static int
iodi_setup_intr(device_t dev, device_t child,
struct resource *ires, int flags, driver_filter_t * filt, driver_intr_t * intr, void *arg,
@@ -111,11 +112,13 @@ iodi_setup_intr(device_t dev, device_t c
/* FIXME is this the right place to fiddle with PIC? */
if (strcmp(device_get_name(child), "uart") == 0) {
/* FIXME uart 1? */
- mtx_lock_spin(&xlr_pic_lock);
+ if (rmi_spin_mutex_safe)
+ mtx_lock_spin(&xlr_pic_lock);
level = PIC_IRQ_IS_EDGE_TRIGGERED(PIC_IRT_UART_0_INDEX);
xlr_write_reg(mmio, PIC_IRT_0_UART_0, 0x01);
xlr_write_reg(mmio, PIC_IRT_1_UART_0, ((1 << 31) | (level << 30) | (1 << 6) | (PIC_UART_0_IRQ)));
- mtx_unlock_spin(&xlr_pic_lock);
+ if (rmi_spin_mutex_safe)
+ mtx_unlock_spin(&xlr_pic_lock);
cpu_establish_hardintr("uart", NULL,
(driver_intr_t *) intr, (void *)arg, PIC_UART_0_IRQ, flags, cookiep);
@@ -123,16 +126,20 @@ iodi_setup_intr(device_t dev, device_t c
int irq;
irq = rman_get_rid(ires);
- mtx_lock_spin(&xlr_pic_lock);
+ if (rmi_spin_mutex_safe)
+ mtx_lock_spin(&xlr_pic_lock);
reg = xlr_read_reg(mmio, PIC_IRT_1_BASE + irq - PIC_IRQ_BASE);
xlr_write_reg(mmio, PIC_IRT_1_BASE + irq - PIC_IRQ_BASE, reg | (1 << 6) | (1 << 30) | (1 << 31));
- mtx_unlock_spin(&xlr_pic_lock);
+ if (rmi_spin_mutex_safe)
+ mtx_unlock_spin(&xlr_pic_lock);
cpu_establish_hardintr("rge", NULL, (driver_intr_t *) intr, (void *)arg, irq, flags, cookiep);
} else if (strcmp(device_get_name(child), "ehci") == 0) {
+ if (rmi_spin_mutex_safe)
mtx_lock_spin(&xlr_pic_lock);
reg = xlr_read_reg(mmio, PIC_IRT_1_BASE + PIC_USB_IRQ - PIC_IRQ_BASE);
xlr_write_reg(mmio, PIC_IRT_1_BASE + PIC_USB_IRQ - PIC_IRQ_BASE, reg | (1 << 6) | (1 << 30) | (1 << 31));
+ if (rmi_spin_mutex_safe)
mtx_unlock_spin(&xlr_pic_lock);
cpu_establish_hardintr("ehci", NULL, (driver_intr_t *) intr, (void *)arg, PIC_USB_IRQ, flags, cookiep);
}
Modified: projects/mips/sys/mips/rmi/iomap.h
==============================================================================
--- projects/mips/sys/mips/rmi/iomap.h Thu Nov 5 17:22:12 2009 (r198955)
+++ projects/mips/sys/mips/rmi/iomap.h Thu Nov 5 18:14:25 2009 (r198956)
@@ -31,7 +31,7 @@
#define _RMI_IOMAP_H_
#include
-
+#define XLR_DEVICE_REGISTER_BASE 0x1EF00000
#define DEFAULT_XLR_IO_BASE 0xffffffffbef00000ULL
#define XLR_IO_SIZE 0x1000
@@ -65,6 +65,9 @@
#define XLR_IO_UART_0_OFFSET 0x14000
#define XLR_IO_UART_1_OFFSET 0x15000
+#define XLR_UART0ADDR (XLR_IO_UART_0_OFFSET+XLR_DEVICE_REGISTER_BASE)
+
+
#define XLR_IO_I2C_0_OFFSET 0x16000
#define XLR_IO_I2C_1_OFFSET 0x17000
Modified: projects/mips/sys/mips/rmi/msgring.h
==============================================================================
--- projects/mips/sys/mips/rmi/msgring.h Thu Nov 5 17:22:12 2009 (r198955)
+++ projects/mips/sys/mips/rmi/msgring.h Thu Nov 5 18:14:25 2009 (r198956)
@@ -469,14 +469,15 @@ extern struct stn_cc xls_cc_table_pcie;
extern struct stn_cc xls_cc_table_dma;
extern struct stn_cc xls_cc_table_sec;
+
#define msgrng_access_save(lock, mflags) do { \
- mtx_lock_spin(lock); \
+ if (rmi_spin_mutex_safe) mtx_lock_spin(lock); \
msgrng_flags_save(mflags); \
}while(0)
#define msgrng_access_restore(lock, mflags) do { \
msgrng_flags_restore(mflags); \
- mtx_unlock_spin(lock); \
+ if (rmi_spin_mutex_safe) mtx_unlock_spin(lock); \
}while(0)
#define msgrng_access_enable(mflags) do { \
Modified: projects/mips/sys/mips/rmi/on_chip.c
==============================================================================
--- projects/mips/sys/mips/rmi/on_chip.c Thu Nov 5 17:22:12 2009 (r198955)
+++ projects/mips/sys/mips/rmi/on_chip.c Thu Nov 5 18:14:25 2009 (r198956)
@@ -262,10 +262,12 @@ register_msgring_handler(int major,
//dbg_msg("major=%d, action=%p, dev_id=%p\n", major, action, dev_id);
- mtx_lock_spin(&msgrng_lock);
+ if (rmi_spin_mutex_safe)
+ mtx_lock_spin(&msgrng_lock);
tx_stn_handlers[major].action = action;
tx_stn_handlers[major].dev_id = dev_id;
- mtx_unlock_spin(&msgrng_lock);
+ if (rmi_spin_mutex_safe)
+ mtx_unlock_spin(&msgrng_lock);
if (xlr_test_and_set(&msgring_int_enabled)) {
platform_prep_smp_launch();
@@ -301,6 +303,7 @@ pic_init(void)
*/
xlr_write_reg(mmio, PIC_IRT_1_BASE + i, (level << 30) | (1 << 6) | (PIC_IRQ_BASE + i));
}
+ dbg_msg("PIC init now done\n");
}
void
Modified: projects/mips/sys/mips/rmi/pcibus.c
==============================================================================
--- projects/mips/sys/mips/rmi/pcibus.c Thu Nov 5 17:22:12 2009 (r198955)
+++ projects/mips/sys/mips/rmi/pcibus.c Thu Nov 5 18:14:25 2009 (r198956)
@@ -148,7 +148,6 @@ static void pic_pcie_ack(void *arg)
*/
-
int
mips_platform_pci_setup_intr(device_t dev, device_t child,
struct resource *irq, int flags,
@@ -174,21 +173,22 @@ mips_platform_pci_setup_intr(device_t de
return 0;
if (xlr_board_info.is_xls == 0) {
- mtx_lock_spin(&xlr_pic_lock);
+
+ if (rmi_spin_mutex_safe) mtx_lock_spin(&xlr_pic_lock);
level = PIC_IRQ_IS_EDGE_TRIGGERED(PIC_IRT_PCIX_INDEX);
xlr_write_reg(mmio, PIC_IRT_0_PCIX, 0x01);
xlr_write_reg(mmio, PIC_IRT_1_PCIX, ((1 << 31) | (level << 30) |
(1 << 6) | (PIC_PCIX_IRQ)));
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
From owner-svn-src-projects@FreeBSD.ORG Thu Nov 5 18:15:16 2009
Return-Path:
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id 7705A1065672;
Thu, 5 Nov 2009 18:15:16 +0000 (UTC) (envelope-from rrs@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c])
by mx1.freebsd.org (Postfix) with ESMTP id 658848FC19;
Thu, 5 Nov 2009 18:15:16 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id nA5IFGQY086500;
Thu, 5 Nov 2009 18:15:16 GMT (envelope-from rrs@svn.freebsd.org)
Received: (from rrs@localhost)
by svn.freebsd.org (8.14.3/8.14.3/Submit) id nA5IFGR0086498;
Thu, 5 Nov 2009 18:15:16 GMT (envelope-from rrs@svn.freebsd.org)
Message-Id: <200911051815.nA5IFGR0086498@svn.freebsd.org>
From: Randall Stewart
Date: Thu, 5 Nov 2009 18:15:16 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc:
Subject: svn commit: r198957 - projects/mips/sys/mips/rmi
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "SVN commit messages for the src " projects"
tree"
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Thu, 05 Nov 2009 18:15:16 -0000
Author: rrs
Date: Thu Nov 5 18:15:16 2009
New Revision: 198957
URL: http://svn.freebsd.org/changeset/base/198957
Log:
white space changes
Modified:
projects/mips/sys/mips/rmi/bus_space_rmi.c
Modified: projects/mips/sys/mips/rmi/bus_space_rmi.c
==============================================================================
--- projects/mips/sys/mips/rmi/bus_space_rmi.c Thu Nov 5 18:14:25 2009 (r198956)
+++ projects/mips/sys/mips/rmi/bus_space_rmi.c Thu Nov 5 18:15:16 2009 (r198957)
@@ -45,174 +45,210 @@ __FBSDID("$FreeBSD$");
void xlr_putc(char);
void xlr_print_int(uint32_t);
-static int rmi_bus_space_map(void *t, bus_addr_t addr,
- bus_size_t size, int flags,
- bus_space_handle_t *bshp);
-
-
-static void rmi_bus_space_unmap(void *t, bus_space_handle_t bsh,
- bus_size_t size);
-
-static int rmi_bus_space_subregion(void *t,
- bus_space_handle_t bsh,
- bus_size_t offset, bus_size_t size,
- bus_space_handle_t *nbshp);
-
-static u_int8_t rmi_bus_space_read_1(void *t,
- bus_space_handle_t handle,
- bus_size_t offset);
-
-static u_int16_t rmi_bus_space_read_2(void *t,
- bus_space_handle_t handle,
- bus_size_t offset);
-
-static u_int32_t rmi_bus_space_read_4(void *t,
- bus_space_handle_t handle,
- bus_size_t offset);
-
-static void rmi_bus_space_read_multi_1(void *t,
- bus_space_handle_t handle,
- bus_size_t offset, u_int8_t *addr,
- size_t count);
-
-static void rmi_bus_space_read_multi_2(void *t,
- bus_space_handle_t handle,
- bus_size_t offset, u_int16_t *addr,
- size_t count);
-
-static void rmi_bus_space_read_multi_4(void *t,
- bus_space_handle_t handle,
- bus_size_t offset, u_int32_t *addr,
- size_t count);
-
-static void rmi_bus_space_read_region_1(void *t,
- bus_space_handle_t bsh,
- bus_size_t offset, u_int8_t *addr,
- size_t count);
-
-static void rmi_bus_space_read_region_2(void *t,
- bus_space_handle_t bsh,
- bus_size_t offset, u_int16_t *addr,
- size_t count);
-
-static void rmi_bus_space_read_region_4(void *t,
- bus_space_handle_t bsh,
- bus_size_t offset, u_int32_t *addr,
- size_t count);
-
-static void rmi_bus_space_write_1(void *t,
- bus_space_handle_t handle,
- bus_size_t offset, u_int8_t value);
-
-static void rmi_bus_space_write_2(void *t,
- bus_space_handle_t handle,
- bus_size_t offset, u_int16_t value);
-
-static void rmi_bus_space_write_4(void *t,
- bus_space_handle_t handle,
- bus_size_t offset, u_int32_t value);
-
-static void rmi_bus_space_write_multi_1(void *t,
- bus_space_handle_t handle,
- bus_size_t offset,
- const u_int8_t *addr,
- size_t count);
-static void rmi_bus_space_write_multi_2(void *t,
- bus_space_handle_t handle,
- bus_size_t offset,
- const u_int16_t *addr,
- size_t count);
-
-static void rmi_bus_space_write_multi_4(void *t,
- bus_space_handle_t handle,
- bus_size_t offset,
- const u_int32_t *addr,
- size_t count);
-
-static void rmi_bus_space_write_region_2(void *t,
- bus_space_handle_t bsh,
- bus_size_t offset,
- const u_int16_t *addr,
- size_t count);
-
-static void rmi_bus_space_write_region_4(void *t,
- bus_space_handle_t bsh,
- bus_size_t offset,
- const u_int32_t *addr,
- size_t count);
-
-
-static void rmi_bus_space_set_region_2(void *t,
- bus_space_handle_t bsh,
- bus_size_t offset, u_int16_t value,
- size_t count);
-static void rmi_bus_space_set_region_4(void *t,
- bus_space_handle_t bsh,
- bus_size_t offset, u_int32_t value,
- size_t count);
-
-static void rmi_bus_space_barrier(void *tag __unused, bus_space_handle_t bsh __unused,
- bus_size_t offset __unused, bus_size_t len __unused, int flags);
-
-
-static void rmi_bus_space_copy_region_2(void *t,
- bus_space_handle_t bsh1,
- bus_size_t off1,
- bus_space_handle_t bsh2,
- bus_size_t off2, size_t count);
-
-u_int8_t rmi_bus_space_read_stream_1(void *t, bus_space_handle_t handle,
- bus_size_t offset);
-
-static u_int16_t rmi_bus_space_read_stream_2(void *t, bus_space_handle_t handle,
- bus_size_t offset);
-
-static u_int32_t rmi_bus_space_read_stream_4(void *t, bus_space_handle_t handle,
- bus_size_t offset);
-static void rmi_bus_space_read_multi_stream_1(void *t,
- bus_space_handle_t handle,
- bus_size_t offset, u_int8_t *addr,
- size_t count);
-
-static void rmi_bus_space_read_multi_stream_2(void *t,
- bus_space_handle_t handle,
- bus_size_t offset, u_int16_t *addr,
- size_t count);
-
-static void rmi_bus_space_read_multi_stream_4(void *t,
- bus_space_handle_t handle,
- bus_size_t offset, u_int32_t *addr,
- size_t count);
-
-void rmi_bus_space_write_stream_1(void *t, bus_space_handle_t bsh,
- bus_size_t offset, u_int8_t value);
-static void rmi_bus_space_write_stream_2(void *t, bus_space_handle_t handle,
- bus_size_t offset, u_int16_t value);
-
-static void rmi_bus_space_write_stream_4(void *t, bus_space_handle_t handle,
- bus_size_t offset, u_int32_t value);
-
-static void rmi_bus_space_write_multi_stream_1(void *t,
- bus_space_handle_t handle,
- bus_size_t offset,
- const u_int8_t *addr,
- size_t count);
-static void rmi_bus_space_write_multi_stream_2(void *t,
- bus_space_handle_t handle,
- bus_size_t offset,
- const u_int16_t *addr,
- size_t count);
-
-static void rmi_bus_space_write_multi_stream_4(void *t,
- bus_space_handle_t handle,
- bus_size_t offset,
- const u_int32_t *addr,
- size_t count);
+static int
+rmi_bus_space_map(void *t, bus_addr_t addr,
+ bus_size_t size, int flags,
+ bus_space_handle_t * bshp);
+
+
+static void
+rmi_bus_space_unmap(void *t, bus_space_handle_t bsh,
+ bus_size_t size);
+
+static int
+rmi_bus_space_subregion(void *t,
+ bus_space_handle_t bsh,
+ bus_size_t offset, bus_size_t size,
+ bus_space_handle_t * nbshp);
+
+static u_int8_t
+rmi_bus_space_read_1(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset);
+
+static u_int16_t
+rmi_bus_space_read_2(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset);
+
+static u_int32_t
+rmi_bus_space_read_4(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset);
+
+static void
+rmi_bus_space_read_multi_1(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset, u_int8_t * addr,
+ size_t count);
+
+static void
+rmi_bus_space_read_multi_2(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset, u_int16_t * addr,
+ size_t count);
+
+static void
+rmi_bus_space_read_multi_4(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset, u_int32_t * addr,
+ size_t count);
+
+static void
+rmi_bus_space_read_region_1(void *t,
+ bus_space_handle_t bsh,
+ bus_size_t offset, u_int8_t * addr,
+ size_t count);
+
+static void
+rmi_bus_space_read_region_2(void *t,
+ bus_space_handle_t bsh,
+ bus_size_t offset, u_int16_t * addr,
+ size_t count);
+
+static void
+rmi_bus_space_read_region_4(void *t,
+ bus_space_handle_t bsh,
+ bus_size_t offset, u_int32_t * addr,
+ size_t count);
+
+static void
+rmi_bus_space_write_1(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset, u_int8_t value);
+
+static void
+rmi_bus_space_write_2(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset, u_int16_t value);
+
+static void
+rmi_bus_space_write_4(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset, u_int32_t value);
+
+static void
+rmi_bus_space_write_multi_1(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset,
+ const u_int8_t * addr,
+ size_t count);
+static void
+rmi_bus_space_write_multi_2(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset,
+ const u_int16_t * addr,
+ size_t count);
+
+static void
+rmi_bus_space_write_multi_4(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset,
+ const u_int32_t * addr,
+ size_t count);
+
+static void
+rmi_bus_space_write_region_2(void *t,
+ bus_space_handle_t bsh,
+ bus_size_t offset,
+ const u_int16_t * addr,
+ size_t count);
+
+static void
+rmi_bus_space_write_region_4(void *t,
+ bus_space_handle_t bsh,
+ bus_size_t offset,
+ const u_int32_t * addr,
+ size_t count);
+
+
+static void
+rmi_bus_space_set_region_2(void *t,
+ bus_space_handle_t bsh,
+ bus_size_t offset, u_int16_t value,
+ size_t count);
+static void
+rmi_bus_space_set_region_4(void *t,
+ bus_space_handle_t bsh,
+ bus_size_t offset, u_int32_t value,
+ size_t count);
+
+static void
+rmi_bus_space_barrier(void *tag __unused, bus_space_handle_t bsh __unused,
+ bus_size_t offset __unused, bus_size_t len __unused, int flags);
+
+
+static void
+rmi_bus_space_copy_region_2(void *t,
+ bus_space_handle_t bsh1,
+ bus_size_t off1,
+ bus_space_handle_t bsh2,
+ bus_size_t off2, size_t count);
+
+u_int8_t
+rmi_bus_space_read_stream_1(void *t, bus_space_handle_t handle,
+ bus_size_t offset);
+
+static u_int16_t
+rmi_bus_space_read_stream_2(void *t, bus_space_handle_t handle,
+ bus_size_t offset);
+
+static u_int32_t
+rmi_bus_space_read_stream_4(void *t, bus_space_handle_t handle,
+ bus_size_t offset);
+static void
+rmi_bus_space_read_multi_stream_1(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset, u_int8_t * addr,
+ size_t count);
+
+static void
+rmi_bus_space_read_multi_stream_2(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset, u_int16_t * addr,
+ size_t count);
+
+static void
+rmi_bus_space_read_multi_stream_4(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset, u_int32_t * addr,
+ size_t count);
+
+void
+rmi_bus_space_write_stream_1(void *t, bus_space_handle_t bsh,
+ bus_size_t offset, u_int8_t value);
+static void
+rmi_bus_space_write_stream_2(void *t, bus_space_handle_t handle,
+ bus_size_t offset, u_int16_t value);
+
+static void
+rmi_bus_space_write_stream_4(void *t, bus_space_handle_t handle,
+ bus_size_t offset, u_int32_t value);
+
+static void
+rmi_bus_space_write_multi_stream_1(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset,
+ const u_int8_t * addr,
+ size_t count);
+static void
+rmi_bus_space_write_multi_stream_2(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset,
+ const u_int16_t * addr,
+ size_t count);
+
+static void
+rmi_bus_space_write_multi_stream_4(void *t,
+ bus_space_handle_t handle,
+ bus_size_t offset,
+ const u_int32_t * addr,
+ size_t count);
static struct bus_space local_rmi_bus_space = {
/* cookie */
- (void *) 0,
+ (void *)0,
/* mapping/unmapping */
rmi_bus_space_map,
@@ -224,7 +260,7 @@ static struct bus_space local_rmi_bus_sp
NULL,
/* barrier */
- rmi_bus_space_barrier,
+ rmi_bus_space_barrier,
/* read (single) */
rmi_bus_space_read_1,
@@ -322,7 +358,7 @@ bus_space_tag_t rmi_bus_space = &local_r
#define MIPS_BUS_SPACE_IO 0 /* space is i/o space */
#define MIPS_BUS_SPACE_MEM 1 /* space is mem space */
-#define MIPS_BUS_SPACE_PCI 10 /* avoid conflict with other spaces */
+#define MIPS_BUS_SPACE_PCI 10 /* avoid conflict with other spaces */
#define BUS_SPACE_UNRESTRICTED (~0)
@@ -334,7 +370,7 @@ bus_space_tag_t rmi_bus_space = &local_r
#define SWAP16(x)\
(((x) & 0xff00) >> 8) | \
- (((x) & 0x00ff) << 8)
+ (((x) & 0x00ff) << 8)
/*
* Map a region of device bus space into CPU virtual address space.
@@ -343,8 +379,8 @@ bus_space_tag_t rmi_bus_space = &local_r
static int
rmi_bus_space_map(void *t __unused, bus_addr_t addr,
- bus_size_t size __unused, int flags __unused,
- bus_space_handle_t *bshp)
+ bus_size_t size __unused, int flags __unused,
+ bus_space_handle_t * bshp)
{
*bshp = addr;
@@ -356,7 +392,7 @@ rmi_bus_space_map(void *t __unused, bus_
*/
static void
rmi_bus_space_unmap(void *t __unused, bus_space_handle_t bsh __unused,
- bus_size_t size __unused)
+ bus_size_t size __unused)
{
}
@@ -366,8 +402,8 @@ rmi_bus_space_unmap(void *t __unused, bu
static int
rmi_bus_space_subregion(void *t __unused, bus_space_handle_t bsh,
- bus_size_t offset, bus_size_t size __unused,
- bus_space_handle_t *nbshp)
+ bus_size_t offset, bus_size_t size __unused,
+ bus_space_handle_t * nbshp)
{
*nbshp = bsh + offset;
return (0);
@@ -380,31 +416,31 @@ rmi_bus_space_subregion(void *t __unused
static u_int8_t
rmi_bus_space_read_1(void *tag, bus_space_handle_t handle,
- bus_size_t offset)
+ bus_size_t offset)
{
if ((int)tag == MIPS_BUS_SPACE_PCI)
- return (u_int8_t)(*(volatile u_int8_t *)(handle + offset));
+ return (u_int8_t) (*(volatile u_int8_t *)(handle + offset));
else
- return (u_int8_t)(*(volatile u_int32_t *)(handle + offset));
+ return (u_int8_t) (*(volatile u_int32_t *)(handle + offset));
}
static u_int16_t
rmi_bus_space_read_2(void *tag, bus_space_handle_t handle,
- bus_size_t offset)
+ bus_size_t offset)
{
if ((int)tag == MIPS_BUS_SPACE_PCI)
- return SWAP16((u_int16_t)(*(volatile u_int16_t *)(handle + offset)));
+ return SWAP16((u_int16_t) (*(volatile u_int16_t *)(handle + offset)));
else
return *(volatile u_int16_t *)(handle + offset);
}
static u_int32_t
rmi_bus_space_read_4(void *tag, bus_space_handle_t handle,
- bus_size_t offset)
+ bus_size_t offset)
{
if ((int)tag == MIPS_BUS_SPACE_PCI)
return SWAP32((*(volatile u_int32_t *)(handle + offset)));
- else
+ else
return (*(volatile u_int32_t *)(handle + offset));
}
@@ -416,7 +452,7 @@ rmi_bus_space_read_4(void *tag, bus_spac
*/
static void
rmi_bus_space_read_multi_1(void *tag, bus_space_handle_t handle,
- bus_size_t offset, u_int8_t *addr, size_t count)
+ bus_size_t offset, u_int8_t * addr, size_t count)
{
if ((int)tag != MIPS_BUS_SPACE_PCI)
@@ -429,7 +465,7 @@ rmi_bus_space_read_multi_1(void *tag, bu
static void
rmi_bus_space_read_multi_2(void *tag, bus_space_handle_t handle,
- bus_size_t offset, u_int16_t *addr, size_t count)
+ bus_size_t offset, u_int16_t * addr, size_t count)
{
if ((int)tag != MIPS_BUS_SPACE_PCI)
@@ -443,7 +479,7 @@ rmi_bus_space_read_multi_2(void *tag, bu
static void
rmi_bus_space_read_multi_4(void *tag, bus_space_handle_t handle,
- bus_size_t offset, u_int32_t *addr, size_t count)
+ bus_size_t offset, u_int32_t * addr, size_t count)
{
if ((int)tag != MIPS_BUS_SPACE_PCI)
@@ -463,18 +499,18 @@ rmi_bus_space_read_multi_4(void *tag, bu
static void
rmi_bus_space_write_1(void *tag, bus_space_handle_t handle,
- bus_size_t offset, u_int8_t value)
+ bus_size_t offset, u_int8_t value)
{
mips_sync();
if ((int)tag == MIPS_BUS_SPACE_PCI)
*(volatile u_int8_t *)(handle + offset) = value;
else
- *(volatile u_int32_t *)(handle + offset) = (u_int32_t)value;
+ *(volatile u_int32_t *)(handle + offset) = (u_int32_t) value;
}
static void
rmi_bus_space_write_2(void *tag, bus_space_handle_t handle,
- bus_size_t offset, u_int16_t value)
+ bus_size_t offset, u_int16_t value)
{
mips_sync();
if ((int)tag == MIPS_BUS_SPACE_PCI) {
@@ -486,7 +522,7 @@ rmi_bus_space_write_2(void *tag, bus_spa
static void
rmi_bus_space_write_4(void *tag, bus_space_handle_t handle,
- bus_size_t offset, u_int32_t value)
+ bus_size_t offset, u_int32_t value)
{
mips_sync();
if ((int)tag == MIPS_BUS_SPACE_PCI) {
@@ -505,7 +541,7 @@ rmi_bus_space_write_4(void *tag, bus_spa
static void
rmi_bus_space_write_multi_1(void *tag, bus_space_handle_t handle,
- bus_size_t offset, const u_int8_t *addr, size_t count)
+ bus_size_t offset, const u_int8_t * addr, size_t count)
{
mips_sync();
if ((int)tag != MIPS_BUS_SPACE_PCI)
@@ -518,7 +554,7 @@ rmi_bus_space_write_multi_1(void *tag, b
static void
rmi_bus_space_write_multi_2(void *tag, bus_space_handle_t handle,
- bus_size_t offset, const u_int16_t *addr, size_t count)
+ bus_size_t offset, const u_int16_t * addr, size_t count)
{
mips_sync();
if ((int)tag != MIPS_BUS_SPACE_PCI)
@@ -531,7 +567,7 @@ rmi_bus_space_write_multi_2(void *tag, b
static void
rmi_bus_space_write_multi_4(void *tag, bus_space_handle_t handle,
- bus_size_t offset, const u_int32_t *addr, size_t count)
+ bus_size_t offset, const u_int32_t * addr, size_t count)
{
mips_sync();
if ((int)tag != MIPS_BUS_SPACE_PCI)
@@ -549,7 +585,7 @@ rmi_bus_space_write_multi_4(void *tag, b
static void
rmi_bus_space_set_region_2(void *t, bus_space_handle_t bsh,
- bus_size_t offset, u_int16_t value, size_t count)
+ bus_size_t offset, u_int16_t value, size_t count)
{
bus_addr_t addr = bsh + offset;
@@ -559,7 +595,7 @@ rmi_bus_space_set_region_2(void *t, bus_
static void
rmi_bus_space_set_region_4(void *t, bus_space_handle_t bsh,
- bus_size_t offset, u_int32_t value, size_t count)
+ bus_size_t offset, u_int32_t value, size_t count)
{
bus_addr_t addr = bsh + offset;
@@ -574,8 +610,8 @@ rmi_bus_space_set_region_4(void *t, bus_
*/
static void
rmi_bus_space_copy_region_2(void *t, bus_space_handle_t bsh1,
- bus_size_t off1, bus_space_handle_t bsh2,
- bus_size_t off2, size_t count)
+ bus_size_t off1, bus_space_handle_t bsh2,
+ bus_size_t off2, size_t count)
{
printf("bus_space_copy_region_2 - unimplemented\n");
}
@@ -596,23 +632,23 @@ rmi_bus_space_read_stream_1(void *t, bus
static u_int16_t
rmi_bus_space_read_stream_2(void *t, bus_space_handle_t handle,
- bus_size_t offset)
+ bus_size_t offset)
{
- return *(volatile u_int16_t *)(handle + offset);
+ return *(volatile u_int16_t *)(handle + offset);
}
static u_int32_t
rmi_bus_space_read_stream_4(void *t, bus_space_handle_t handle,
- bus_size_t offset)
+ bus_size_t offset)
{
- return (*(volatile u_int32_t *)(handle + offset));
+ return (*(volatile u_int32_t *)(handle + offset));
}
static void
rmi_bus_space_read_multi_stream_1(void *tag, bus_space_handle_t handle,
- bus_size_t offset, u_int8_t *addr, size_t count)
+ bus_size_t offset, u_int8_t * addr, size_t count)
{
if ((int)tag != MIPS_BUS_SPACE_PCI)
@@ -625,7 +661,7 @@ rmi_bus_space_read_multi_stream_1(void *
static void
rmi_bus_space_read_multi_stream_2(void *tag, bus_space_handle_t handle,
- bus_size_t offset, u_int16_t *addr, size_t count)
+ bus_size_t offset, u_int16_t * addr, size_t count)
{
if ((int)tag != MIPS_BUS_SPACE_PCI)
@@ -638,7 +674,7 @@ rmi_bus_space_read_multi_stream_2(void *
static void
rmi_bus_space_read_multi_stream_4(void *tag, bus_space_handle_t handle,
- bus_size_t offset, u_int32_t *addr, size_t count)
+ bus_size_t offset, u_int32_t * addr, size_t count)
{
if ((int)tag != MIPS_BUS_SPACE_PCI)
@@ -658,7 +694,7 @@ rmi_bus_space_read_multi_stream_4(void *
*/
void
rmi_bus_space_read_region_1(void *t, bus_space_handle_t bsh,
- bus_size_t offset, u_int8_t *addr, size_t count)
+ bus_size_t offset, u_int8_t * addr, size_t count)
{
bus_addr_t baddr = bsh + offset;
@@ -670,7 +706,7 @@ rmi_bus_space_read_region_1(void *t, bus
void
rmi_bus_space_read_region_2(void *t, bus_space_handle_t bsh,
- bus_size_t offset, u_int16_t *addr, size_t count)
+ bus_size_t offset, u_int16_t * addr, size_t count)
{
bus_addr_t baddr = bsh + offset;
@@ -682,7 +718,7 @@ rmi_bus_space_read_region_2(void *t, bus
void
rmi_bus_space_read_region_4(void *t, bus_space_handle_t bsh,
- bus_size_t offset, u_int32_t *addr, size_t count)
+ bus_size_t offset, u_int32_t * addr, size_t count)
{
bus_addr_t baddr = bsh + offset;
@@ -704,7 +740,7 @@ rmi_bus_space_write_stream_1(void *t, bu
static void
rmi_bus_space_write_stream_2(void *t, bus_space_handle_t handle,
- bus_size_t offset, u_int16_t value)
+ bus_size_t offset, u_int16_t value)
{
mips_sync();
*(volatile u_int16_t *)(handle + offset) = value;
@@ -713,7 +749,7 @@ rmi_bus_space_write_stream_2(void *t, bu
static void
rmi_bus_space_write_stream_4(void *t, bus_space_handle_t handle,
- bus_size_t offset, u_int32_t value)
+ bus_size_t offset, u_int32_t value)
{
mips_sync();
*(volatile u_int32_t *)(handle + offset) = value;
@@ -722,7 +758,7 @@ rmi_bus_space_write_stream_4(void *t, bu
static void
rmi_bus_space_write_multi_stream_1(void *tag, bus_space_handle_t handle,
- bus_size_t offset, const u_int8_t *addr, size_t count)
+ bus_size_t offset, const u_int8_t * addr, size_t count)
{
mips_sync();
if ((int)tag != MIPS_BUS_SPACE_PCI)
@@ -735,7 +771,7 @@ rmi_bus_space_write_multi_stream_1(void
static void
rmi_bus_space_write_multi_stream_2(void *tag, bus_space_handle_t handle,
- bus_size_t offset, const u_int16_t *addr, size_t count)
+ bus_size_t offset, const u_int16_t * addr, size_t count)
{
mips_sync();
if ((int)tag != MIPS_BUS_SPACE_PCI)
@@ -748,7 +784,7 @@ rmi_bus_space_write_multi_stream_2(void
static void
rmi_bus_space_write_multi_stream_4(void *tag, bus_space_handle_t handle,
- bus_size_t offset, const u_int32_t *addr, size_t count)
+ bus_size_t offset, const u_int32_t * addr, size_t count)
{
mips_sync();
if ((int)tag != MIPS_BUS_SPACE_PCI)
@@ -761,12 +797,13 @@ rmi_bus_space_write_multi_stream_4(void
void
rmi_bus_space_write_region_2(void *t,
- bus_space_handle_t bsh,
- bus_size_t offset,
- const u_int16_t *addr,
- size_t count)
+ bus_space_handle_t bsh,
+ bus_size_t offset,
+ const u_int16_t * addr,
+ size_t count)
{
- bus_addr_t baddr = (bus_addr_t)bsh + offset;
+ bus_addr_t baddr = (bus_addr_t) bsh + offset;
+
while (count--) {
(*(volatile u_int16_t *)(baddr)) = *addr;
addr++;
@@ -776,7 +813,7 @@ rmi_bus_space_write_region_2(void *t,
void
rmi_bus_space_write_region_4(void *t, bus_space_handle_t bsh,
- bus_size_t offset, const u_int32_t *addr, size_t count)
+ bus_size_t offset, const u_int32_t * addr, size_t count)
{
bus_addr_t baddr = bsh + offset;
@@ -789,7 +826,7 @@ rmi_bus_space_write_region_4(void *t, bu
static void
rmi_bus_space_barrier(void *tag __unused, bus_space_handle_t bsh __unused,
- bus_size_t offset __unused, bus_size_t len __unused, int flags)
+ bus_size_t offset __unused, bus_size_t len __unused, int flags)
{
}
From owner-svn-src-projects@FreeBSD.ORG Thu Nov 5 18:15:47 2009
Return-Path:
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id EEC32106566C;
Thu, 5 Nov 2009 18:15:47 +0000 (UTC) (envelope-from rrs@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c])
by mx1.freebsd.org (Postfix) with ESMTP id DE21B8FC0A;
Thu, 5 Nov 2009 18:15:47 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id nA5IFlUY086556;
Thu, 5 Nov 2009 18:15:47 GMT (envelope-from rrs@svn.freebsd.org)
Received: (from rrs@localhost)
by svn.freebsd.org (8.14.3/8.14.3/Submit) id nA5IFlqr086554;
Thu, 5 Nov 2009 18:15:47 GMT (envelope-from rrs@svn.freebsd.org)
Message-Id: <200911051815.nA5IFlqr086554@svn.freebsd.org>
From: Randall Stewart
Date: Thu, 5 Nov 2009 18:15:47 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc:
Subject: svn commit: r198958 - projects/mips/sys/mips/include
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "SVN commit messages for the src " projects"
tree"
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Thu, 05 Nov 2009 18:15:48 -0000
Author: rrs
Date: Thu Nov 5 18:15:47 2009
New Revision: 198958
URL: http://svn.freebsd.org/changeset/base/198958
Log:
For XLR adds extern for its bus space routines
Modified:
projects/mips/sys/mips/include/bus.h
Modified: projects/mips/sys/mips/include/bus.h
==============================================================================
--- projects/mips/sys/mips/include/bus.h Thu Nov 5 18:15:16 2009 (r198957)
+++ projects/mips/sys/mips/include/bus.h Thu Nov 5 18:15:47 2009 (r198958)
@@ -718,6 +718,11 @@ void __bs_c(f,_bs_c_8) (void *t, bus_spa
*/
DECLARE_BUS_SPACE_PROTOTYPES(generic);
extern bus_space_tag_t mips_bus_space_generic;
+/* Special bus space for RMI processors */
+#ifdef TARGET_XLR_XLS
+extern bus_space_tag_t rmi_bus_space;
+#endif
+
#include
#endif /* _MACHINE_BUS_H_ */
From owner-svn-src-projects@FreeBSD.ORG Fri Nov 6 06:50:46 2009
Return-Path:
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id ACEBB1065670;
Fri, 6 Nov 2009 06:50:46 +0000 (UTC)
(envelope-from gonzo@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c])
by mx1.freebsd.org (Postfix) with ESMTP id 81C4E8FC17;
Fri, 6 Nov 2009 06:50:46 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id nA66okEA005781;
Fri, 6 Nov 2009 06:50:46 GMT (envelope-from gonzo@svn.freebsd.org)
Received: (from gonzo@localhost)
by svn.freebsd.org (8.14.3/8.14.3/Submit) id nA66okse005778;
Fri, 6 Nov 2009 06:50:46 GMT (envelope-from gonzo@svn.freebsd.org)
Message-Id: <200911060650.nA66okse005778@svn.freebsd.org>
From: Oleksandr Tymoshenko
Date: Fri, 6 Nov 2009 06:50:46 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc:
Subject: svn commit: r198970 - projects/mips/sys/mips/atheros
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "SVN commit messages for the src " projects"
tree"
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Fri, 06 Nov 2009 06:50:46 -0000
Author: gonzo
Date: Fri Nov 6 06:50:45 2009
New Revision: 198970
URL: http://svn.freebsd.org/changeset/base/198970
Log:
- Fix initialization of PLL registers (different shifts for
arge0/arge1)
- Use base MAC address to generate MACs for arge1 and above
Modified:
projects/mips/sys/mips/atheros/if_arge.c
projects/mips/sys/mips/atheros/if_argevar.h
Modified: projects/mips/sys/mips/atheros/if_arge.c
==============================================================================
--- projects/mips/sys/mips/atheros/if_arge.c Fri Nov 6 06:50:45 2009 (r198969)
+++ projects/mips/sys/mips/atheros/if_arge.c Fri Nov 6 06:50:45 2009 (r198970)
@@ -205,9 +205,11 @@ arge_attach(device_t dev)
if (sc->arge_mac_unit == 0) {
sc->arge_ddr_flush_reg = AR71XX_WB_FLUSH_GE0;
sc->arge_pll_reg = AR71XX_PLL_ETH_INT0_CLK;
+ sc->arge_pll_reg_shift = 17;
} else {
sc->arge_ddr_flush_reg = AR71XX_WB_FLUSH_GE1;
sc->arge_pll_reg = AR71XX_PLL_ETH_INT1_CLK;
+ sc->arge_pll_reg_shift = 19;
}
/*
@@ -229,7 +231,6 @@ arge_attach(device_t dev)
sc->arge_phy_num = phynum;
-
mtx_init(&sc->arge_mtx, device_get_nameunit(dev), MTX_NETWORK_LOCK,
MTX_DEF);
callout_init_mtx(&sc->arge_stat_callout, &sc->arge_mtx, 0);
@@ -308,6 +309,9 @@ arge_attach(device_t dev)
eaddr[5] = (rnd >> 8) & 0xff;
}
+ if (sc->arge_mac_unit != 0)
+ eaddr[5] += sc->arge_mac_unit;
+
if (arge_dma_alloc(sc) != 0) {
error = ENXIO;
goto fail;
@@ -617,20 +621,20 @@ arge_link_task(void *arg, int pending)
/* set PLL registers */
sec_cfg = ATH_READ_REG(AR71XX_PLL_CPU_CONFIG);
- sec_cfg &= ~(3 << 17);
- sec_cfg |= (2 << 17);
+ sec_cfg &= ~(3 << sc->arge_pll_reg_shift);
+ sec_cfg |= (2 << sc->arge_pll_reg_shift);
- ATH_WRITE_REG(AR71XX_PLL_CPU_CONFIG, sec_cfg);
+ ATH_WRITE_REG(AR71XX_PLL_SEC_CONFIG, sec_cfg);
DELAY(100);
ATH_WRITE_REG(sc->arge_pll_reg, pll);
- sec_cfg |= (3 << 17);
- ATH_WRITE_REG(AR71XX_PLL_CPU_CONFIG, sec_cfg);
+ sec_cfg |= (3 << sc->arge_pll_reg_shift);
+ ATH_WRITE_REG(AR71XX_PLL_SEC_CONFIG, sec_cfg);
DELAY(100);
- sec_cfg &= ~(3 << 17);
- ATH_WRITE_REG(AR71XX_PLL_CPU_CONFIG, sec_cfg);
+ sec_cfg &= ~(3 << sc->arge_pll_reg_shift);
+ ATH_WRITE_REG(AR71XX_PLL_SEC_CONFIG, sec_cfg);
DELAY(100);
}
} else
Modified: projects/mips/sys/mips/atheros/if_argevar.h
==============================================================================
--- projects/mips/sys/mips/atheros/if_argevar.h Fri Nov 6 06:50:45 2009 (r198969)
+++ projects/mips/sys/mips/atheros/if_argevar.h Fri Nov 6 06:50:45 2009 (r198970)
@@ -133,6 +133,7 @@ struct arge_softc {
int arge_phy_num;
uint32_t arge_ddr_flush_reg;
uint32_t arge_pll_reg;
+ uint32_t arge_pll_reg_shift;
int arge_if_flags;
};
From owner-svn-src-projects@FreeBSD.ORG Fri Nov 6 12:52:52 2009
Return-Path:
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id 1E889106566C;
Fri, 6 Nov 2009 12:52:52 +0000 (UTC) (envelope-from rrs@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c])
by mx1.freebsd.org (Postfix) with ESMTP id 0DC5D8FC17;
Fri, 6 Nov 2009 12:52:52 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id nA6CqpYP017223;
Fri, 6 Nov 2009 12:52:51 GMT (envelope-from rrs@svn.freebsd.org)
Received: (from rrs@localhost)
by svn.freebsd.org (8.14.3/8.14.3/Submit) id nA6Cqpgo017217;
Fri, 6 Nov 2009 12:52:51 GMT (envelope-from rrs@svn.freebsd.org)
Message-Id: <200911061252.nA6Cqpgo017217@svn.freebsd.org>
From: Randall Stewart
Date: Fri, 6 Nov 2009 12:52:51 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc:
Subject: svn commit: r198985 - in projects/mips/sys/mips: conf rmi
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "SVN commit messages for the src " projects"
tree"
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Fri, 06 Nov 2009 12:52:52 -0000
Author: rrs
Date: Fri Nov 6 12:52:51 2009
New Revision: 198985
URL: http://svn.freebsd.org/changeset/base/198985
Log:
Ok With this commit we actually get through
the mi_startup (or to the last of it).. and
hit a panic after :
uart0: <16550 or compatible> on iodi0
Trap cause = 2 (TLB miss....)
I did have to take the pci bus OUT of the
build to get this far, hit a cache error with
the PCI code in. Interesting thing is the machine
reboots too ;-)
Modified:
projects/mips/sys/mips/conf/XLR
projects/mips/sys/mips/rmi/bus_space_rmi.c
projects/mips/sys/mips/rmi/clock.c
projects/mips/sys/mips/rmi/files.xlr
projects/mips/sys/mips/rmi/xlr_machdep.c
Modified: projects/mips/sys/mips/conf/XLR
==============================================================================
--- projects/mips/sys/mips/conf/XLR Fri Nov 6 11:29:10 2009 (r198984)
+++ projects/mips/sys/mips/conf/XLR Fri Nov 6 12:52:51 2009 (r198985)
@@ -61,6 +61,7 @@ makeoptions DEBUG=-g # Build kernel wit
#profile 2
#options SCHED_ULE # ULE scheduler
+options VERBOSE_SYSINIT
options SCHED_4BSD # 4BSD scheduler
#options PREEMPTION # Enable kernel thread preemption
#options FULL_PREEMPTION # Enable kernel thread preemption
Modified: projects/mips/sys/mips/rmi/bus_space_rmi.c
==============================================================================
--- projects/mips/sys/mips/rmi/bus_space_rmi.c Fri Nov 6 11:29:10 2009 (r198984)
+++ projects/mips/sys/mips/rmi/bus_space_rmi.c Fri Nov 6 12:52:51 2009 (r198985)
@@ -42,7 +42,6 @@ __FBSDID("$FreeBSD$");
#include
#include
-void xlr_putc(char);
void xlr_print_int(uint32_t);
static int
Modified: projects/mips/sys/mips/rmi/clock.c
==============================================================================
--- projects/mips/sys/mips/rmi/clock.c Fri Nov 6 11:29:10 2009 (r198984)
+++ projects/mips/sys/mips/rmi/clock.c Fri Nov 6 12:52:51 2009 (r198985)
@@ -179,6 +179,7 @@ rmi_early_counter_init()
pic_update_control(1 << (8 + 6));
}
+void tick_init(void);
void
platform_initclocks(void)
@@ -246,6 +247,7 @@ platform_initclocks(void)
/* Setup count-compare interrupt for vcpu[1-31] */
mips_wr_compare((xlr_boot1_info.cpu_frequency) / hz);
}
+ tick_init();
}
unsigned
Modified: projects/mips/sys/mips/rmi/files.xlr
==============================================================================
--- projects/mips/sys/mips/rmi/files.xlr Fri Nov 6 11:29:10 2009 (r198984)
+++ projects/mips/sys/mips/rmi/files.xlr Fri Nov 6 12:52:51 2009 (r198985)
@@ -14,8 +14,8 @@ mips/rmi/uart_bus_xlr_iodi.c optional
mips/rmi/uart_cpu_mips_xlr.c optional uart
mips/rmi/perfmon_kern.c optional xlr_perfmon
mips/rmi/perfmon_percpu.c optional xlr_perfmon
-mips/rmi/pcibus.c optional pci
-mips/rmi/xlr_pci.c optional pci
+#mips/rmi/pcibus.c optional pci
+#mips/rmi/xlr_pci.c optional pci
#mips/rmi/xls_ehci.c optional usb ehci
dev/rmi/xlr/rge.c optional rge
mips/rmi/bus_space_rmi.c standard
Modified: projects/mips/sys/mips/rmi/xlr_machdep.c
==============================================================================
--- projects/mips/sys/mips/rmi/xlr_machdep.c Fri Nov 6 11:29:10 2009 (r198984)
+++ projects/mips/sys/mips/rmi/xlr_machdep.c Fri Nov 6 12:52:51 2009 (r198985)
@@ -368,48 +368,6 @@ mips_init(void)
#endif
}
-void (*xlr_putchar)(char)=NULL;
-
-static void
-xlr_putc_init(void)
-{
- uint32_t addr;
- addr = (uint32_t)(xlr_boot1_info.uart_putchar & 0x00000000ffffffff);
- xlr_putchar = (void (*)(char))(addr);
-}
-
-void xlr_putc(char);
-void xlr_print_int(uint32_t val);
-
-void
-xlr_putc(char c)
-{
- (*xlr_putchar)(c);
- DELAY(1000);
-}
-
-void
-xlr_print_int(uint32_t val)
-{
- int i;
- int idx;
- char ary[16] = {
- '0', '1', '2', '3',
- '4', '5', '6', '7',
- '8', '9', 'a', 'b',
- 'c', 'd', 'e', 'f'
- };
- xlr_putc('0');
- xlr_putc('x');
- for(i=7;i>=0;i--) {
- idx = (val >> (i*4)) & 0x0000000f;
- xlr_putc(ary[idx]);
- }
- xlr_putc(' ');
- xlr_putc(015);
- xlr_putc(012);
-}
-void tick_init(void);
void
platform_start(__register_t a0 __unused,
__register_t a1 __unused,
@@ -454,7 +412,6 @@ platform_start(__register_t a0 __unused,
mips_timer_early_init(platform_get_frequency());
/* Init the time counter in the PIC and local putc routine*/
- xlr_putc_init();
rmi_early_counter_init();
/* Init console please */
@@ -526,7 +483,6 @@ platform_start(__register_t a0 __unused,
/* Set up hz, among others. */
mips_init();
- pcpup = (struct pcpu *)NULL; /* TODO To be removed */
#ifdef SMP
/*
@@ -583,13 +539,10 @@ platform_start(__register_t a0 __unused,
* mips_init() XXX NOTE: We may need to move this to SMP based init
* code for each CPU, later.
*/
- printf("Here\n");
rmi_spin_mutex_safe = 1;
on_chip_init();
- printf("there\n");
mips_timer_init_params(platform_get_frequency(), 0);
- printf("ok\n");
- tick_init();
+ printf("Platform specific startup now completes\n");
}
void
From owner-svn-src-projects@FreeBSD.ORG Fri Nov 6 21:53:39 2009
Return-Path:
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id 023F5106566B;
Fri, 6 Nov 2009 21:53:39 +0000 (UTC)
(envelope-from gonzo@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c])
by mx1.freebsd.org (Postfix) with ESMTP id E63018FC15;
Fri, 6 Nov 2009 21:53:38 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id nA6Lrcvx029504;
Fri, 6 Nov 2009 21:53:38 GMT (envelope-from gonzo@svn.freebsd.org)
Received: (from gonzo@localhost)
by svn.freebsd.org (8.14.3/8.14.3/Submit) id nA6Lrcrq029502;
Fri, 6 Nov 2009 21:53:38 GMT (envelope-from gonzo@svn.freebsd.org)
Message-Id: <200911062153.nA6Lrcrq029502@svn.freebsd.org>
From: Oleksandr Tymoshenko
Date: Fri, 6 Nov 2009 21:53:38 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc:
Subject: svn commit: r199005 - projects/mips/sys/mips/atheros
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "SVN commit messages for the src " projects"
tree"
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Fri, 06 Nov 2009 21:53:39 -0000
Author: gonzo
Date: Fri Nov 6 21:53:38 2009
New Revision: 199005
URL: http://svn.freebsd.org/changeset/base/199005
Log:
- Fix: Wrong register is used for initial value reading
Modified:
projects/mips/sys/mips/atheros/if_arge.c
Modified: projects/mips/sys/mips/atheros/if_arge.c
==============================================================================
--- projects/mips/sys/mips/atheros/if_arge.c Fri Nov 6 20:33:53 2009 (r199004)
+++ projects/mips/sys/mips/atheros/if_arge.c Fri Nov 6 21:53:38 2009 (r199005)
@@ -620,7 +620,7 @@ arge_link_task(void *arg, int pending)
rx_filtmask);
/* set PLL registers */
- sec_cfg = ATH_READ_REG(AR71XX_PLL_CPU_CONFIG);
+ sec_cfg = ATH_READ_REG(AR71XX_PLL_SEC_CONFIG);
sec_cfg &= ~(3 << sc->arge_pll_reg_shift);
sec_cfg |= (2 << sc->arge_pll_reg_shift);