From owner-svn-src-projects@FreeBSD.ORG Sun May 9 02:05:20 2010 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id C293D1065676; Sun, 9 May 2010 02:05:20 +0000 (UTC) (envelope-from jeff@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [69.147.83.44]) by mx1.freebsd.org (Postfix) with ESMTP id AEEBA8FC1E; Sun, 9 May 2010 02:05:20 +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 o4925KR0094543; Sun, 9 May 2010 02:05:20 GMT (envelope-from jeff@svn.freebsd.org) Received: (from jeff@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4925KlM094534; Sun, 9 May 2010 02:05:20 GMT (envelope-from jeff@svn.freebsd.org) Message-Id: <201005090205.o4925KlM094534@svn.freebsd.org> From: Jeff Roberson Date: Sun, 9 May 2010 02:05:20 +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: r207808 - in projects/ofed/base/sys/ofed: . drivers drivers/infiniband drivers/infiniband/core drivers/infiniband/debug drivers/infiniband/hw drivers/infiniband/hw/amso1100 drivers/infi... 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, 09 May 2010 02:05:20 -0000 Author: jeff Date: Sun May 9 02:05:20 2010 New Revision: 207808 URL: http://svn.freebsd.org/changeset/base/207808 Log: - Import ofed kernel sources from: git://git.openfabrics.org/ofed_1_5/linux-2.6 revision c559c00f2fabd28ef9014422c3fb1866b9981a7b Sponsored by: Isilon Systems, iX Systems, and Panasas. Added: projects/ofed/base/sys/ofed/ projects/ofed/base/sys/ofed/drivers/ projects/ofed/base/sys/ofed/drivers/infiniband/ projects/ofed/base/sys/ofed/drivers/infiniband/Kconfig projects/ofed/base/sys/ofed/drivers/infiniband/Makefile projects/ofed/base/sys/ofed/drivers/infiniband/core/ projects/ofed/base/sys/ofed/drivers/infiniband/core/Makefile projects/ofed/base/sys/ofed/drivers/infiniband/core/addr.c projects/ofed/base/sys/ofed/drivers/infiniband/core/agent.c projects/ofed/base/sys/ofed/drivers/infiniband/core/agent.h projects/ofed/base/sys/ofed/drivers/infiniband/core/cache.c projects/ofed/base/sys/ofed/drivers/infiniband/core/cm.c projects/ofed/base/sys/ofed/drivers/infiniband/core/cm_msgs.h projects/ofed/base/sys/ofed/drivers/infiniband/core/cma.c projects/ofed/base/sys/ofed/drivers/infiniband/core/core_priv.h projects/ofed/base/sys/ofed/drivers/infiniband/core/device.c projects/ofed/base/sys/ofed/drivers/infiniband/core/fmr_pool.c projects/ofed/base/sys/ofed/drivers/infiniband/core/iwcm.c projects/ofed/base/sys/ofed/drivers/infiniband/core/iwcm.h projects/ofed/base/sys/ofed/drivers/infiniband/core/local_sa.c projects/ofed/base/sys/ofed/drivers/infiniband/core/mad.c projects/ofed/base/sys/ofed/drivers/infiniband/core/mad_priv.h projects/ofed/base/sys/ofed/drivers/infiniband/core/mad_rmpp.c projects/ofed/base/sys/ofed/drivers/infiniband/core/mad_rmpp.h projects/ofed/base/sys/ofed/drivers/infiniband/core/multicast.c projects/ofed/base/sys/ofed/drivers/infiniband/core/notice.c projects/ofed/base/sys/ofed/drivers/infiniband/core/packer.c projects/ofed/base/sys/ofed/drivers/infiniband/core/sa.h projects/ofed/base/sys/ofed/drivers/infiniband/core/sa_query.c projects/ofed/base/sys/ofed/drivers/infiniband/core/smi.c projects/ofed/base/sys/ofed/drivers/infiniband/core/smi.h projects/ofed/base/sys/ofed/drivers/infiniband/core/sysfs.c projects/ofed/base/sys/ofed/drivers/infiniband/core/ucm.c projects/ofed/base/sys/ofed/drivers/infiniband/core/ucma.c projects/ofed/base/sys/ofed/drivers/infiniband/core/ud_header.c projects/ofed/base/sys/ofed/drivers/infiniband/core/umem.c projects/ofed/base/sys/ofed/drivers/infiniband/core/user_mad.c projects/ofed/base/sys/ofed/drivers/infiniband/core/uverbs.h projects/ofed/base/sys/ofed/drivers/infiniband/core/uverbs_cmd.c projects/ofed/base/sys/ofed/drivers/infiniband/core/uverbs_main.c projects/ofed/base/sys/ofed/drivers/infiniband/core/uverbs_marshall.c projects/ofed/base/sys/ofed/drivers/infiniband/core/verbs.c projects/ofed/base/sys/ofed/drivers/infiniband/debug/ projects/ofed/base/sys/ofed/drivers/infiniband/debug/Makefile projects/ofed/base/sys/ofed/drivers/infiniband/debug/memtrack.c projects/ofed/base/sys/ofed/drivers/infiniband/debug/memtrack.h projects/ofed/base/sys/ofed/drivers/infiniband/debug/mtrack.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/ projects/ofed/base/sys/ofed/drivers/infiniband/hw/amso1100/ projects/ofed/base/sys/ofed/drivers/infiniband/hw/amso1100/Kbuild projects/ofed/base/sys/ofed/drivers/infiniband/hw/amso1100/Kconfig projects/ofed/base/sys/ofed/drivers/infiniband/hw/amso1100/c2.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/amso1100/c2.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/amso1100/c2_ae.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/amso1100/c2_ae.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/amso1100/c2_alloc.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/amso1100/c2_cm.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/amso1100/c2_cq.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/amso1100/c2_intr.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/amso1100/c2_mm.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/amso1100/c2_mq.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/amso1100/c2_mq.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/amso1100/c2_pd.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/amso1100/c2_provider.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/amso1100/c2_provider.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/amso1100/c2_qp.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/amso1100/c2_rnic.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/amso1100/c2_status.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/amso1100/c2_user.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/amso1100/c2_vq.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/amso1100/c2_vq.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/amso1100/c2_wr.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/cxgb3/ projects/ofed/base/sys/ofed/drivers/infiniband/hw/cxgb3/Kconfig projects/ofed/base/sys/ofed/drivers/infiniband/hw/cxgb3/Makefile projects/ofed/base/sys/ofed/drivers/infiniband/hw/cxgb3/cxio_dbg.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/cxgb3/cxio_hal.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/cxgb3/cxio_hal.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/cxgb3/cxio_resource.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/cxgb3/cxio_resource.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/cxgb3/cxio_wr.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/cxgb3/iwch.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/cxgb3/iwch.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/cxgb3/iwch_cm.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/cxgb3/iwch_cm.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/cxgb3/iwch_cq.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/cxgb3/iwch_ev.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/cxgb3/iwch_mem.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/cxgb3/iwch_provider.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/cxgb3/iwch_provider.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/cxgb3/iwch_qp.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/cxgb3/iwch_user.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/cxgb3/tcb.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/ projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/Kconfig projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/Makefile projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/ehca_av.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/ehca_classes.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/ehca_classes_pSeries.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/ehca_cq.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/ehca_eq.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/ehca_hca.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/ehca_irq.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/ehca_irq.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/ehca_iverbs.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/ehca_main.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/ehca_mcast.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/ehca_mrmw.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/ehca_mrmw.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/ehca_pd.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/ehca_qes.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/ehca_qp.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/ehca_reqs.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/ehca_sqp.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/ehca_tools.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/ehca_uverbs.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/hcp_if.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/hcp_if.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/hcp_phyp.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/hcp_phyp.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/hipz_fns.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/hipz_fns_core.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/hipz_hw.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/ipz_pt_fn.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ehca/ipz_pt_fn.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/Kconfig projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/Makefile projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_7220.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_common.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_cq.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_debug.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_diag.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_dma.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_driver.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_eeprom.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_file_ops.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_fs.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_iba6110.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_iba6120.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_iba7220.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_init_chip.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_intr.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_kernel.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_keys.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_mad.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_mmap.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_mr.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_qp.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_rc.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_registers.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_ruc.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_sd7220.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_sd7220_img.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_sdma.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_srq.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_stats.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_sysfs.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_uc.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_ud.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_user_pages.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_user_sdma.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_user_sdma.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_verbs.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_verbs.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_verbs_mcast.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_wc_ppc64.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/ipath/ipath_wc_x86_64.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mlx4/ projects/ofed/base/sys/ofed/drivers/infiniband/hw/mlx4/Kconfig projects/ofed/base/sys/ofed/drivers/infiniband/hw/mlx4/Makefile projects/ofed/base/sys/ofed/drivers/infiniband/hw/mlx4/ah.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mlx4/cq.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mlx4/doorbell.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mlx4/mad.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mlx4/main.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mlx4/mlx4_ib.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/mlx4/mr.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mlx4/qp.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mlx4/srq.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mlx4/user.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/mlx4/wc.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mlx4/wc.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/ projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/Kconfig projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/Makefile projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_allocator.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_av.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_catas.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_cmd.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_cmd.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_config_reg.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_cq.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_dev.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_doorbell.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_eq.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_mad.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_main.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_mcg.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_memfree.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_memfree.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_mr.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_pd.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_profile.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_profile.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_provider.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_provider.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_qp.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_reset.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_srq.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_uar.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_user.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/mthca/mthca_wqe.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/nes/ projects/ofed/base/sys/ofed/drivers/infiniband/hw/nes/Kconfig projects/ofed/base/sys/ofed/drivers/infiniband/hw/nes/Makefile projects/ofed/base/sys/ofed/drivers/infiniband/hw/nes/nes.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/nes/nes.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/nes/nes_cm.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/nes/nes_cm.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/nes/nes_context.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/nes/nes_hw.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/nes/nes_hw.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/nes/nes_nic.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/nes/nes_user.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/nes/nes_utils.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/nes/nes_verbs.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/nes/nes_verbs.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/ projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/Kconfig projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/Makefile projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_6120_regs.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_7220.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_7220_regs.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_7322_regs.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_common.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_cq.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_debug.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_diag.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_dma.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_driver.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_eeprom.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_file_ops.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_fs.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_iba6120.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_iba7220.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_iba7322.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_init.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_intr.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_keys.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_mad.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_mad.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_mmap.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_mr.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_pcie.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_pio_copy.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_qp.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_qsfp.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_qsfp.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_rc.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_ruc.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_sd7220.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_sd7220_img.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_sdma.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_srq.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_sysfs.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_trace.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_trace.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_twsi.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_tx.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_uc.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_ud.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_user_pages.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_user_sdma.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_user_sdma.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_verbs.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_verbs.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_verbs_mcast.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_wc_pat.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_wc_pat.h projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_wc_ppc64.c projects/ofed/base/sys/ofed/drivers/infiniband/hw/qib/qib_wc_x86_64.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/ projects/ofed/base/sys/ofed/drivers/infiniband/ulp/ipoib/ projects/ofed/base/sys/ofed/drivers/infiniband/ulp/ipoib/Kconfig projects/ofed/base/sys/ofed/drivers/infiniband/ulp/ipoib/Makefile projects/ofed/base/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib.h projects/ofed/base/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_cm.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_ethtool.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_fs.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_ib.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_main.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_multicast.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_verbs.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_vlan.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/iser/ projects/ofed/base/sys/ofed/drivers/infiniband/ulp/iser/Kconfig projects/ofed/base/sys/ofed/drivers/infiniband/ulp/iser/Makefile projects/ofed/base/sys/ofed/drivers/infiniband/ulp/iser/iscsi_iser.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/iser/iscsi_iser.h projects/ofed/base/sys/ofed/drivers/infiniband/ulp/iser/iser_initiator.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/iser/iser_memory.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/iser/iser_verbs.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/ projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/Kconfig projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/Makefile projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/vnic_config.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/vnic_config.h projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/vnic_control.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/vnic_control.h projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/vnic_control_pkt.h projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/vnic_data.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/vnic_data.h projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/vnic_ib.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/vnic_ib.h projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/vnic_main.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/vnic_main.h projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/vnic_multicast.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/vnic_multicast.h projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/vnic_netpath.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/vnic_netpath.h projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/vnic_stats.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/vnic_stats.h projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/vnic_sys.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/vnic_sys.h projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/vnic_trailer.h projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/vnic_util.h projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/vnic_viport.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/qlgc_vnic/vnic_viport.h projects/ofed/base/sys/ofed/drivers/infiniband/ulp/sdp/ projects/ofed/base/sys/ofed/drivers/infiniband/ulp/sdp/Kconfig projects/ofed/base/sys/ofed/drivers/infiniband/ulp/sdp/Makefile projects/ofed/base/sys/ofed/drivers/infiniband/ulp/sdp/sdp.h projects/ofed/base/sys/ofed/drivers/infiniband/ulp/sdp/sdp_bcopy.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/sdp/sdp_cma.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/sdp/sdp_dbg.h projects/ofed/base/sys/ofed/drivers/infiniband/ulp/sdp/sdp_main.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/sdp/sdp_proc.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/sdp/sdp_rx.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/sdp/sdp_tx.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/sdp/sdp_zcopy.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/srp/ projects/ofed/base/sys/ofed/drivers/infiniband/ulp/srp/Kbuild projects/ofed/base/sys/ofed/drivers/infiniband/ulp/srp/Kconfig projects/ofed/base/sys/ofed/drivers/infiniband/ulp/srp/ib_srp.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/srp/ib_srp.h projects/ofed/base/sys/ofed/drivers/infiniband/ulp/srpt/ projects/ofed/base/sys/ofed/drivers/infiniband/ulp/srpt/Kconfig projects/ofed/base/sys/ofed/drivers/infiniband/ulp/srpt/Makefile projects/ofed/base/sys/ofed/drivers/infiniband/ulp/srpt/ib_dm_mad.h projects/ofed/base/sys/ofed/drivers/infiniband/ulp/srpt/ib_srpt.c projects/ofed/base/sys/ofed/drivers/infiniband/ulp/srpt/ib_srpt.h projects/ofed/base/sys/ofed/drivers/infiniband/ulp/srpt/scst.h projects/ofed/base/sys/ofed/drivers/infiniband/ulp/srpt/scst_const.h projects/ofed/base/sys/ofed/drivers/infiniband/ulp/srpt/scst_debug.h projects/ofed/base/sys/ofed/drivers/infiniband/ulp/srpt/scst_sgv.h projects/ofed/base/sys/ofed/drivers/infiniband/util/ projects/ofed/base/sys/ofed/drivers/infiniband/util/Kconfig projects/ofed/base/sys/ofed/drivers/infiniband/util/Makefile projects/ofed/base/sys/ofed/drivers/infiniband/util/madeye.c projects/ofed/base/sys/ofed/drivers/net/ projects/ofed/base/sys/ofed/drivers/net/mlx4/ projects/ofed/base/sys/ofed/drivers/net/mlx4/Makefile projects/ofed/base/sys/ofed/drivers/net/mlx4/alloc.c projects/ofed/base/sys/ofed/drivers/net/mlx4/catas.c projects/ofed/base/sys/ofed/drivers/net/mlx4/cmd.c projects/ofed/base/sys/ofed/drivers/net/mlx4/cq.c projects/ofed/base/sys/ofed/drivers/net/mlx4/en_cq.c projects/ofed/base/sys/ofed/drivers/net/mlx4/en_ethtool.c projects/ofed/base/sys/ofed/drivers/net/mlx4/en_frag.c projects/ofed/base/sys/ofed/drivers/net/mlx4/en_main.c projects/ofed/base/sys/ofed/drivers/net/mlx4/en_netdev.c projects/ofed/base/sys/ofed/drivers/net/mlx4/en_params.c projects/ofed/base/sys/ofed/drivers/net/mlx4/en_port.c projects/ofed/base/sys/ofed/drivers/net/mlx4/en_port.h projects/ofed/base/sys/ofed/drivers/net/mlx4/en_resources.c projects/ofed/base/sys/ofed/drivers/net/mlx4/en_rx.c projects/ofed/base/sys/ofed/drivers/net/mlx4/en_selftest.c projects/ofed/base/sys/ofed/drivers/net/mlx4/en_tx.c projects/ofed/base/sys/ofed/drivers/net/mlx4/eq.c projects/ofed/base/sys/ofed/drivers/net/mlx4/fw.c projects/ofed/base/sys/ofed/drivers/net/mlx4/fw.h projects/ofed/base/sys/ofed/drivers/net/mlx4/icm.c projects/ofed/base/sys/ofed/drivers/net/mlx4/icm.h projects/ofed/base/sys/ofed/drivers/net/mlx4/intf.c projects/ofed/base/sys/ofed/drivers/net/mlx4/main.c projects/ofed/base/sys/ofed/drivers/net/mlx4/mcg.c projects/ofed/base/sys/ofed/drivers/net/mlx4/mlx4.h projects/ofed/base/sys/ofed/drivers/net/mlx4/mlx4_en.h projects/ofed/base/sys/ofed/drivers/net/mlx4/mr.c projects/ofed/base/sys/ofed/drivers/net/mlx4/pd.c projects/ofed/base/sys/ofed/drivers/net/mlx4/port.c projects/ofed/base/sys/ofed/drivers/net/mlx4/profile.c projects/ofed/base/sys/ofed/drivers/net/mlx4/qp.c projects/ofed/base/sys/ofed/drivers/net/mlx4/reset.c projects/ofed/base/sys/ofed/drivers/net/mlx4/sense.c projects/ofed/base/sys/ofed/drivers/net/mlx4/srq.c projects/ofed/base/sys/ofed/drivers/net/mlx4/xrcd.c projects/ofed/base/sys/ofed/include/ projects/ofed/base/sys/ofed/include/linux/ projects/ofed/base/sys/ofed/include/linux/mlx4/ projects/ofed/base/sys/ofed/include/linux/mlx4/cmd.h projects/ofed/base/sys/ofed/include/linux/mlx4/cq.h projects/ofed/base/sys/ofed/include/linux/mlx4/device.h projects/ofed/base/sys/ofed/include/linux/mlx4/doorbell.h projects/ofed/base/sys/ofed/include/linux/mlx4/driver.h projects/ofed/base/sys/ofed/include/linux/mlx4/qp.h projects/ofed/base/sys/ofed/include/linux/mlx4/srq.h projects/ofed/base/sys/ofed/include/rdma/ projects/ofed/base/sys/ofed/include/rdma/Kbuild projects/ofed/base/sys/ofed/include/rdma/ib_addr.h projects/ofed/base/sys/ofed/include/rdma/ib_cache.h projects/ofed/base/sys/ofed/include/rdma/ib_cm.h projects/ofed/base/sys/ofed/include/rdma/ib_fmr_pool.h projects/ofed/base/sys/ofed/include/rdma/ib_mad.h projects/ofed/base/sys/ofed/include/rdma/ib_marshall.h projects/ofed/base/sys/ofed/include/rdma/ib_pack.h projects/ofed/base/sys/ofed/include/rdma/ib_sa.h projects/ofed/base/sys/ofed/include/rdma/ib_smi.h projects/ofed/base/sys/ofed/include/rdma/ib_umem.h projects/ofed/base/sys/ofed/include/rdma/ib_user_cm.h projects/ofed/base/sys/ofed/include/rdma/ib_user_mad.h projects/ofed/base/sys/ofed/include/rdma/ib_user_sa.h projects/ofed/base/sys/ofed/include/rdma/ib_user_verbs.h projects/ofed/base/sys/ofed/include/rdma/ib_verbs.h projects/ofed/base/sys/ofed/include/rdma/iw_cm.h projects/ofed/base/sys/ofed/include/rdma/rdma_cm.h projects/ofed/base/sys/ofed/include/rdma/rdma_cm_ib.h projects/ofed/base/sys/ofed/include/rdma/rdma_user_cm.h projects/ofed/base/sys/ofed/include/rdma/sdp_socket.h Added: projects/ofed/base/sys/ofed/drivers/infiniband/Kconfig ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/ofed/base/sys/ofed/drivers/infiniband/Kconfig Sun May 9 02:05:20 2010 (r207808) @@ -0,0 +1,66 @@ +menuconfig INFINIBAND + tristate "InfiniBand support" + depends on PCI || BROKEN + depends on HAS_IOMEM + ---help--- + Core support for InfiniBand (IB). Make sure to also select + any protocols you wish to use as well as drivers for your + InfiniBand hardware. + +if INFINIBAND + +config INFINIBAND_USER_MAD + tristate "InfiniBand userspace MAD support" + depends on INFINIBAND + ---help--- + Userspace InfiniBand Management Datagram (MAD) support. This + is the kernel side of the userspace MAD support, which allows + userspace processes to send and receive MADs. You will also + need libibumad from . + +config INFINIBAND_USER_ACCESS + tristate "InfiniBand userspace access (verbs and CM)" + ---help--- + Userspace InfiniBand access support. This enables the + kernel side of userspace verbs and the userspace + communication manager (CM). This allows userspace processes + to set up connections and directly access InfiniBand + hardware for fast-path operations. You will also need + libibverbs, libibcm and a hardware driver library from + . + +config INFINIBAND_USER_MEM + bool + depends on INFINIBAND_USER_ACCESS != n + default y + +config INFINIBAND_ADDR_TRANS + bool + depends on INET + depends on !(INFINIBAND = y && IPV6 = m) + default y + +source "drivers/infiniband/hw/mthca/Kconfig" +source "drivers/infiniband/hw/ipath/Kconfig" +source "drivers/infiniband/hw/qib/Kconfig" +source "drivers/infiniband/hw/ehca/Kconfig" +source "drivers/infiniband/hw/amso1100/Kconfig" +source "drivers/infiniband/hw/cxgb3/Kconfig" +source "drivers/infiniband/hw/mlx4/Kconfig" +source "drivers/infiniband/hw/nes/Kconfig" + +source "drivers/infiniband/ulp/ipoib/Kconfig" + +source "drivers/infiniband/ulp/srp/Kconfig" + +source "drivers/infiniband/ulp/srpt/Kconfig" + +source "drivers/infiniband/ulp/iser/Kconfig" + +source "drivers/infiniband/ulp/sdp/Kconfig" + +source "drivers/infiniband/ulp/qlgc_vnic/Kconfig" + +source "drivers/infiniband/util/Kconfig" + +endif # INFINIBAND Added: projects/ofed/base/sys/ofed/drivers/infiniband/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/ofed/base/sys/ofed/drivers/infiniband/Makefile Sun May 9 02:05:20 2010 (r207808) @@ -0,0 +1,17 @@ +obj-$(CONFIG_INFINIBAND) += core/ +obj-$(CONFIG_INFINIBAND_MTHCA) += hw/mthca/ +obj-$(CONFIG_INFINIBAND_IPATH) += hw/ipath/ +obj-$(CONFIG_INFINIBAND_QIB) += hw/qib/ +obj-$(CONFIG_INFINIBAND_EHCA) += hw/ehca/ +obj-$(CONFIG_INFINIBAND_AMSO1100) += hw/amso1100/ +obj-$(CONFIG_INFINIBAND_CXGB3) += hw/cxgb3/ +obj-$(CONFIG_INFINIBAND_NES) += hw/nes/ +obj-$(CONFIG_MLX4_INFINIBAND) += hw/mlx4/ +obj-$(CONFIG_INFINIBAND_NES) += hw/nes/ +obj-$(CONFIG_INFINIBAND_IPOIB) += ulp/ipoib/ +obj-$(CONFIG_INFINIBAND_SRP) += ulp/srp/ +obj-$(CONFIG_INFINIBAND_SRPT) += ulp/srpt/ +obj-$(CONFIG_INFINIBAND_ISER) += ulp/iser/ +obj-$(CONFIG_INFINIBAND_SDP) += ulp/sdp/ +obj-$(CONFIG_INFINIBAND_QLGC_VNIC) += ulp/qlgc_vnic/ +obj-$(CONFIG_INFINIBAND_MADEYE) += util/ Added: projects/ofed/base/sys/ofed/drivers/infiniband/core/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/ofed/base/sys/ofed/drivers/infiniband/core/Makefile Sun May 9 02:05:20 2010 (r207808) @@ -0,0 +1,32 @@ +infiniband-$(CONFIG_INFINIBAND_ADDR_TRANS) := ib_addr.o rdma_cm.o +user_access-$(CONFIG_INFINIBAND_ADDR_TRANS) := rdma_ucm.o + +obj-$(CONFIG_INFINIBAND) += ib_core.o ib_mad.o ib_sa.o \ + ib_cm.o iw_cm.o $(infiniband-y) +obj-$(CONFIG_INFINIBAND_USER_MAD) += ib_umad.o +obj-$(CONFIG_INFINIBAND_USER_ACCESS) += ib_uverbs.o ib_ucm.o \ + $(user_access-y) + +ib_core-y := packer.o ud_header.o verbs.o sysfs.o \ + device.o fmr_pool.o cache.o +ib_core-$(CONFIG_INFINIBAND_USER_MEM) += umem.o + +ib_mad-y := mad.o smi.o agent.o mad_rmpp.o + +ib_sa-y := sa_query.o multicast.o notice.o local_sa.o + +ib_cm-y := cm.o + +iw_cm-y := iwcm.o + +rdma_cm-y := cma.o + +rdma_ucm-y := ucma.o + +ib_addr-y := addr.o + +ib_umad-y := user_mad.o + +ib_ucm-y := ucm.o + +ib_uverbs-y := uverbs_main.o uverbs_cmd.o uverbs_marshall.o Added: projects/ofed/base/sys/ofed/drivers/infiniband/core/addr.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/ofed/base/sys/ofed/drivers/infiniband/core/addr.c Sun May 9 02:05:20 2010 (r207808) @@ -0,0 +1,455 @@ +/* + * Copyright (c) 2005 Voltaire Inc. All rights reserved. + * Copyright (c) 2002-2005, Network Appliance, Inc. All rights reserved. + * Copyright (c) 1999-2005, Mellanox Technologies, Inc. All rights reserved. + * Copyright (c) 2005 Intel Corporation. All rights reserved. + * + * This software is available to you under a choice of one of two + * licenses. You may choose to be licensed under the terms of the GNU + * General Public License (GPL) Version 2, available from the file + * COPYING in the main directory of this source tree, or the + * OpenIB.org BSD license below: + * + * Redistribution and use in source and binary forms, with or + * without modification, are permitted provided that the following + * conditions are met: + * + * - Redistributions of source code must retain the above + * copyright notice, this list of conditions and the following + * disclaimer. + * + * - 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. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +MODULE_AUTHOR("Sean Hefty"); +MODULE_DESCRIPTION("IB Address Translation"); +MODULE_LICENSE("Dual BSD/GPL"); + +struct addr_req { + struct list_head list; + struct sockaddr_storage src_addr; + struct sockaddr_storage dst_addr; + struct rdma_dev_addr *addr; + struct rdma_addr_client *client; + void *context; + void (*callback)(int status, struct sockaddr *src_addr, + struct rdma_dev_addr *addr, void *context); + unsigned long timeout; + int status; +}; + +static void process_req(struct work_struct *work); + +static DEFINE_MUTEX(lock); +static LIST_HEAD(req_list); +static DECLARE_DELAYED_WORK(work, process_req); +static struct workqueue_struct *addr_wq; + +void rdma_addr_register_client(struct rdma_addr_client *client) +{ + atomic_set(&client->refcount, 1); + init_completion(&client->comp); +} +EXPORT_SYMBOL(rdma_addr_register_client); + +static inline void put_client(struct rdma_addr_client *client) +{ + if (atomic_dec_and_test(&client->refcount)) + complete(&client->comp); +} + +void rdma_addr_unregister_client(struct rdma_addr_client *client) +{ + put_client(client); + wait_for_completion(&client->comp); +} +EXPORT_SYMBOL(rdma_addr_unregister_client); + +int rdma_copy_addr(struct rdma_dev_addr *dev_addr, struct net_device *dev, + const unsigned char *dst_dev_addr) +{ + dev_addr->dev_type = dev->type; + memcpy(dev_addr->src_dev_addr, dev->dev_addr, MAX_ADDR_LEN); + memcpy(dev_addr->broadcast, dev->broadcast, MAX_ADDR_LEN); + if (dst_dev_addr) + memcpy(dev_addr->dst_dev_addr, dst_dev_addr, MAX_ADDR_LEN); + dev_addr->bound_dev_if = dev->ifindex; + return 0; +} +EXPORT_SYMBOL(rdma_copy_addr); + +int rdma_translate_ip(struct sockaddr *addr, struct rdma_dev_addr *dev_addr) +{ + struct net_device *dev; + int ret = -EADDRNOTAVAIL; + + if (dev_addr->bound_dev_if) { + dev = dev_get_by_index(&init_net, dev_addr->bound_dev_if); + if (!dev) + return -ENODEV; + ret = rdma_copy_addr(dev_addr, dev, NULL); + dev_put(dev); + return ret; + } + + switch (addr->sa_family) { + case AF_INET: + dev = ip_dev_find(&init_net, + ((struct sockaddr_in *) addr)->sin_addr.s_addr); + + if (!dev) + return ret; + + ret = rdma_copy_addr(dev_addr, dev, NULL); + dev_put(dev); + break; + +#if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE) + case AF_INET6: + read_lock(&dev_base_lock); + for_each_netdev(&init_net, dev) { + if (ipv6_chk_addr(&init_net, + &((struct sockaddr_in6 *) addr)->sin6_addr, + dev, 1)) { + ret = rdma_copy_addr(dev_addr, dev, NULL); + break; + } + } + read_unlock(&dev_base_lock); + break; +#endif + } + return ret; +} +EXPORT_SYMBOL(rdma_translate_ip); + +static void set_timeout(unsigned long time) +{ + unsigned long delay; + + cancel_delayed_work(&work); + + delay = time - jiffies; + if ((long)delay <= 0) + delay = 1; + + queue_delayed_work(addr_wq, &work, delay); +} + +static void queue_req(struct addr_req *req) +{ + struct addr_req *temp_req; + + mutex_lock(&lock); + list_for_each_entry_reverse(temp_req, &req_list, list) { + if (time_after_eq(req->timeout, temp_req->timeout)) + break; + } + + list_add(&req->list, &temp_req->list); + + if (req_list.next == &req->list) + set_timeout(req->timeout); + mutex_unlock(&lock); +} + +static int addr4_resolve(struct sockaddr_in *src_in, + struct sockaddr_in *dst_in, + struct rdma_dev_addr *addr) +{ + __be32 src_ip = src_in->sin_addr.s_addr; + __be32 dst_ip = dst_in->sin_addr.s_addr; + struct flowi fl; + struct rtable *rt; + struct neighbour *neigh; + int ret; + + memset(&fl, 0, sizeof fl); + fl.nl_u.ip4_u.daddr = dst_ip; + fl.nl_u.ip4_u.saddr = src_ip; + fl.oif = addr->bound_dev_if; + + ret = ip_route_output_key(&init_net, &rt, &fl); + if (ret) + goto out; + + src_in->sin_family = AF_INET; + src_in->sin_addr.s_addr = rt->rt_src; + + if (rt->idev->dev->flags & IFF_LOOPBACK) { + ret = rdma_translate_ip((struct sockaddr *) dst_in, addr); + if (!ret) + memcpy(addr->dst_dev_addr, addr->src_dev_addr, MAX_ADDR_LEN); + goto put; + } + + /* If the device does ARP internally, return 'done' */ + if (rt->idev->dev->flags & IFF_NOARP) { + rdma_copy_addr(addr, rt->idev->dev, NULL); + goto put; + } + + neigh = neigh_lookup(&arp_tbl, &rt->rt_gateway, rt->idev->dev); + if (!neigh || !(neigh->nud_state & NUD_VALID)) { + neigh_event_send(rt->u.dst.neighbour, NULL); + ret = -ENODATA; + if (neigh) + goto release; + goto put; + } + + ret = rdma_copy_addr(addr, neigh->dev, neigh->ha); +release: + neigh_release(neigh); +put: + ip_rt_put(rt); +out: + return ret; +} + +#if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE) +static int addr6_resolve(struct sockaddr_in6 *src_in, + struct sockaddr_in6 *dst_in, + struct rdma_dev_addr *addr) +{ + struct flowi fl; + struct neighbour *neigh; + struct dst_entry *dst; + int ret; + + memset(&fl, 0, sizeof fl); + ipv6_addr_copy(&fl.fl6_dst, &dst_in->sin6_addr); + ipv6_addr_copy(&fl.fl6_src, &src_in->sin6_addr); + fl.oif = addr->bound_dev_if; + + dst = ip6_route_output(&init_net, NULL, &fl); + if ((ret = dst->error)) + goto put; + + if (ipv6_addr_any(&fl.fl6_src)) { + ret = ipv6_dev_get_saddr(&init_net, ip6_dst_idev(dst)->dev, + &fl.fl6_dst, 0, &fl.fl6_src); + if (ret) + goto put; + + src_in->sin6_family = AF_INET6; + ipv6_addr_copy(&src_in->sin6_addr, &fl.fl6_src); + } + + if (dst->dev->flags & IFF_LOOPBACK) { + ret = rdma_translate_ip((struct sockaddr *) dst_in, addr); + if (!ret) + memcpy(addr->dst_dev_addr, addr->src_dev_addr, MAX_ADDR_LEN); + goto put; + } + + /* If the device does ARP internally, return 'done' */ + if (dst->dev->flags & IFF_NOARP) { + ret = rdma_copy_addr(addr, dst->dev, NULL); + goto put; + } + + neigh = dst->neighbour; + if (!neigh || !(neigh->nud_state & NUD_VALID)) { + neigh_event_send(dst->neighbour, NULL); + ret = -ENODATA; + goto put; + } + + ret = rdma_copy_addr(addr, dst->dev, neigh->ha); +put: + dst_release(dst); + return ret; +} +#else +static int addr6_resolve(struct sockaddr_in6 *src_in, + struct sockaddr_in6 *dst_in, + struct rdma_dev_addr *addr) +{ + return -EADDRNOTAVAIL; +} +#endif + +static int addr_resolve(struct sockaddr *src_in, + struct sockaddr *dst_in, + struct rdma_dev_addr *addr) +{ + if (src_in->sa_family == AF_INET) { + return addr4_resolve((struct sockaddr_in *) src_in, + (struct sockaddr_in *) dst_in, addr); + } else + return addr6_resolve((struct sockaddr_in6 *) src_in, + (struct sockaddr_in6 *) dst_in, addr); +} + +static void process_req(struct work_struct *work) +{ + struct addr_req *req, *temp_req; + struct sockaddr *src_in, *dst_in; + struct list_head done_list; + + INIT_LIST_HEAD(&done_list); + + mutex_lock(&lock); + list_for_each_entry_safe(req, temp_req, &req_list, list) { + if (req->status == -ENODATA) { + src_in = (struct sockaddr *) &req->src_addr; + dst_in = (struct sockaddr *) &req->dst_addr; + req->status = addr_resolve(src_in, dst_in, req->addr); + if (req->status && time_after_eq(jiffies, req->timeout)) + req->status = -ETIMEDOUT; + else if (req->status == -ENODATA) + continue; + } + list_move_tail(&req->list, &done_list); + } + + if (!list_empty(&req_list)) { + req = list_entry(req_list.next, struct addr_req, list); + set_timeout(req->timeout); + } + mutex_unlock(&lock); + + list_for_each_entry_safe(req, temp_req, &done_list, list) { + list_del(&req->list); + req->callback(req->status, (struct sockaddr *) &req->src_addr, + req->addr, req->context); + put_client(req->client); + kfree(req); + } +} + +int rdma_resolve_ip(struct rdma_addr_client *client, + struct sockaddr *src_addr, struct sockaddr *dst_addr, + struct rdma_dev_addr *addr, int timeout_ms, + void (*callback)(int status, struct sockaddr *src_addr, + struct rdma_dev_addr *addr, void *context), + void *context) +{ + struct sockaddr *src_in, *dst_in; + struct addr_req *req; + int ret = 0; + + req = kzalloc(sizeof *req, GFP_KERNEL); + if (!req) + return -ENOMEM; + + src_in = (struct sockaddr *) &req->src_addr; + dst_in = (struct sockaddr *) &req->dst_addr; + + if (src_addr) { + if (src_addr->sa_family != dst_addr->sa_family) { + ret = -EINVAL; + goto err; + } + + memcpy(src_in, src_addr, ip_addr_size(src_addr)); + } else { + src_in->sa_family = dst_addr->sa_family; + } + + memcpy(dst_in, dst_addr, ip_addr_size(dst_addr)); + req->addr = addr; + req->callback = callback; + req->context = context; + req->client = client; + atomic_inc(&client->refcount); + + req->status = addr_resolve(src_in, dst_in, addr); + switch (req->status) { + case 0: + req->timeout = jiffies; + queue_req(req); + break; + case -ENODATA: + req->timeout = msecs_to_jiffies(timeout_ms) + jiffies; + queue_req(req); + break; + default: + ret = req->status; + atomic_dec(&client->refcount); + goto err; + } + return ret; +err: + kfree(req); + return ret; +} +EXPORT_SYMBOL(rdma_resolve_ip); + +void rdma_addr_cancel(struct rdma_dev_addr *addr) +{ + struct addr_req *req, *temp_req; + + mutex_lock(&lock); + list_for_each_entry_safe(req, temp_req, &req_list, list) { + if (req->addr == addr) { + req->status = -ECANCELED; + req->timeout = jiffies; + list_move(&req->list, &req_list); + set_timeout(req->timeout); + break; + } + } + mutex_unlock(&lock); +} +EXPORT_SYMBOL(rdma_addr_cancel); + +static int netevent_callback(struct notifier_block *self, unsigned long event, + void *ctx) +{ + if (event == NETEVENT_NEIGH_UPDATE) { + struct neighbour *neigh = ctx; + + if (neigh->nud_state & NUD_VALID) { + set_timeout(jiffies); + } + } + return 0; +} + +static struct notifier_block nb = { + .notifier_call = netevent_callback +}; + +static int addr_init(void) +{ + addr_wq = create_singlethread_workqueue("ib_addr"); + if (!addr_wq) + return -ENOMEM; + + register_netevent_notifier(&nb); + return 0; +} + +static void addr_cleanup(void) +{ + unregister_netevent_notifier(&nb); + destroy_workqueue(addr_wq); +} + +module_init(addr_init); +module_exit(addr_cleanup); Added: projects/ofed/base/sys/ofed/drivers/infiniband/core/agent.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/ofed/base/sys/ofed/drivers/infiniband/core/agent.c Sun May 9 02:05:20 2010 (r207808) @@ -0,0 +1,220 @@ +/* + * Copyright (c) 2004, 2005 Mellanox Technologies Ltd. All rights reserved. + * Copyright (c) 2004, 2005 Infinicon Corporation. All rights reserved. + * Copyright (c) 2004, 2005 Intel Corporation. All rights reserved. + * Copyright (c) 2004, 2005 Topspin Corporation. All rights reserved. + * Copyright (c) 2004-2007 Voltaire Corporation. All rights reserved. + * Copyright (c) 2005 Sun Microsystems, Inc. All rights reserved. + * + * This software is available to you under a choice of one of two + * licenses. You may choose to be licensed under the terms of the GNU + * General Public License (GPL) Version 2, available from the file + * COPYING in the main directory of this source tree, or the + * OpenIB.org BSD license below: + * + * Redistribution and use in source and binary forms, with or + * without modification, are permitted provided that the following + * conditions are met: + * + * - Redistributions of source code must retain the above + * copyright notice, this list of conditions and the following + * disclaimer. + * + * - 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. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ + +#include +#include + +#include "agent.h" +#include "smi.h" +#include "mad_priv.h" + +#define SPFX "ib_agent: " + +struct ib_agent_port_private { + struct list_head port_list; + struct ib_mad_agent *agent[2]; + struct ib_device *device; + u8 port_num; +}; + +static DEFINE_SPINLOCK(ib_agent_port_list_lock); +static LIST_HEAD(ib_agent_port_list); + +static struct ib_agent_port_private * +__ib_get_agent_port(struct ib_device *device, int port_num) +{ + struct ib_agent_port_private *entry; + + list_for_each_entry(entry, &ib_agent_port_list, port_list) + if (entry->device == device && entry->port_num == port_num) + return entry; + + return NULL; +} + +static struct ib_agent_port_private * +ib_get_agent_port(struct ib_device *device, int port_num) +{ + struct ib_agent_port_private *entry; + unsigned long flags; + + spin_lock_irqsave(&ib_agent_port_list_lock, flags); + entry = __ib_get_agent_port(device, port_num); + spin_unlock_irqrestore(&ib_agent_port_list_lock, flags); + return entry; +} + +void agent_send_response(struct ib_mad *mad, struct ib_grh *grh, + struct ib_wc *wc, struct ib_device *device, + int port_num, int qpn) +{ + struct ib_agent_port_private *port_priv; + struct ib_mad_agent *agent; + struct ib_mad_send_buf *send_buf; + struct ib_ah *ah; + struct ib_mad_send_wr_private *mad_send_wr; + + if (device->node_type == RDMA_NODE_IB_SWITCH) + port_priv = ib_get_agent_port(device, 0); + else + port_priv = ib_get_agent_port(device, port_num); + + if (!port_priv) { + printk(KERN_ERR SPFX "Unable to find port agent\n"); + return; + } + + agent = port_priv->agent[qpn]; + ah = ib_create_ah_from_wc(agent->qp->pd, wc, grh, port_num); + if (IS_ERR(ah)) { + printk(KERN_ERR SPFX "ib_create_ah_from_wc error\n"); + return; + } + + send_buf = ib_create_send_mad(agent, wc->src_qp, wc->pkey_index, 0, + IB_MGMT_MAD_HDR, IB_MGMT_MAD_DATA, + GFP_KERNEL); + if (IS_ERR(send_buf)) { + printk(KERN_ERR SPFX "ib_create_send_mad error\n"); + goto err1; + } + + memcpy(send_buf->mad, mad, sizeof *mad); + send_buf->ah = ah; + + if (device->node_type == RDMA_NODE_IB_SWITCH) { + mad_send_wr = container_of(send_buf, + struct ib_mad_send_wr_private, + send_buf); + mad_send_wr->send_wr.wr.ud.port_num = port_num; + } + + if (ib_post_send_mad(send_buf, NULL)) { + printk(KERN_ERR SPFX "ib_post_send_mad error\n"); + goto err2; + } + return; +err2: + ib_free_send_mad(send_buf); +err1: + ib_destroy_ah(ah); +} + +static void agent_send_handler(struct ib_mad_agent *mad_agent, + struct ib_mad_send_wc *mad_send_wc) +{ + ib_destroy_ah(mad_send_wc->send_buf->ah); + ib_free_send_mad(mad_send_wc->send_buf); +} + +int ib_agent_port_open(struct ib_device *device, int port_num) +{ + struct ib_agent_port_private *port_priv; + unsigned long flags; + int ret; + + /* Create new device info */ + port_priv = kzalloc(sizeof *port_priv, GFP_KERNEL); + if (!port_priv) { + printk(KERN_ERR SPFX "No memory for ib_agent_port_private\n"); + ret = -ENOMEM; + goto error1; + } + + if (rdma_port_link_layer(device, port_num) == IB_LINK_LAYER_INFINIBAND) { + /* Obtain send only MAD agent for SMI QP */ + port_priv->agent[0] = ib_register_mad_agent(device, port_num, + IB_QPT_SMI, NULL, 0, + &agent_send_handler, + NULL, NULL); + if (IS_ERR(port_priv->agent[0])) { + ret = PTR_ERR(port_priv->agent[0]); + goto error2; + } + } + + /* Obtain send only MAD agent for GSI QP */ + port_priv->agent[1] = ib_register_mad_agent(device, port_num, + IB_QPT_GSI, NULL, 0, + &agent_send_handler, + NULL, NULL); + if (IS_ERR(port_priv->agent[1])) { + ret = PTR_ERR(port_priv->agent[1]); + goto error3; + } + + port_priv->device = device; + port_priv->port_num = port_num; + + spin_lock_irqsave(&ib_agent_port_list_lock, flags); + list_add_tail(&port_priv->port_list, &ib_agent_port_list); + spin_unlock_irqrestore(&ib_agent_port_list_lock, flags); + + return 0; + +error3: + if (rdma_port_link_layer(device, port_num) == IB_LINK_LAYER_INFINIBAND) + ib_unregister_mad_agent(port_priv->agent[0]); +error2: + kfree(port_priv); +error1: + return ret; +} + +int ib_agent_port_close(struct ib_device *device, int port_num) +{ + struct ib_agent_port_private *port_priv; + unsigned long flags; + + spin_lock_irqsave(&ib_agent_port_list_lock, flags); + port_priv = __ib_get_agent_port(device, port_num); + if (port_priv == NULL) { + spin_unlock_irqrestore(&ib_agent_port_list_lock, flags); + printk(KERN_ERR SPFX "Port %d not found\n", port_num); + return -ENODEV; + } + list_del(&port_priv->port_list); + spin_unlock_irqrestore(&ib_agent_port_list_lock, flags); + + ib_unregister_mad_agent(port_priv->agent[1]); + if (rdma_port_link_layer(device, port_num) == IB_LINK_LAYER_INFINIBAND) + ib_unregister_mad_agent(port_priv->agent[0]); + + kfree(port_priv); + return 0; +} Added: projects/ofed/base/sys/ofed/drivers/infiniband/core/agent.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/ofed/base/sys/ofed/drivers/infiniband/core/agent.h Sun May 9 02:05:20 2010 (r207808) @@ -0,0 +1,51 @@ +/* + * Copyright (c) 2004 Mellanox Technologies Ltd. All rights reserved. + * Copyright (c) 2004 Infinicon Corporation. All rights reserved. + * Copyright (c) 2004 Intel Corporation. All rights reserved. + * Copyright (c) 2004 Topspin Corporation. All rights reserved. + * Copyright (c) 2004 Voltaire Corporation. All rights reserved. + * + * This software is available to you under a choice of one of two + * licenses. You may choose to be licensed under the terms of the GNU + * General Public License (GPL) Version 2, available from the file + * COPYING in the main directory of this source tree, or the + * OpenIB.org BSD license below: + * + * Redistribution and use in source and binary forms, with or + * without modification, are permitted provided that the following + * conditions are met: + * + * - Redistributions of source code must retain the above + * copyright notice, this list of conditions and the following + * disclaimer. + * + * - 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. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +#ifndef __AGENT_H_ +#define __AGENT_H_ + +#include +#include + +extern int ib_agent_port_open(struct ib_device *device, int port_num); + +extern int ib_agent_port_close(struct ib_device *device, int port_num); + +extern void agent_send_response(struct ib_mad *mad, struct ib_grh *grh, + struct ib_wc *wc, struct ib_device *device, + int port_num, int qpn); + +#endif /* __AGENT_H_ */ Added: projects/ofed/base/sys/ofed/drivers/infiniband/core/cache.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/ofed/base/sys/ofed/drivers/infiniband/core/cache.c Sun May 9 02:05:20 2010 (r207808) @@ -0,0 +1,397 @@ +/* + * Copyright (c) 2004 Topspin Communications. All rights reserved. + * Copyright (c) 2005 Intel Corporation. All rights reserved. + * Copyright (c) 2005 Sun Microsystems, Inc. All rights reserved. + * Copyright (c) 2005 Voltaire, Inc. All rights reserved. + * + * This software is available to you under a choice of one of two + * licenses. You may choose to be licensed under the terms of the GNU + * General Public License (GPL) Version 2, available from the file + * COPYING in the main directory of this source tree, or the + * OpenIB.org BSD license below: + * + * Redistribution and use in source and binary forms, with or + * without modification, are permitted provided that the following + * conditions are met: + * + * - Redistributions of source code must retain the above + * copyright notice, this list of conditions and the following + * disclaimer. + * + * - 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. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +#include +#include +#include +#include + +#include + +#include "core_priv.h" + +struct ib_pkey_cache { + int table_len; + u16 table[0]; +}; + +struct ib_gid_cache { + int table_len; + union ib_gid table[0]; +}; + +struct ib_update_work { + struct work_struct work; + struct ib_device *device; + u8 port_num; +}; + +static inline int start_port(struct ib_device *device) +{ + return (device->node_type == RDMA_NODE_IB_SWITCH) ? 0 : 1; +} + +static inline int end_port(struct ib_device *device) +{ + return (device->node_type == RDMA_NODE_IB_SWITCH) ? + 0 : device->phys_port_cnt; +} + +int ib_get_cached_gid(struct ib_device *device, + u8 port_num, + int index, + union ib_gid *gid) +{ + struct ib_gid_cache *cache; + unsigned long flags; + int ret = 0; + + if (port_num < start_port(device) || port_num > end_port(device)) + return -EINVAL; + + read_lock_irqsave(&device->cache.lock, flags); + + cache = device->cache.gid_cache[port_num - start_port(device)]; + + if (index < 0 || index >= cache->table_len) + ret = -EINVAL; + else + *gid = cache->table[index]; + + read_unlock_irqrestore(&device->cache.lock, flags); + + return ret; +} +EXPORT_SYMBOL(ib_get_cached_gid); + +int ib_find_cached_gid(struct ib_device *device, + union ib_gid *gid, + u8 *port_num, + u16 *index) +{ + struct ib_gid_cache *cache; + unsigned long flags; + int p, i; + int ret = -ENOENT; + + *port_num = -1; + if (index) + *index = -1; + + read_lock_irqsave(&device->cache.lock, flags); + + for (p = 0; p <= end_port(device) - start_port(device); ++p) { + cache = device->cache.gid_cache[p]; + for (i = 0; i < cache->table_len; ++i) { + if (!memcmp(gid, &cache->table[i], sizeof *gid)) { + *port_num = p + start_port(device); + if (index) + *index = i; + ret = 0; + goto found; + } + } + } +found: + read_unlock_irqrestore(&device->cache.lock, flags); + + return ret; +} +EXPORT_SYMBOL(ib_find_cached_gid); + +int ib_get_cached_pkey(struct ib_device *device, + u8 port_num, + int index, + u16 *pkey) +{ *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@FreeBSD.ORG Sun May 9 02:18:01 2010 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id C9B22106564A; Sun, 9 May 2010 02:18:01 +0000 (UTC) (envelope-from jeff@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [69.147.83.44]) by mx1.freebsd.org (Postfix) with ESMTP id A0FE58FC08; Sun, 9 May 2010 02:18:01 +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 o492I1HR097432; Sun, 9 May 2010 02:18:01 GMT (envelope-from jeff@svn.freebsd.org) Received: (from jeff@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o492I1Qu097431; Sun, 9 May 2010 02:18:01 GMT (envelope-from jeff@svn.freebsd.org) Message-Id: <201005090218.o492I1Qu097431@svn.freebsd.org> From: Jeff Roberson Date: Sun, 9 May 2010 02:18:01 +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: r207809 - projects/ofed/head/sys/ofed 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, 09 May 2010 02:18:01 -0000 Author: jeff Date: Sun May 9 02:18:01 2010 New Revision: 207809 URL: http://svn.freebsd.org/changeset/base/207809 Log: - Bring in new vendor files from base. Sponsored by: Isilon Systems, iX Systems, and Panasas. Added: projects/ofed/head/sys/ofed/ - copied from r207808, projects/ofed/base/sys/ofed/ From owner-svn-src-projects@FreeBSD.ORG Tue May 11 18:09:25 2010 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 45811106564A; Tue, 11 May 2010 18:09:25 +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 354348FC1F; Tue, 11 May 2010 18:09: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 o4BI9PtJ056710; Tue, 11 May 2010 18:09:25 GMT (envelope-from rdivacky@svn.freebsd.org) Received: (from rdivacky@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4BI9OP7056709; Tue, 11 May 2010 18:09:24 GMT (envelope-from rdivacky@svn.freebsd.org) Message-Id: <201005111809.o4BI9OP7056709@svn.freebsd.org> From: Roman Divacky Date: Tue, 11 May 2010 18:09: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: r207928 - projects/clangbsd 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, 11 May 2010 18:09:25 -0000 Author: rdivacky Date: Tue May 11 18:09:24 2010 New Revision: 207928 URL: http://svn.freebsd.org/changeset/base/207928 Log: Fix mergemaster by not linking as/ld in a case that they dont exist. Reported by: markm Modified: projects/clangbsd/Makefile.inc1 Modified: projects/clangbsd/Makefile.inc1 ============================================================================== --- projects/clangbsd/Makefile.inc1 Tue May 11 17:21:54 2010 (r207927) +++ projects/clangbsd/Makefile.inc1 Tue May 11 18:09:24 2010 (r207928) @@ -434,8 +434,9 @@ everything: @echo "--------------------------------------------------------------" @echo ">>> stage 4.4: building everything" @echo "--------------------------------------------------------------" - ln -sf ${WORLDTMP}/usr/bin/as ${WORLDTMP}/usr/lib/as - ln -sf ${WORLDTMP}/usr/bin/ld ${WORLDTMP}/usr/lib/ld + # mergemaster goes through this but those files do not exist + [ -e ${WORLDTMP}/usr/bin/as ] && ln -sf ${WORLDTMP}/usr/bin/as ${WORLDTMP}/usr/lib/as + [ -e ${WORLDTMP}/usr/bin/ld ] && ln -sf ${WORLDTMP}/usr/bin/ld ${WORLDTMP}/usr/lib/ld ${_+_}cd ${.CURDIR}; ${WMAKE} par-all .if ${TARGET_ARCH} == "amd64" build32: From owner-svn-src-projects@FreeBSD.ORG Wed May 12 04:42:36 2010 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 95A051065673; Wed, 12 May 2010 04:42:36 +0000 (UTC) (envelope-from marcel@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [69.147.83.44]) by mx1.freebsd.org (Postfix) with ESMTP id 845458FC0A; Wed, 12 May 2010 04:42: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 o4C4ga1O097170; Wed, 12 May 2010 04:42:36 GMT (envelope-from marcel@svn.freebsd.org) Received: (from marcel@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4C4gaEu097168; Wed, 12 May 2010 04:42:36 GMT (envelope-from marcel@svn.freebsd.org) Message-Id: <201005120442.o4C4gaEu097168@svn.freebsd.org> From: Marcel Moolenaar Date: Wed, 12 May 2010 04:42: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: r207951 - projects/altix/sys/kern 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, 12 May 2010 04:42:36 -0000 Author: marcel Date: Wed May 12 04:42:36 2010 New Revision: 207951 URL: http://svn.freebsd.org/changeset/base/207951 Log: The Altix needs busdma work because 1) there's no memory where devices can get to, unless they are truly 64-bit and 2) there's an I/O MMU that we need to use. Bootstrap an MI implementation from the amd64 MD version. I have this gut feeling we can have 90% or more of busdma implemented by MI code. Added: - copied unchanged from r207950, projects/altix/sys/amd64/amd64/busdma_machdep.c Directory Properties: projects/altix/sys/kern/subr_busdma.c (props changed) Copied: projects/altix/sys/kern/subr_busdma.c (from r207950, projects/altix/sys/amd64/amd64/busdma_machdep.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/altix/sys/kern/subr_busdma.c Wed May 12 04:42:36 2010 (r207951, copy of r207950, projects/altix/sys/amd64/amd64/busdma_machdep.c) @@ -0,0 +1,1205 @@ +/*- + * Copyright (c) 1997, 1998 Justin T. Gibbs. + * 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, + * without modification, immediately at the beginning of the file. + * 2. The name of the author may not 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. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +#include +#include +#include +#include + +#define MAX_BPAGES 8192 + +struct bounce_zone; + +struct bus_dma_tag { + bus_dma_tag_t parent; + bus_size_t alignment; + bus_size_t boundary; + bus_addr_t lowaddr; + bus_addr_t highaddr; + bus_dma_filter_t *filter; + void *filterarg; + bus_size_t maxsize; + u_int nsegments; + bus_size_t maxsegsz; + int flags; + int ref_count; + int map_count; + bus_dma_lock_t *lockfunc; + void *lockfuncarg; + bus_dma_segment_t *segments; + struct bounce_zone *bounce_zone; +}; + +struct bounce_page { + vm_offset_t vaddr; /* kva of bounce buffer */ + bus_addr_t busaddr; /* Physical address */ + vm_offset_t datavaddr; /* kva of client data */ + bus_size_t datacount; /* client data count */ + STAILQ_ENTRY(bounce_page) links; +}; + +int busdma_swi_pending; + +struct bounce_zone { + STAILQ_ENTRY(bounce_zone) links; + STAILQ_HEAD(bp_list, bounce_page) bounce_page_list; + int total_bpages; + int free_bpages; + int reserved_bpages; + int active_bpages; + int total_bounced; + int total_deferred; + int map_count; + bus_size_t alignment; + bus_addr_t lowaddr; + char zoneid[8]; + char lowaddrid[20]; + struct sysctl_ctx_list sysctl_tree; + struct sysctl_oid *sysctl_tree_top; +}; + +static struct mtx bounce_lock; +static int total_bpages; +static int busdma_zonecount; +static STAILQ_HEAD(, bounce_zone) bounce_zone_list; + +SYSCTL_NODE(_hw, OID_AUTO, busdma, CTLFLAG_RD, 0, "Busdma parameters"); +SYSCTL_INT(_hw_busdma, OID_AUTO, total_bpages, CTLFLAG_RD, &total_bpages, 0, + "Total bounce pages"); + +struct bus_dmamap { + struct bp_list bpages; + int pagesneeded; + int pagesreserved; + bus_dma_tag_t dmat; + void *buf; /* unmapped buffer pointer */ + bus_size_t buflen; /* unmapped buffer length */ + bus_dmamap_callback_t *callback; + void *callback_arg; + STAILQ_ENTRY(bus_dmamap) links; +}; + +static STAILQ_HEAD(, bus_dmamap) bounce_map_waitinglist; +static STAILQ_HEAD(, bus_dmamap) bounce_map_callbacklist; +static struct bus_dmamap nobounce_dmamap; + +static void init_bounce_pages(void *dummy); +static int alloc_bounce_zone(bus_dma_tag_t dmat); +static int alloc_bounce_pages(bus_dma_tag_t dmat, u_int numpages); +static int reserve_bounce_pages(bus_dma_tag_t dmat, bus_dmamap_t map, + int commit); +static bus_addr_t add_bounce_page(bus_dma_tag_t dmat, bus_dmamap_t map, + vm_offset_t vaddr, bus_size_t size); +static void free_bounce_page(bus_dma_tag_t dmat, struct bounce_page *bpage); +static __inline int run_filter(bus_dma_tag_t dmat, bus_addr_t paddr); + +/* + * Return true if a match is made. + * + * To find a match walk the chain of bus_dma_tag_t's looking for 'paddr'. + * + * If paddr is within the bounds of the dma tag then call the filter callback + * to check for a match, if there is no filter callback then assume a match. + */ +static __inline int +run_filter(bus_dma_tag_t dmat, bus_addr_t paddr) +{ + int retval; + + retval = 0; + + do { + if (((paddr > dmat->lowaddr && paddr <= dmat->highaddr) + || ((paddr & (dmat->alignment - 1)) != 0)) + && (dmat->filter == NULL + || (*dmat->filter)(dmat->filterarg, paddr) != 0)) + retval = 1; + + dmat = dmat->parent; + } while (retval == 0 && dmat != NULL); + return (retval); +} + +/* + * Convenience function for manipulating driver locks from busdma (during + * busdma_swi, for example). Drivers that don't provide their own locks + * should specify &Giant to dmat->lockfuncarg. Drivers that use their own + * non-mutex locking scheme don't have to use this at all. + */ +void +busdma_lock_mutex(void *arg, bus_dma_lock_op_t op) +{ + struct mtx *dmtx; + + dmtx = (struct mtx *)arg; + switch (op) { + case BUS_DMA_LOCK: + mtx_lock(dmtx); + break; + case BUS_DMA_UNLOCK: + mtx_unlock(dmtx); + break; + default: + panic("Unknown operation 0x%x for busdma_lock_mutex!", op); + } +} + +/* + * dflt_lock should never get called. It gets put into the dma tag when + * lockfunc == NULL, which is only valid if the maps that are associated + * with the tag are meant to never be defered. + * XXX Should have a way to identify which driver is responsible here. + */ +static void +dflt_lock(void *arg, bus_dma_lock_op_t op) +{ + panic("driver error: busdma dflt_lock called"); +} + +#define BUS_DMA_COULD_BOUNCE BUS_DMA_BUS3 +#define BUS_DMA_MIN_ALLOC_COMP BUS_DMA_BUS4 +/* + * Allocate a device specific dma_tag. + */ +int +bus_dma_tag_create(bus_dma_tag_t parent, bus_size_t alignment, + bus_size_t boundary, bus_addr_t lowaddr, + bus_addr_t highaddr, bus_dma_filter_t *filter, + void *filterarg, bus_size_t maxsize, int nsegments, + bus_size_t maxsegsz, int flags, bus_dma_lock_t *lockfunc, + void *lockfuncarg, bus_dma_tag_t *dmat) +{ + bus_dma_tag_t newtag; + int error = 0; + + /* Basic sanity checking */ + if (boundary != 0 && boundary < maxsegsz) + maxsegsz = boundary; + + if (maxsegsz == 0) { + return (EINVAL); + } + + /* Return a NULL tag on failure */ + *dmat = NULL; + + newtag = (bus_dma_tag_t)malloc(sizeof(*newtag), M_DEVBUF, + M_ZERO | M_NOWAIT); + if (newtag == NULL) { + CTR4(KTR_BUSDMA, "%s returned tag %p tag flags 0x%x error %d", + __func__, newtag, 0, error); + return (ENOMEM); + } + + newtag->parent = parent; + newtag->alignment = alignment; + newtag->boundary = boundary; + newtag->lowaddr = trunc_page((vm_paddr_t)lowaddr) + (PAGE_SIZE - 1); + newtag->highaddr = trunc_page((vm_paddr_t)highaddr) + (PAGE_SIZE - 1); + newtag->filter = filter; + newtag->filterarg = filterarg; + newtag->maxsize = maxsize; + newtag->nsegments = nsegments; + newtag->maxsegsz = maxsegsz; + newtag->flags = flags; + newtag->ref_count = 1; /* Count ourself */ + newtag->map_count = 0; + if (lockfunc != NULL) { + newtag->lockfunc = lockfunc; + newtag->lockfuncarg = lockfuncarg; + } else { + newtag->lockfunc = dflt_lock; + newtag->lockfuncarg = NULL; + } + newtag->segments = NULL; + + /* Take into account any restrictions imposed by our parent tag */ + if (parent != NULL) { + newtag->lowaddr = MIN(parent->lowaddr, newtag->lowaddr); + newtag->highaddr = MAX(parent->highaddr, newtag->highaddr); + if (newtag->boundary == 0) + newtag->boundary = parent->boundary; + else if (parent->boundary != 0) + newtag->boundary = MIN(parent->boundary, + newtag->boundary); + if (newtag->filter == NULL) { + /* + * Short circuit looking at our parent directly + * since we have encapsulated all of its information + */ + newtag->filter = parent->filter; + newtag->filterarg = parent->filterarg; + newtag->parent = parent->parent; + } + if (newtag->parent != NULL) + atomic_add_int(&parent->ref_count, 1); + } + + if (newtag->lowaddr < ptoa((vm_paddr_t)Maxmem) + || newtag->alignment > 1) + newtag->flags |= BUS_DMA_COULD_BOUNCE; + + if (((newtag->flags & BUS_DMA_COULD_BOUNCE) != 0) && + (flags & BUS_DMA_ALLOCNOW) != 0) { + struct bounce_zone *bz; + + /* Must bounce */ + + if ((error = alloc_bounce_zone(newtag)) != 0) { + free(newtag, M_DEVBUF); + return (error); + } + bz = newtag->bounce_zone; + + if (ptoa(bz->total_bpages) < maxsize) { + int pages; + + pages = atop(maxsize) - bz->total_bpages; + + /* Add pages to our bounce pool */ + if (alloc_bounce_pages(newtag, pages) < pages) + error = ENOMEM; + } + /* Performed initial allocation */ + newtag->flags |= BUS_DMA_MIN_ALLOC_COMP; + } + + if (error != 0) { + free(newtag, M_DEVBUF); + } else { + *dmat = newtag; + } + CTR4(KTR_BUSDMA, "%s returned tag %p tag flags 0x%x error %d", + __func__, newtag, (newtag != NULL ? newtag->flags : 0), error); + return (error); +} + +int +bus_dma_tag_destroy(bus_dma_tag_t dmat) +{ + bus_dma_tag_t dmat_copy; + int error; + + error = 0; + dmat_copy = dmat; + + if (dmat != NULL) { + + if (dmat->map_count != 0) { + error = EBUSY; + goto out; + } + + while (dmat != NULL) { + bus_dma_tag_t parent; + + parent = dmat->parent; + atomic_subtract_int(&dmat->ref_count, 1); + if (dmat->ref_count == 0) { + if (dmat->segments != NULL) + free(dmat->segments, M_DEVBUF); + free(dmat, M_DEVBUF); + /* + * Last reference count, so + * release our reference + * count on our parent. + */ + dmat = parent; + } else + dmat = NULL; + } + } +out: + CTR3(KTR_BUSDMA, "%s tag %p error %d", __func__, dmat_copy, error); + return (error); +} + +/* + * Allocate a handle for mapping from kva/uva/physical + * address space into bus device space. + */ +int +bus_dmamap_create(bus_dma_tag_t dmat, int flags, bus_dmamap_t *mapp) +{ + int error; + + error = 0; + + if (dmat->segments == NULL) { + dmat->segments = (bus_dma_segment_t *)malloc( + sizeof(bus_dma_segment_t) * dmat->nsegments, M_DEVBUF, + M_NOWAIT); + if (dmat->segments == NULL) { + CTR3(KTR_BUSDMA, "%s: tag %p error %d", + __func__, dmat, ENOMEM); + return (ENOMEM); + } + } + + /* + * Bouncing might be required if the driver asks for an active + * exclusion region, a data alignment that is stricter than 1, and/or + * an active address boundary. + */ + if (dmat->flags & BUS_DMA_COULD_BOUNCE) { + + /* Must bounce */ + struct bounce_zone *bz; + int maxpages; + + if (dmat->bounce_zone == NULL) { + if ((error = alloc_bounce_zone(dmat)) != 0) + return (error); + } + bz = dmat->bounce_zone; + + *mapp = (bus_dmamap_t)malloc(sizeof(**mapp), M_DEVBUF, + M_NOWAIT | M_ZERO); + if (*mapp == NULL) { + CTR3(KTR_BUSDMA, "%s: tag %p error %d", + __func__, dmat, ENOMEM); + return (ENOMEM); + } + + /* Initialize the new map */ + STAILQ_INIT(&((*mapp)->bpages)); + + /* + * Attempt to add pages to our pool on a per-instance + * basis up to a sane limit. + */ + if (dmat->alignment > 1) + maxpages = MAX_BPAGES; + else + maxpages = MIN(MAX_BPAGES, Maxmem -atop(dmat->lowaddr)); + if ((dmat->flags & BUS_DMA_MIN_ALLOC_COMP) == 0 + || (bz->map_count > 0 && bz->total_bpages < maxpages)) { + int pages; + + pages = MAX(atop(dmat->maxsize), 1); + pages = MIN(maxpages - bz->total_bpages, pages); + pages = MAX(pages, 1); + if (alloc_bounce_pages(dmat, pages) < pages) + error = ENOMEM; + + if ((dmat->flags & BUS_DMA_MIN_ALLOC_COMP) == 0) { + if (error == 0) + dmat->flags |= BUS_DMA_MIN_ALLOC_COMP; + } else { + error = 0; + } + } + bz->map_count++; + } else { + *mapp = NULL; + } + if (error == 0) + dmat->map_count++; + CTR4(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d", + __func__, dmat, dmat->flags, error); + return (error); +} + +/* + * Destroy a handle for mapping from kva/uva/physical + * address space into bus device space. + */ +int +bus_dmamap_destroy(bus_dma_tag_t dmat, bus_dmamap_t map) +{ + if (map != NULL && map != &nobounce_dmamap) { + if (STAILQ_FIRST(&map->bpages) != NULL) { + CTR3(KTR_BUSDMA, "%s: tag %p error %d", + __func__, dmat, EBUSY); + return (EBUSY); + } + if (dmat->bounce_zone) + dmat->bounce_zone->map_count--; + free(map, M_DEVBUF); + } + dmat->map_count--; + CTR2(KTR_BUSDMA, "%s: tag %p error 0", __func__, dmat); + return (0); +} + + +/* + * Allocate a piece of memory that can be efficiently mapped into + * bus device space based on the constraints lited in the dma tag. + * A dmamap to for use with dmamap_load is also allocated. + */ +int +bus_dmamem_alloc(bus_dma_tag_t dmat, void** vaddr, int flags, + bus_dmamap_t *mapp) +{ + int mflags; + + if (flags & BUS_DMA_NOWAIT) + mflags = M_NOWAIT; + else + mflags = M_WAITOK; + + /* If we succeed, no mapping/bouncing will be required */ + *mapp = NULL; + + if (dmat->segments == NULL) { + dmat->segments = (bus_dma_segment_t *)malloc( + sizeof(bus_dma_segment_t) * dmat->nsegments, M_DEVBUF, + mflags); + if (dmat->segments == NULL) { + CTR4(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d", + __func__, dmat, dmat->flags, ENOMEM); + return (ENOMEM); + } + } + if (flags & BUS_DMA_ZERO) + mflags |= M_ZERO; + + /* + * XXX: + * (dmat->alignment < dmat->maxsize) is just a quick hack; the exact + * alignment guarantees of malloc need to be nailed down, and the + * code below should be rewritten to take that into account. + * + * In the meantime, we'll warn the user if malloc gets it wrong. + */ + if ((dmat->maxsize <= PAGE_SIZE) && + (dmat->alignment < dmat->maxsize) && + dmat->lowaddr >= ptoa((vm_paddr_t)Maxmem)) { + *vaddr = malloc(dmat->maxsize, M_DEVBUF, mflags); + } else { + /* + * XXX Use Contigmalloc until it is merged into this facility + * and handles multi-seg allocations. Nobody is doing + * multi-seg allocations yet though. + * XXX Certain AGP hardware does. + */ + *vaddr = contigmalloc(dmat->maxsize, M_DEVBUF, mflags, + 0ul, dmat->lowaddr, dmat->alignment? dmat->alignment : 1ul, + dmat->boundary); + } + if (*vaddr == NULL) { + CTR4(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d", + __func__, dmat, dmat->flags, ENOMEM); + return (ENOMEM); + } else if ((uintptr_t)*vaddr & (dmat->alignment - 1)) { + printf("bus_dmamem_alloc failed to align memory properly.\n"); + } + if (flags & BUS_DMA_NOCACHE) + pmap_change_attr((vm_offset_t)*vaddr, dmat->maxsize, + PAT_UNCACHEABLE); + CTR4(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d", + __func__, dmat, dmat->flags, 0); + return (0); +} + +/* + * Free a piece of memory and it's allociated dmamap, that was allocated + * via bus_dmamem_alloc. Make the same choice for free/contigfree. + */ +void +bus_dmamem_free(bus_dma_tag_t dmat, void *vaddr, bus_dmamap_t map) +{ + /* + * dmamem does not need to be bounced, so the map should be + * NULL + */ + if (map != NULL) + panic("bus_dmamem_free: Invalid map freed\n"); + pmap_change_attr((vm_offset_t)vaddr, dmat->maxsize, PAT_WRITE_BACK); + if ((dmat->maxsize <= PAGE_SIZE) && + (dmat->alignment < dmat->maxsize) && + dmat->lowaddr >= ptoa((vm_paddr_t)Maxmem)) + free(vaddr, M_DEVBUF); + else { + contigfree(vaddr, dmat->maxsize, M_DEVBUF); + } + CTR3(KTR_BUSDMA, "%s: tag %p flags 0x%x", __func__, dmat, dmat->flags); +} + +/* + * Utility function to load a linear buffer. lastaddrp holds state + * between invocations (for multiple-buffer loads). segp contains + * the starting segment on entrace, and the ending segment on exit. + * first indicates if this is the first invocation of this function. + */ +static __inline int +_bus_dmamap_load_buffer(bus_dma_tag_t dmat, + bus_dmamap_t map, + void *buf, bus_size_t buflen, + pmap_t pmap, + int flags, + bus_addr_t *lastaddrp, + bus_dma_segment_t *segs, + int *segp, + int first) +{ + bus_size_t sgsize; + bus_addr_t curaddr, lastaddr, baddr, bmask; + vm_offset_t vaddr; + bus_addr_t paddr; + int seg; + + if (map == NULL) + map = &nobounce_dmamap; + + if ((map != &nobounce_dmamap && map->pagesneeded == 0) + && ((dmat->flags & BUS_DMA_COULD_BOUNCE) != 0)) { + vm_offset_t vendaddr; + + CTR4(KTR_BUSDMA, "lowaddr= %d Maxmem= %d, boundary= %d, " + "alignment= %d", dmat->lowaddr, ptoa((vm_paddr_t)Maxmem), + dmat->boundary, dmat->alignment); + CTR3(KTR_BUSDMA, "map= %p, nobouncemap= %p, pagesneeded= %d", + map, &nobounce_dmamap, map->pagesneeded); + /* + * Count the number of bounce pages + * needed in order to complete this transfer + */ + vaddr = (vm_offset_t)buf; + vendaddr = (vm_offset_t)buf + buflen; + + while (vaddr < vendaddr) { + bus_size_t sg_len; + + sg_len = PAGE_SIZE - ((vm_offset_t)vaddr & PAGE_MASK); + if (pmap) + paddr = pmap_extract(pmap, vaddr); + else + paddr = pmap_kextract(vaddr); + if (run_filter(dmat, paddr) != 0) { + sg_len = roundup2(sg_len, dmat->alignment); + map->pagesneeded++; + } + vaddr += sg_len; + } + CTR1(KTR_BUSDMA, "pagesneeded= %d\n", map->pagesneeded); + } + + /* Reserve Necessary Bounce Pages */ + if (map->pagesneeded != 0) { + mtx_lock(&bounce_lock); + if (flags & BUS_DMA_NOWAIT) { + if (reserve_bounce_pages(dmat, map, 0) != 0) { + mtx_unlock(&bounce_lock); + return (ENOMEM); + } + } else { + if (reserve_bounce_pages(dmat, map, 1) != 0) { + /* Queue us for resources */ + map->dmat = dmat; + map->buf = buf; + map->buflen = buflen; + STAILQ_INSERT_TAIL(&bounce_map_waitinglist, + map, links); + mtx_unlock(&bounce_lock); + return (EINPROGRESS); + } + } + mtx_unlock(&bounce_lock); + } + + vaddr = (vm_offset_t)buf; + lastaddr = *lastaddrp; + bmask = ~(dmat->boundary - 1); + + for (seg = *segp; buflen > 0 ; ) { + bus_size_t max_sgsize; + + /* + * Get the physical address for this segment. + */ + if (pmap) + curaddr = pmap_extract(pmap, vaddr); + else + curaddr = pmap_kextract(vaddr); + + /* + * Compute the segment size, and adjust counts. + */ + max_sgsize = MIN(buflen, dmat->maxsegsz); + sgsize = PAGE_SIZE - ((vm_offset_t)curaddr & PAGE_MASK); + if (map->pagesneeded != 0 && run_filter(dmat, curaddr)) { + sgsize = roundup2(sgsize, dmat->alignment); + sgsize = MIN(sgsize, max_sgsize); + curaddr = add_bounce_page(dmat, map, vaddr, sgsize); + } else { + sgsize = MIN(sgsize, max_sgsize); + } + + /* + * Make sure we don't cross any boundaries. + */ + if (dmat->boundary > 0) { + baddr = (curaddr + dmat->boundary) & bmask; + if (sgsize > (baddr - curaddr)) + sgsize = (baddr - curaddr); + } + + /* + * Insert chunk into a segment, coalescing with + * previous segment if possible. + */ + if (first) { + segs[seg].ds_addr = curaddr; + segs[seg].ds_len = sgsize; + first = 0; + } else { + if (curaddr == lastaddr && + (segs[seg].ds_len + sgsize) <= dmat->maxsegsz && + (dmat->boundary == 0 || + (segs[seg].ds_addr & bmask) == (curaddr & bmask))) + segs[seg].ds_len += sgsize; + else { + if (++seg >= dmat->nsegments) + break; + segs[seg].ds_addr = curaddr; + segs[seg].ds_len = sgsize; + } + } + + lastaddr = curaddr + sgsize; + vaddr += sgsize; + buflen -= sgsize; + } + + *segp = seg; + *lastaddrp = lastaddr; + + /* + * Did we fit? + */ + return (buflen != 0 ? EFBIG : 0); /* XXX better return value here? */ +} + +/* + * Map the buffer buf into bus space using the dmamap map. + */ +int +bus_dmamap_load(bus_dma_tag_t dmat, bus_dmamap_t map, void *buf, + bus_size_t buflen, bus_dmamap_callback_t *callback, + void *callback_arg, int flags) +{ + bus_addr_t lastaddr = 0; + int error, nsegs = 0; + + if (map != NULL) { + flags |= BUS_DMA_WAITOK; + map->callback = callback; + map->callback_arg = callback_arg; + } + + error = _bus_dmamap_load_buffer(dmat, map, buf, buflen, NULL, flags, + &lastaddr, dmat->segments, &nsegs, 1); + + CTR5(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d nsegs %d", + __func__, dmat, dmat->flags, error, nsegs + 1); + + if (error == EINPROGRESS) { + return (error); + } + + if (error) + (*callback)(callback_arg, dmat->segments, 0, error); + else + (*callback)(callback_arg, dmat->segments, nsegs + 1, 0); + + /* + * Return ENOMEM to the caller so that it can pass it up the stack. + * This error only happens when NOWAIT is set, so deferal is disabled. + */ + if (error == ENOMEM) + return (error); + + return (0); +} + + +/* + * Like _bus_dmamap_load(), but for mbufs. + */ +int +bus_dmamap_load_mbuf(bus_dma_tag_t dmat, bus_dmamap_t map, + struct mbuf *m0, + bus_dmamap_callback2_t *callback, void *callback_arg, + int flags) +{ + int nsegs, error; + + M_ASSERTPKTHDR(m0); + + flags |= BUS_DMA_NOWAIT; + nsegs = 0; + error = 0; + if (m0->m_pkthdr.len <= dmat->maxsize) { + int first = 1; + bus_addr_t lastaddr = 0; + struct mbuf *m; + + for (m = m0; m != NULL && error == 0; m = m->m_next) { + if (m->m_len > 0) { + error = _bus_dmamap_load_buffer(dmat, map, + m->m_data, m->m_len, + NULL, flags, &lastaddr, + dmat->segments, &nsegs, first); + first = 0; + } + } + } else { + error = EINVAL; + } + + if (error) { + /* force "no valid mappings" in callback */ + (*callback)(callback_arg, dmat->segments, 0, 0, error); + } else { + (*callback)(callback_arg, dmat->segments, + nsegs+1, m0->m_pkthdr.len, error); + } + CTR5(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d nsegs %d", + __func__, dmat, dmat->flags, error, nsegs + 1); + return (error); +} + +int +bus_dmamap_load_mbuf_sg(bus_dma_tag_t dmat, bus_dmamap_t map, + struct mbuf *m0, bus_dma_segment_t *segs, int *nsegs, + int flags) +{ + int error; + + M_ASSERTPKTHDR(m0); + + flags |= BUS_DMA_NOWAIT; + *nsegs = 0; + error = 0; + if (m0->m_pkthdr.len <= dmat->maxsize) { + int first = 1; + bus_addr_t lastaddr = 0; + struct mbuf *m; + + for (m = m0; m != NULL && error == 0; m = m->m_next) { + if (m->m_len > 0) { + error = _bus_dmamap_load_buffer(dmat, map, + m->m_data, m->m_len, + NULL, flags, &lastaddr, + segs, nsegs, first); + first = 0; + } + } + } else { + error = EINVAL; + } + + /* XXX FIXME: Having to increment nsegs is really annoying */ + ++*nsegs; + CTR5(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d nsegs %d", + __func__, dmat, dmat->flags, error, *nsegs); + return (error); +} + +/* + * Like _bus_dmamap_load(), but for uios. + */ +int +bus_dmamap_load_uio(bus_dma_tag_t dmat, bus_dmamap_t map, + struct uio *uio, + bus_dmamap_callback2_t *callback, void *callback_arg, + int flags) +{ + bus_addr_t lastaddr = 0; + int nsegs, error, first, i; + bus_size_t resid; + struct iovec *iov; + pmap_t pmap; + + flags |= BUS_DMA_NOWAIT; + resid = uio->uio_resid; + iov = uio->uio_iov; + + if (uio->uio_segflg == UIO_USERSPACE) { + KASSERT(uio->uio_td != NULL, + ("bus_dmamap_load_uio: USERSPACE but no proc")); + pmap = vmspace_pmap(uio->uio_td->td_proc->p_vmspace); + } else + pmap = NULL; + + nsegs = 0; + error = 0; + first = 1; + for (i = 0; i < uio->uio_iovcnt && resid != 0 && !error; i++) { + /* + * Now at the first iovec to load. Load each iovec + * until we have exhausted the residual count. + */ + bus_size_t minlen = + resid < iov[i].iov_len ? resid : iov[i].iov_len; + caddr_t addr = (caddr_t) iov[i].iov_base; + + if (minlen > 0) { + error = _bus_dmamap_load_buffer(dmat, map, + addr, minlen, pmap, flags, &lastaddr, + dmat->segments, &nsegs, first); + first = 0; + + resid -= minlen; + } + } + + if (error) { + /* force "no valid mappings" in callback */ + (*callback)(callback_arg, dmat->segments, 0, 0, error); + } else { + (*callback)(callback_arg, dmat->segments, + nsegs+1, uio->uio_resid, error); + } + CTR5(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d nsegs %d", + __func__, dmat, dmat->flags, error, nsegs + 1); + return (error); +} + +/* + * Release the mapping held by map. + */ +void +_bus_dmamap_unload(bus_dma_tag_t dmat, bus_dmamap_t map) +{ + struct bounce_page *bpage; + + while ((bpage = STAILQ_FIRST(&map->bpages)) != NULL) { + STAILQ_REMOVE_HEAD(&map->bpages, links); + free_bounce_page(dmat, bpage); + } +} + +void +_bus_dmamap_sync(bus_dma_tag_t dmat, bus_dmamap_t map, bus_dmasync_op_t op) +{ + struct bounce_page *bpage; + + if ((bpage = STAILQ_FIRST(&map->bpages)) != NULL) { + /* + * Handle data bouncing. We might also + * want to add support for invalidating + * the caches on broken hardware + */ + CTR4(KTR_BUSDMA, "%s: tag %p tag flags 0x%x op 0x%x " + "performing bounce", __func__, op, dmat, dmat->flags); + + if (op & BUS_DMASYNC_PREWRITE) { + while (bpage != NULL) { + bcopy((void *)bpage->datavaddr, + (void *)bpage->vaddr, + bpage->datacount); + bpage = STAILQ_NEXT(bpage, links); + } + dmat->bounce_zone->total_bounced++; + } + + if (op & BUS_DMASYNC_POSTREAD) { + while (bpage != NULL) { + bcopy((void *)bpage->vaddr, + (void *)bpage->datavaddr, + bpage->datacount); + bpage = STAILQ_NEXT(bpage, links); + } + dmat->bounce_zone->total_bounced++; + } + } +} + +static void +init_bounce_pages(void *dummy __unused) +{ + + total_bpages = 0; + STAILQ_INIT(&bounce_zone_list); + STAILQ_INIT(&bounce_map_waitinglist); + STAILQ_INIT(&bounce_map_callbacklist); + mtx_init(&bounce_lock, "bounce pages lock", NULL, MTX_DEF); +} +SYSINIT(bpages, SI_SUB_LOCK, SI_ORDER_ANY, init_bounce_pages, NULL); + +static struct sysctl_ctx_list * +busdma_sysctl_tree(struct bounce_zone *bz) +{ + return (&bz->sysctl_tree); +} + +static struct sysctl_oid * +busdma_sysctl_tree_top(struct bounce_zone *bz) +{ + return (bz->sysctl_tree_top); +} + +static int +alloc_bounce_zone(bus_dma_tag_t dmat) +{ + struct bounce_zone *bz; + + /* Check to see if we already have a suitable zone */ + STAILQ_FOREACH(bz, &bounce_zone_list, links) { + if ((dmat->alignment <= bz->alignment) + && (dmat->lowaddr >= bz->lowaddr)) { + dmat->bounce_zone = bz; + return (0); + } + } + + if ((bz = (struct bounce_zone *)malloc(sizeof(*bz), M_DEVBUF, + M_NOWAIT | M_ZERO)) == NULL) + return (ENOMEM); + + STAILQ_INIT(&bz->bounce_page_list); *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@FreeBSD.ORG Wed May 12 04:45:00 2010 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 3FB8F1065673; Wed, 12 May 2010 04:45:00 +0000 (UTC) (envelope-from marcel@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [69.147.83.44]) by mx1.freebsd.org (Postfix) with ESMTP id 188C38FC19; Wed, 12 May 2010 04:45: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 o4C4ixSI097746; Wed, 12 May 2010 04:44:59 GMT (envelope-from marcel@svn.freebsd.org) Received: (from marcel@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4C4ixjE097744; Wed, 12 May 2010 04:44:59 GMT (envelope-from marcel@svn.freebsd.org) Message-Id: <201005120444.o4C4ixjE097744@svn.freebsd.org> From: Marcel Moolenaar Date: Wed, 12 May 2010 04:44: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: r207952 - projects/altix/sys/kern 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, 12 May 2010 04:45:00 -0000 Author: marcel Date: Wed May 12 04:44:59 2010 New Revision: 207952 URL: http://svn.freebsd.org/changeset/base/207952 Log: Improve on style(9) before hacking. Modified: projects/altix/sys/kern/subr_busdma.c Modified: projects/altix/sys/kern/subr_busdma.c ============================================================================== --- projects/altix/sys/kern/subr_busdma.c Wed May 12 04:42:36 2010 (r207951) +++ projects/altix/sys/kern/subr_busdma.c Wed May 12 04:44:59 2010 (r207952) @@ -1,4 +1,5 @@ /*- + * Copyright (c) 2010 Marcel Moolenaar * Copyright (c) 1997, 1998 Justin T. Gibbs. * All rights reserved. * @@ -52,6 +53,9 @@ __FBSDID("$FreeBSD$"); #define MAX_BPAGES 8192 +#define BUS_DMA_COULD_BOUNCE BUS_DMA_BUS3 +#define BUS_DMA_MIN_ALLOC_COMP BUS_DMA_BUS4 + struct bounce_zone; struct bus_dma_tag { @@ -131,9 +135,9 @@ static void init_bounce_pages(void *dumm static int alloc_bounce_zone(bus_dma_tag_t dmat); static int alloc_bounce_pages(bus_dma_tag_t dmat, u_int numpages); static int reserve_bounce_pages(bus_dma_tag_t dmat, bus_dmamap_t map, - int commit); + int commit); static bus_addr_t add_bounce_page(bus_dma_tag_t dmat, bus_dmamap_t map, - vm_offset_t vaddr, bus_size_t size); + vm_offset_t vaddr, bus_size_t size); static void free_bounce_page(bus_dma_tag_t dmat, struct bounce_page *bpage); static __inline int run_filter(bus_dma_tag_t dmat, bus_addr_t paddr); @@ -151,16 +155,16 @@ run_filter(bus_dma_tag_t dmat, bus_addr_ int retval; retval = 0; - do { - if (((paddr > dmat->lowaddr && paddr <= dmat->highaddr) - || ((paddr & (dmat->alignment - 1)) != 0)) - && (dmat->filter == NULL - || (*dmat->filter)(dmat->filterarg, paddr) != 0)) + if (((paddr > dmat->lowaddr && paddr <= dmat->highaddr) || + (paddr & (dmat->alignment - 1)) != 0) && + (dmat->filter == NULL || + (*dmat->filter)(dmat->filterarg, paddr) != 0)) retval = 1; dmat = dmat->parent; } while (retval == 0 && dmat != NULL); + return (retval); } @@ -200,18 +204,15 @@ dflt_lock(void *arg, bus_dma_lock_op_t o panic("driver error: busdma dflt_lock called"); } -#define BUS_DMA_COULD_BOUNCE BUS_DMA_BUS3 -#define BUS_DMA_MIN_ALLOC_COMP BUS_DMA_BUS4 /* * Allocate a device specific dma_tag. */ int bus_dma_tag_create(bus_dma_tag_t parent, bus_size_t alignment, - bus_size_t boundary, bus_addr_t lowaddr, - bus_addr_t highaddr, bus_dma_filter_t *filter, - void *filterarg, bus_size_t maxsize, int nsegments, - bus_size_t maxsegsz, int flags, bus_dma_lock_t *lockfunc, - void *lockfuncarg, bus_dma_tag_t *dmat) + bus_size_t boundary, bus_addr_t lowaddr, bus_addr_t highaddr, + bus_dma_filter_t *filter, void *filterarg, bus_size_t maxsize, + int nsegments, bus_size_t maxsegsz, int flags, bus_dma_lock_t *lockfunc, + void *lockfuncarg, bus_dma_tag_t *dmat) { bus_dma_tag_t newtag; int error = 0; @@ -279,8 +280,8 @@ bus_dma_tag_create(bus_dma_tag_t parent, atomic_add_int(&parent->ref_count, 1); } - if (newtag->lowaddr < ptoa((vm_paddr_t)Maxmem) - || newtag->alignment > 1) + if (newtag->lowaddr < ptoa((vm_paddr_t)Maxmem) || + newtag->alignment > 1) newtag->flags |= BUS_DMA_COULD_BOUNCE; if (((newtag->flags & BUS_DMA_COULD_BOUNCE) != 0) && @@ -353,6 +354,7 @@ bus_dma_tag_destroy(bus_dma_tag_t dmat) dmat = NULL; } } + out: CTR3(KTR_BUSDMA, "%s tag %p error %d", __func__, dmat_copy, error); return (error); @@ -416,8 +418,8 @@ bus_dmamap_create(bus_dma_tag_t dmat, in maxpages = MAX_BPAGES; else maxpages = MIN(MAX_BPAGES, Maxmem -atop(dmat->lowaddr)); - if ((dmat->flags & BUS_DMA_MIN_ALLOC_COMP) == 0 - || (bz->map_count > 0 && bz->total_bpages < maxpages)) { + if ((dmat->flags & BUS_DMA_MIN_ALLOC_COMP) == 0 || + (bz->map_count > 0 && bz->total_bpages < maxpages)) { int pages; pages = MAX(atop(dmat->maxsize), 1); @@ -474,7 +476,7 @@ bus_dmamap_destroy(bus_dma_tag_t dmat, b */ int bus_dmamem_alloc(bus_dma_tag_t dmat, void** vaddr, int flags, - bus_dmamap_t *mapp) + bus_dmamap_t *mapp) { int mflags; @@ -518,8 +520,8 @@ bus_dmamem_alloc(bus_dma_tag_t dmat, voi * multi-seg allocations yet though. * XXX Certain AGP hardware does. */ - *vaddr = contigmalloc(dmat->maxsize, M_DEVBUF, mflags, - 0ul, dmat->lowaddr, dmat->alignment? dmat->alignment : 1ul, + *vaddr = contigmalloc(dmat->maxsize, M_DEVBUF, mflags, 0ul, + dmat->lowaddr, dmat->alignment? dmat->alignment : 1ul, dmat->boundary); } if (*vaddr == NULL) { @@ -568,15 +570,9 @@ bus_dmamem_free(bus_dma_tag_t dmat, void * first indicates if this is the first invocation of this function. */ static __inline int -_bus_dmamap_load_buffer(bus_dma_tag_t dmat, - bus_dmamap_t map, - void *buf, bus_size_t buflen, - pmap_t pmap, - int flags, - bus_addr_t *lastaddrp, - bus_dma_segment_t *segs, - int *segp, - int first) +_bus_dmamap_load_buffer(bus_dma_tag_t dmat, bus_dmamap_t map, void *buf, + bus_size_t buflen, pmap_t pmap, int flags, bus_addr_t *lastaddrp, + bus_dma_segment_t *segs, int *segp, int first) { bus_size_t sgsize; bus_addr_t curaddr, lastaddr, baddr, bmask; @@ -587,8 +583,8 @@ _bus_dmamap_load_buffer(bus_dma_tag_t dm if (map == NULL) map = &nobounce_dmamap; - if ((map != &nobounce_dmamap && map->pagesneeded == 0) - && ((dmat->flags & BUS_DMA_COULD_BOUNCE) != 0)) { + if ((map != &nobounce_dmamap && map->pagesneeded == 0) && + ((dmat->flags & BUS_DMA_COULD_BOUNCE) != 0)) { vm_offset_t vendaddr; CTR4(KTR_BUSDMA, "lowaddr= %d Maxmem= %d, boundary= %d, " @@ -721,8 +717,8 @@ _bus_dmamap_load_buffer(bus_dma_tag_t dm */ int bus_dmamap_load(bus_dma_tag_t dmat, bus_dmamap_t map, void *buf, - bus_size_t buflen, bus_dmamap_callback_t *callback, - void *callback_arg, int flags) + bus_size_t buflen, bus_dmamap_callback_t *callback, void *callback_arg, + int flags) { bus_addr_t lastaddr = 0; int error, nsegs = 0; @@ -763,10 +759,8 @@ bus_dmamap_load(bus_dma_tag_t dmat, bus_ * Like _bus_dmamap_load(), but for mbufs. */ int -bus_dmamap_load_mbuf(bus_dma_tag_t dmat, bus_dmamap_t map, - struct mbuf *m0, - bus_dmamap_callback2_t *callback, void *callback_arg, - int flags) +bus_dmamap_load_mbuf(bus_dma_tag_t dmat, bus_dmamap_t map, struct mbuf *m0, + bus_dmamap_callback2_t *callback, void *callback_arg, int flags) { int nsegs, error; @@ -806,9 +800,8 @@ bus_dmamap_load_mbuf(bus_dma_tag_t dmat, } int -bus_dmamap_load_mbuf_sg(bus_dma_tag_t dmat, bus_dmamap_t map, - struct mbuf *m0, bus_dma_segment_t *segs, int *nsegs, - int flags) +bus_dmamap_load_mbuf_sg(bus_dma_tag_t dmat, bus_dmamap_t map, struct mbuf *m0, + bus_dma_segment_t *segs, int *nsegs, int flags) { int error; @@ -846,10 +839,8 @@ bus_dmamap_load_mbuf_sg(bus_dma_tag_t dm * Like _bus_dmamap_load(), but for uios. */ int -bus_dmamap_load_uio(bus_dma_tag_t dmat, bus_dmamap_t map, - struct uio *uio, - bus_dmamap_callback2_t *callback, void *callback_arg, - int flags) +bus_dmamap_load_uio(bus_dma_tag_t dmat, bus_dmamap_t map, struct uio *uio, + bus_dmamap_callback2_t *callback, void *callback_arg, int flags) { bus_addr_t lastaddr = 0; int nsegs, error, first, i; @@ -983,8 +974,8 @@ alloc_bounce_zone(bus_dma_tag_t dmat) /* Check to see if we already have a suitable zone */ STAILQ_FOREACH(bz, &bounce_zone_list, links) { - if ((dmat->alignment <= bz->alignment) - && (dmat->lowaddr >= bz->lowaddr)) { + if ((dmat->alignment <= bz->alignment) && + (dmat->lowaddr >= bz->lowaddr)) { dmat->bounce_zone = bz; return (0); } @@ -1062,15 +1053,12 @@ alloc_bounce_pages(bus_dma_tag_t dmat, u struct bounce_page *bpage; bpage = (struct bounce_page *)malloc(sizeof(*bpage), M_DEVBUF, - M_NOWAIT | M_ZERO); + M_NOWAIT | M_ZERO); if (bpage == NULL) break; bpage->vaddr = (vm_offset_t)contigmalloc(PAGE_SIZE, M_DEVBUF, - M_NOWAIT, 0ul, - bz->lowaddr, - PAGE_SIZE, - 0); + M_NOWAIT, 0ul, bz->lowaddr, PAGE_SIZE, 0); if (bpage->vaddr == 0) { free(bpage, M_DEVBUF); break; @@ -1109,7 +1097,7 @@ reserve_bounce_pages(bus_dma_tag_t dmat, static bus_addr_t add_bounce_page(bus_dma_tag_t dmat, bus_dmamap_t map, vm_offset_t vaddr, - bus_size_t size) + bus_size_t size) { struct bounce_zone *bz; struct bounce_page *bpage; From owner-svn-src-projects@FreeBSD.ORG Wed May 12 12:49:32 2010 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 33AAF1065672; Wed, 12 May 2010 12:49:32 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [69.147.83.44]) by mx1.freebsd.org (Postfix) with ESMTP id 246738FC1F; Wed, 12 May 2010 12:49:32 +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 o4CCnVXr011831; Wed, 12 May 2010 12:49:31 GMT (envelope-from rdivacky@svn.freebsd.org) Received: (from rdivacky@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4CCnVo7011830; Wed, 12 May 2010 12:49:31 GMT (envelope-from rdivacky@svn.freebsd.org) Message-Id: <201005121249.o4CCnVo7011830@svn.freebsd.org> From: Roman Divacky Date: Wed, 12 May 2010 12:49:31 +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: r207960 - projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend 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, 12 May 2010 12:49:32 -0000 Author: rdivacky Date: Wed May 12 12:49:31 2010 New Revision: 207960 URL: http://svn.freebsd.org/changeset/base/207960 Log: Add /usr/include/c++/4.2/backward to the standard C++ include paths. Modified: projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/InitHeaderSearch.cpp Modified: projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/InitHeaderSearch.cpp ============================================================================== --- projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/InitHeaderSearch.cpp Wed May 12 11:49:15 2010 (r207959) +++ projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/InitHeaderSearch.cpp Wed May 12 12:49:31 2010 (r207960) @@ -638,6 +638,7 @@ void InitHeaderSearch::AddDefaultCPlusPl break; case llvm::Triple::FreeBSD: AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.2", "", "", "", triple); + AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.2/backward", "", "", "", triple); break; case llvm::Triple::Solaris: // Solaris - Fall though.. From owner-svn-src-projects@FreeBSD.ORG Wed May 12 12:52:39 2010 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 662331065672; Wed, 12 May 2010 12:52:39 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [69.147.83.44]) by mx1.freebsd.org (Postfix) with ESMTP id 575A48FC1B; Wed, 12 May 2010 12:52:39 +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 o4CCqdo3012564; Wed, 12 May 2010 12:52:39 GMT (envelope-from rdivacky@svn.freebsd.org) Received: (from rdivacky@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4CCqdeX012562; Wed, 12 May 2010 12:52:39 GMT (envelope-from rdivacky@svn.freebsd.org) Message-Id: <201005121252.o4CCqdeX012562@svn.freebsd.org> From: Roman Divacky Date: Wed, 12 May 2010 12:52:39 +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: r207961 - projects/clangbsd 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, 12 May 2010 12:52:39 -0000 Author: rdivacky Date: Wed May 12 12:52:39 2010 New Revision: 207961 URL: http://svn.freebsd.org/changeset/base/207961 Log: Switch to using -isysroot instead of listing all the (possible) include paths with -isystem. Suggested by: ed Modified: projects/clangbsd/Makefile.inc1 Modified: projects/clangbsd/Makefile.inc1 ============================================================================== --- projects/clangbsd/Makefile.inc1 Wed May 12 12:49:31 2010 (r207960) +++ projects/clangbsd/Makefile.inc1 Wed May 12 12:52:39 2010 (r207961) @@ -252,17 +252,14 @@ XMAKE= TOOLS_PREFIX=${WORLDTMP} ${BMAKE TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ -DWITHOUT_GDB -CCMMINTRIN_CLANG= `env PATH=${TMPPATH} ${CC} --version | grep -Fq clang && echo -isystem ${WORLDTMP}/usr/include/clang/1.5` -CXXMMINTRIN_CLANG= `env PATH=${TMPPATH} ${CXX} --version | grep -Fq clang && echo -isystem ${WORLDTMP}/usr/include/clang/1.5` - # world stage WMAKEENV= ${CROSSENV} \ _SHLIBDIRPREFIX=${WORLDTMP} \ VERSION="${VERSION}" \ INSTALL="sh ${.CURDIR}/tools/install.sh" \ PATH=${TMPPATH} \ - CC="${CC} ${CCMMINTRIN_CLANG} -isystem ${WORLDTMP}/usr/include -B${WORLDTMP}/usr/lib/ -L${WORLDTMP}/usr/lib/" \ - CXX="${CXX} ${CXXMMINTRIN_CLANG} -isystem ${WORLDTMP}/usr/include -isystem ${WORLDTMP}/include/c++/4.2 -isystem ${WORLDTMP}/include/c++/4.2/backward -B${WORLDTMP}/usr/lib/ -L${WORLDTMP}/usr/lib/" + CC="${CC} -isysroot ${WORLDTMP} -B${WORLDTMP}/usr/lib/ -L${WORLDTMP}/usr/lib/" \ + CXX="${CXX} -isysroot ${WORLDTMP} -B${WORLDTMP}/usr/lib/ -L${WORLDTMP}/usr/lib/" .if ${MK_CDDL} == "no" || defined(NO_CTF) WMAKEENV+= NO_CTF=1 From owner-svn-src-projects@FreeBSD.ORG Wed May 12 16:01:49 2010 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 42EB0106566C; Wed, 12 May 2010 16:01:49 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [69.147.83.44]) by mx1.freebsd.org (Postfix) with ESMTP id 1A39E8FC12; Wed, 12 May 2010 16:01:49 +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 o4CG1mVo054471; Wed, 12 May 2010 16:01:49 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4CG1mXr054470; Wed, 12 May 2010 16:01:48 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201005121601.o4CG1mXr054470@svn.freebsd.org> From: Ed Schouten Date: Wed, 12 May 2010 16:01:48 +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: r207965 - projects/clangbsd-import 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, 12 May 2010 16:01:49 -0000 Author: ed Date: Wed May 12 16:01:48 2010 New Revision: 207965 URL: http://svn.freebsd.org/changeset/base/207965 Log: Behold... a new Clang branch. This branch will be a preparation for integrating Clang into FreeBSD HEAD, where it only installs clang in /usr/bin. It will not bootstrap using Clang. Added: - copied from r207964, projects/clangbsd/ Directory Properties: projects/clangbsd-import/ (props changed) From owner-svn-src-projects@FreeBSD.ORG Wed May 12 16:17:37 2010 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 074421065676; Wed, 12 May 2010 16:17:37 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [69.147.83.44]) by mx1.freebsd.org (Postfix) with ESMTP id D2DC68FC28; Wed, 12 May 2010 16:17: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 o4CGHa54058146; Wed, 12 May 2010 16:17:36 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4CGHaI1058145; Wed, 12 May 2010 16:17:36 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201005121617.o4CGHaI1058145@svn.freebsd.org> From: Ed Schouten Date: Wed, 12 May 2010 16:17: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: r207967 - projects/clangbsd-import 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, 12 May 2010 16:17:37 -0000 Author: ed Date: Wed May 12 16:17:36 2010 New Revision: 207967 URL: http://svn.freebsd.org/changeset/base/207967 Log: Undo branching. We need to copy head. Deleted: projects/clangbsd-import/ From owner-svn-src-projects@FreeBSD.ORG Wed May 12 16:17:54 2010 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id F08AC1065688; Wed, 12 May 2010 16:17:54 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [69.147.83.44]) by mx1.freebsd.org (Postfix) with ESMTP id C809D8FC13; Wed, 12 May 2010 16:17: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 o4CGHsH9058249; Wed, 12 May 2010 16:17:54 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4CGHsLk058248; Wed, 12 May 2010 16:17:54 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201005121617.o4CGHsLk058248@svn.freebsd.org> From: Ed Schouten Date: Wed, 12 May 2010 16:17: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: r207968 - projects/clangbsd-import 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, 12 May 2010 16:17:55 -0000 Author: ed Date: Wed May 12 16:17:54 2010 New Revision: 207968 URL: http://svn.freebsd.org/changeset/base/207968 Log: Branch off head. Added: - copied from r207967, head/ Directory Properties: projects/clangbsd-import/ (props changed) From owner-svn-src-projects@FreeBSD.ORG Wed May 12 16:28:41 2010 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id A24CD1065673; Wed, 12 May 2010 16:28:41 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [69.147.83.44]) by mx1.freebsd.org (Postfix) with ESMTP id 9261C8FC0A; Wed, 12 May 2010 16:28:41 +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 o4CGSfG4060714; Wed, 12 May 2010 16:28:41 GMT (envelope-from rdivacky@svn.freebsd.org) Received: (from rdivacky@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4CGSfHT060712; Wed, 12 May 2010 16:28:41 GMT (envelope-from rdivacky@svn.freebsd.org) Message-Id: <201005121628.o4CGSfHT060712@svn.freebsd.org> From: Roman Divacky Date: Wed, 12 May 2010 16:28:41 +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: r207969 - projects/clangbsd/usr.bin/clang/bin/clang 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, 12 May 2010 16:28:41 -0000 Author: rdivacky Date: Wed May 12 16:28:41 2010 New Revision: 207969 URL: http://svn.freebsd.org/changeset/base/207969 Log: Link clang++ all the time and the others when CLANG_IS_CC is specified. Reviewed by: ed Modified: projects/clangbsd/usr.bin/clang/bin/clang/Makefile Modified: projects/clangbsd/usr.bin/clang/bin/clang/Makefile ============================================================================== --- projects/clangbsd/usr.bin/clang/bin/clang/Makefile Wed May 12 16:17:54 2010 (r207968) +++ projects/clangbsd/usr.bin/clang/bin/clang/Makefile Wed May 12 16:28:41 2010 (r207969) @@ -8,11 +8,11 @@ SRCDIR= tools/clang/tools/driver SRCS= cc1_main.cpp driver.cpp MAN= +LINKS= ${BINDIR}/clang ${BINDIR}/clang++ .if ${MK_CLANG_IS_CC} != "no" -LINKS= ${BINDIR}/clang ${BINDIR}/cc \ +LINKS+= ${BINDIR}/clang ${BINDIR}/cc \ ${BINDIR}/clang ${BINDIR}/CC \ - ${BINDIR}/clang ${BINDIR}/c++ \ - ${BINDIR}/clang ${BINDIR}/clang++ + ${BINDIR}/clang ${BINDIR}/c++ .endif TGHDRS= DiagnosticCommonKinds DiagnosticDriverKinds \ From owner-svn-src-projects@FreeBSD.ORG Wed May 12 17:11:09 2010 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 78FAF106566C; Wed, 12 May 2010 17:11:09 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 5028F8FC0A; Wed, 12 May 2010 17:11:09 +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 o4CHB9x6070245; Wed, 12 May 2010 17:11:09 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4CHB9AY070244; Wed, 12 May 2010 17:11:09 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201005121711.o4CHB9AY070244@svn.freebsd.org> From: Ed Schouten Date: Wed, 12 May 2010 17:11: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: r207973 - projects/clangbsd-import/contrib/llvm 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, 12 May 2010 17:11:09 -0000 Author: ed Date: Wed May 12 17:11:09 2010 New Revision: 207973 URL: http://svn.freebsd.org/changeset/base/207973 Log: Add LLVM. Added: projects/clangbsd-import/contrib/llvm/ - copied from r207972, vendor/llvm/dist/ From owner-svn-src-projects@FreeBSD.ORG Wed May 12 17:11:39 2010 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 106321065672; Wed, 12 May 2010 17:11:39 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id DBC908FC17; Wed, 12 May 2010 17:11: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 o4CHBcwl070382; Wed, 12 May 2010 17:11:38 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4CHBcOS070381; Wed, 12 May 2010 17:11:38 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201005121711.o4CHBcOS070381@svn.freebsd.org> From: Ed Schouten Date: Wed, 12 May 2010 17:11: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: r207974 - projects/clangbsd-import/contrib/llvm/tools/clang 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, 12 May 2010 17:11:39 -0000 Author: ed Date: Wed May 12 17:11:38 2010 New Revision: 207974 URL: http://svn.freebsd.org/changeset/base/207974 Log: Add Clang. Added: projects/clangbsd-import/contrib/llvm/tools/clang/ - copied from r207973, vendor/clang/dist/ From owner-svn-src-projects@FreeBSD.ORG Wed May 12 18:16:09 2010 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 26942106564A; Wed, 12 May 2010 18:16:09 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id F0D6F8FC16; Wed, 12 May 2010 18:16:08 +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 o4CIG8lc085273; Wed, 12 May 2010 18:16:08 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4CIG89d085272; Wed, 12 May 2010 18:16:08 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201005121816.o4CIG89d085272@svn.freebsd.org> From: Ed Schouten Date: Wed, 12 May 2010 18:16:08 +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: r207984 - in projects/clangbsd-import/contrib/llvm: docs test tools/clang/docs tools/clang/test tools/clang/www 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, 12 May 2010 18:16:09 -0000 Author: ed Date: Wed May 12 18:16:08 2010 New Revision: 207984 URL: http://svn.freebsd.org/changeset/base/207984 Log: Conserve disk space. Deleted: projects/clangbsd-import/contrib/llvm/docs/ projects/clangbsd-import/contrib/llvm/test/ projects/clangbsd-import/contrib/llvm/tools/clang/docs/ projects/clangbsd-import/contrib/llvm/tools/clang/test/ projects/clangbsd-import/contrib/llvm/tools/clang/www/ From owner-svn-src-projects@FreeBSD.ORG Wed May 12 18:34:09 2010 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 9E41B106567C; Wed, 12 May 2010 18:34:09 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 896268FC24; Wed, 12 May 2010 18:34:09 +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 o4CIY9xN089416; Wed, 12 May 2010 18:34:09 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4CIY8R1089337; Wed, 12 May 2010 18:34:08 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201005121834.o4CIY8R1089337@svn.freebsd.org> From: Ed Schouten Date: Wed, 12 May 2010 18:34:08 +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: r207986 - in projects/clangbsd-import: . etc/mtree share/mk usr.bin usr.bin/clang usr.bin/clang/bin usr.bin/clang/bin/clang usr.bin/clang/bin/tblgen usr.bin/clang/include usr.bin/clang/... 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, 12 May 2010 18:34:09 -0000 Author: ed Date: Wed May 12 18:34:08 2010 New Revision: 207986 URL: http://svn.freebsd.org/changeset/base/207986 Log: Add the Clang Makefile infrastructure. Added: projects/clangbsd-import/usr.bin/clang/ projects/clangbsd-import/usr.bin/clang/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/bin/ projects/clangbsd-import/usr.bin/clang/bin/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/bin/clang/ projects/clangbsd-import/usr.bin/clang/bin/clang/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/bin/tblgen/ projects/clangbsd-import/usr.bin/clang/bin/tblgen/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/clang.build.mk (contents, props changed) projects/clangbsd-import/usr.bin/clang/clang.lib.mk (contents, props changed) projects/clangbsd-import/usr.bin/clang/clang.prog.mk (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/ projects/clangbsd-import/usr.bin/clang/include/ARMGenAsmWriter.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/ARMGenCallingConv.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/ARMGenCodeEmitter.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/ARMGenDAGISel.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/ARMGenInstrInfo.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/ARMGenInstrNames.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/ARMGenRegisterInfo.h.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/ARMGenRegisterInfo.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/ARMGenRegisterNames.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/ARMGenSubtarget.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/IA64GenAsmWriter.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/IA64GenDAGISel.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/IA64GenInstrInfo.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/IA64GenInstrNames.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/IA64GenRegisterInfo.h.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/IA64GenRegisterInfo.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/IA64GenRegisterNames.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/MipsGenAsmWriter.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/MipsGenCallingConv.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/MipsGenDAGISel.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/MipsGenInstrInfo.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/MipsGenInstrNames.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/MipsGenRegisterInfo.h.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/MipsGenRegisterInfo.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/MipsGenRegisterNames.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/MipsGenSubtarget.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/PPCGenAsmWriter.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/PPCGenCallingConv.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/PPCGenCodeEmitter.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/PPCGenDAGISel.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/PPCGenInstrInfo.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/PPCGenInstrNames.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/PPCGenRegisterInfo.h.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/PPCGenRegisterInfo.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/PPCGenRegisterNames.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/PPCGenSubtarget.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/X86GenAsmMatcher.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/X86GenAsmWriter.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/X86GenAsmWriter1.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/X86GenCallingConv.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/X86GenDAGISel.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/X86GenFastISel.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/X86GenInstrInfo.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/X86GenInstrNames.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/X86GenRegisterInfo.h.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/X86GenRegisterInfo.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/X86GenRegisterNames.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/X86GenSubtarget.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/clang/ projects/clangbsd-import/usr.bin/clang/include/clang/Basic/ projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticASTKinds.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticAnalysisKinds.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticCommonKinds.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticDriverKinds.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticFrontendKinds.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticGroups.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticLexKinds.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticParseKinds.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticSemaKinds.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/clang/Driver/ projects/clangbsd-import/usr.bin/clang/include/clang/Driver/CC1Options.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/clang/Driver/Options.inc (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/llvm/ projects/clangbsd-import/usr.bin/clang/include/llvm/ADT/ projects/clangbsd-import/usr.bin/clang/include/llvm/ADT/iterator.h (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/llvm/Config/ projects/clangbsd-import/usr.bin/clang/include/llvm/Config/AsmParsers.def (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/llvm/Config/AsmPrinters.def (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/llvm/Config/Disassemblers.def (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/llvm/Config/Targets.def (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/llvm/Config/config.h (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/llvm/Intrinsics.gen (contents, props changed) projects/clangbsd-import/usr.bin/clang/include/llvm/System/ projects/clangbsd-import/usr.bin/clang/include/llvm/System/DataTypes.h (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/ projects/clangbsd-import/usr.bin/clang/lib/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libclanganalysis/ projects/clangbsd-import/usr.bin/clang/lib/libclanganalysis/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libclangast/ projects/clangbsd-import/usr.bin/clang/lib/libclangast/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libclangbasic/ projects/clangbsd-import/usr.bin/clang/lib/libclangbasic/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libclangchecker/ projects/clangbsd-import/usr.bin/clang/lib/libclangchecker/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libclangcodegen/ projects/clangbsd-import/usr.bin/clang/lib/libclangcodegen/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libclangdriver/ projects/clangbsd-import/usr.bin/clang/lib/libclangdriver/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libclangfrontend/ projects/clangbsd-import/usr.bin/clang/lib/libclangfrontend/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libclanglex/ projects/clangbsd-import/usr.bin/clang/lib/libclanglex/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libclangparse/ projects/clangbsd-import/usr.bin/clang/lib/libclangparse/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libclangrewrite/ projects/clangbsd-import/usr.bin/clang/lib/libclangrewrite/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libclangsema/ projects/clangbsd-import/usr.bin/clang/lib/libclangsema/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmanalysis/ projects/clangbsd-import/usr.bin/clang/lib/libllvmanalysis/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmarmasmparser/ projects/clangbsd-import/usr.bin/clang/lib/libllvmarmasmparser/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmarmasmprinter/ projects/clangbsd-import/usr.bin/clang/lib/libllvmarmasmprinter/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmarmcodegen/ projects/clangbsd-import/usr.bin/clang/lib/libllvmarmcodegen/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmarminfo/ projects/clangbsd-import/usr.bin/clang/lib/libllvmarminfo/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmasmprinter/ projects/clangbsd-import/usr.bin/clang/lib/libllvmasmprinter/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmbitreader/ projects/clangbsd-import/usr.bin/clang/lib/libllvmbitreader/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmbitwriter/ projects/clangbsd-import/usr.bin/clang/lib/libllvmbitwriter/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmcodegen/ projects/clangbsd-import/usr.bin/clang/lib/libllvmcodegen/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmcore/ projects/clangbsd-import/usr.bin/clang/lib/libllvmcore/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvminstcombine/ projects/clangbsd-import/usr.bin/clang/lib/libllvminstcombine/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmipa/ projects/clangbsd-import/usr.bin/clang/lib/libllvmipa/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmipo/ projects/clangbsd-import/usr.bin/clang/lib/libllvmipo/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmmc/ projects/clangbsd-import/usr.bin/clang/lib/libllvmmc/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmmcparser/ projects/clangbsd-import/usr.bin/clang/lib/libllvmmcparser/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmmipsasmprinter/ projects/clangbsd-import/usr.bin/clang/lib/libllvmmipsasmprinter/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmmipscodegen/ projects/clangbsd-import/usr.bin/clang/lib/libllvmmipscodegen/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmmipsinfo/ projects/clangbsd-import/usr.bin/clang/lib/libllvmmipsinfo/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmpowerpcasmprinter/ projects/clangbsd-import/usr.bin/clang/lib/libllvmpowerpcasmprinter/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmpowerpccodegen/ projects/clangbsd-import/usr.bin/clang/lib/libllvmpowerpccodegen/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmpowerpcinfo/ projects/clangbsd-import/usr.bin/clang/lib/libllvmpowerpcinfo/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmscalaropts/ projects/clangbsd-import/usr.bin/clang/lib/libllvmscalaropts/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmselectiondag/ projects/clangbsd-import/usr.bin/clang/lib/libllvmselectiondag/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmsupport/ projects/clangbsd-import/usr.bin/clang/lib/libllvmsupport/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmsystem/ projects/clangbsd-import/usr.bin/clang/lib/libllvmsystem/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmtarget/ projects/clangbsd-import/usr.bin/clang/lib/libllvmtarget/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmtransformutils/ projects/clangbsd-import/usr.bin/clang/lib/libllvmtransformutils/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmx86asmparser/ projects/clangbsd-import/usr.bin/clang/lib/libllvmx86asmparser/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmx86asmprinter/ projects/clangbsd-import/usr.bin/clang/lib/libllvmx86asmprinter/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmx86codegen/ projects/clangbsd-import/usr.bin/clang/lib/libllvmx86codegen/Makefile (contents, props changed) projects/clangbsd-import/usr.bin/clang/lib/libllvmx86info/ projects/clangbsd-import/usr.bin/clang/lib/libllvmx86info/Makefile (contents, props changed) Modified: projects/clangbsd-import/Makefile.inc1 projects/clangbsd-import/etc/mtree/BSD.include.dist projects/clangbsd-import/share/mk/bsd.own.mk projects/clangbsd-import/usr.bin/Makefile Modified: projects/clangbsd-import/Makefile.inc1 ============================================================================== --- projects/clangbsd-import/Makefile.inc1 Wed May 12 18:33:25 2010 (r207985) +++ projects/clangbsd-import/Makefile.inc1 Wed May 12 18:34:08 2010 (r207986) @@ -956,6 +956,13 @@ _gensnmptree= usr.sbin/bsnmpd/gensnmptre _crunchgen= usr.sbin/crunch/crunchgen .endif +.if ${MK_TOOLCHAIN} != "no" && ${MK_CLANG} != "no" +_clang_tblgen= \ + usr.bin/clang/lib/libllvmsupport \ + usr.bin/clang/lib/libllvmsystem \ + usr.bin/clang/bin/tblgen +.endif + .if ${MK_CDDL} != "no" _dtrace_tools= cddl/usr.bin/sgsmsg cddl/lib/libctf lib/libelf \ lib/libdwarf cddl/usr.bin/ctfconvert cddl/usr.bin/ctfmerge @@ -963,6 +970,7 @@ _dtrace_tools= cddl/usr.bin/sgsmsg cddl/ bootstrap-tools: .for _tool in \ + ${_clang_tblgen} \ ${_dtrace_tools} \ ${_strfile} \ ${_gperf} \ Modified: projects/clangbsd-import/etc/mtree/BSD.include.dist ============================================================================== --- projects/clangbsd-import/etc/mtree/BSD.include.dist Wed May 12 18:33:25 2010 (r207985) +++ projects/clangbsd-import/etc/mtree/BSD.include.dist Wed May 12 18:34:08 2010 (r207986) @@ -83,6 +83,10 @@ scsi .. .. + clang + 2.0 + .. + .. crypto .. dev Modified: projects/clangbsd-import/share/mk/bsd.own.mk ============================================================================== --- projects/clangbsd-import/share/mk/bsd.own.mk Wed May 12 18:33:25 2010 (r207985) +++ projects/clangbsd-import/share/mk/bsd.own.mk Wed May 12 18:34:08 2010 (r207986) @@ -305,6 +305,7 @@ WITH_IDEA= BZIP2 \ CALENDAR \ CDDL \ + CLANG \ CPP \ CRYPT \ CTM \ Modified: projects/clangbsd-import/usr.bin/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/Makefile Wed May 12 18:33:25 2010 (r207985) +++ projects/clangbsd-import/usr.bin/Makefile Wed May 12 18:34:08 2010 (r207986) @@ -35,6 +35,7 @@ SUBDIR= alias \ ${_chkey} \ chpass \ cksum \ + ${_clang} \ cmp \ col \ ${_colcrt} \ @@ -348,6 +349,9 @@ _ul= ul _ar= ar _c89= c89 _c99= c99 +.if ${MK_CLANG} != "no" +_clang= clang +.endif _compile_et= compile_et _ctags= ctags _file2c= file2c Added: projects/clangbsd-import/usr.bin/clang/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/Makefile Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,7 @@ +# $FreeBSD$ + +SUBDIR= lib \ + bin \ + include + +.include Added: projects/clangbsd-import/usr.bin/clang/bin/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/bin/Makefile Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,5 @@ +# $FreeBSD$ + +SUBDIR= clang + +.include Added: projects/clangbsd-import/usr.bin/clang/bin/clang/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/bin/clang/Makefile Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,29 @@ +# $FreeBSD$ + +.include + +PROG_CXX=clang + +SRCDIR= tools/clang/tools/driver +SRCS= cc1_main.cpp driver.cpp +NO_MAN= + +LINKS= ${BINDIR}/clang ${BINDIR}/clang++ + +TGHDRS= DiagnosticCommonKinds DiagnosticDriverKinds \ + DiagnosticFrontendKinds \ + DiagnosticLexKinds DiagnosticSemaKinds CC1Options +LIBDEPS=clangfrontend clangdriver clangcodegen clangsema clangchecker \ + clanganalysis clangrewrite clangast clangparse clanglex clangbasic \ + \ + llvminstcombine \ + llvmipo llvmbitwriter llvmbitreader llvmpowerpccodegen \ + llvmpowerpcasmprinter llvmpowerpcinfo llvmx86asmparser \ + llvmx86asmprinter llvmx86codegen llvmx86info llvmmipsasmprinter \ + llvmmipscodegen llvmmipsinfo llvmarmasmparser llvmarmasmprinter \ + llvmarmcodegen llvmselectiondag llvmasmprinter llvmcodegen \ + llvmscalaropts llvmtransformutils llvmmc llvmmcparser llvmipa \ + llvmanalysis llvmtarget \ + llvmmc llvmcore llvmarminfo llvmsupport llvmsystem + +.include "../../clang.prog.mk" Added: projects/clangbsd-import/usr.bin/clang/bin/tblgen/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/bin/tblgen/Makefile Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,22 @@ +# $FreeBSD$ + +PROG_CXX=tblgen + +SRCDIR= utils/TableGen +SRCS= ARMDecoderEmitter.cpp AsmMatcherEmitter.cpp AsmWriterEmitter.cpp \ + AsmWriterInst.cpp CallingConvEmitter.cpp \ + ClangDiagnosticsEmitter.cpp CodeEmitterGen.cpp \ + CodeGenDAGPatterns.cpp CodeGenInstruction.cpp \ + CodeGenTarget.cpp DAGISelEmitter.cpp DAGISelMatcher.cpp \ + DAGISelMatcherEmitter.cpp DAGISelMatcherGen.cpp DAGISelMatcherOpt.cpp \ + DisassemblerEmitter.cpp EDEmitter.cpp FastISelEmitter.cpp \ + InstrEnumEmitter.cpp InstrInfoEmitter.cpp IntrinsicEmitter.cpp \ + LLVMCConfigurationEmitter.cpp OptParserEmitter.cpp Record.cpp \ + RegisterInfoEmitter.cpp SubtargetEmitter.cpp TGLexer.cpp \ + TGParser.cpp TGValueTypes.cpp TableGen.cpp TableGenBackend.cpp \ + X86DisassemblerTables.cpp X86RecognizableInstr.cpp +NO_MAN= + +LIBDEPS=llvmsupport llvmsystem + +.include "../../clang.prog.mk" Added: projects/clangbsd-import/usr.bin/clang/clang.build.mk ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/clang.build.mk Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,66 @@ +# $FreeBSD$ + +LLVM_SRCS=${.CURDIR}/../../../../contrib/llvm +CLANG_SRCS=${LLVM_SRCS}/tools/clang + +CFLAGS+=-I${LLVM_SRCS}/include -I${CLANG_SRCS}/include \ + -I${LLVM_SRCS}/${SRCDIR} ${INCDIR:C/^/-I${LLVM_SRCS}\//} -I. \ + -I${.CURDIR}/../../include \ + -DLLVM_ON_UNIX -DLLVM_ON_FREEBSD \ + -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS #-DNDEBUG + +TARGET_ARCH?= ${MACHINE_ARCH} +# XXX: 8.0, to keep __FreeBSD_cc_version happy +CFLAGS+=-DLLVM_HOSTTRIPLE=\"${TARGET_ARCH}-undermydesk-freebsd9.0\" + +.PATH: ${LLVM_SRCS}/${SRCDIR} + +TBLGEN=tblgen ${CFLAGS:M-I*} + +Intrinsics.inc.h: ${LLVM_SRCS}/include/llvm/Intrinsics.td + ${TBLGEN} -gen-intrinsic \ + ${LLVM_SRCS}/include/llvm/Intrinsics.td > ${.TARGET} +.for arch in \ + ARM:ARM Mips:Mips PowerPC:PPC X86:X86 +. for hdr in \ + AsmMatcher:-gen-asm-matcher \ + AsmWriter1:-gen-asm-writer,-asmwriternum=1 \ + AsmWriter:-gen-asm-writer \ + CallingConv:-gen-callingconv \ + CodeEmitter:-gen-emitter \ + DAGISel:-gen-dag-isel \ + FastISel:-gen-fast-isel \ + InstrInfo:-gen-instr-desc \ + InstrNames:-gen-instr-enums \ + RegisterInfo.h:-gen-register-desc-header \ + RegisterInfo:-gen-register-desc \ + RegisterNames:-gen-register-enums \ + Subtarget:-gen-subtarget +${arch:C/.*://}Gen${hdr:C/:.*/.inc.h/}: ${LLVM_SRCS}/lib/Target/${arch:C/:.*//}/${arch:C/.*://}.td + ${TBLGEN} ${hdr:C/.*://:C/,/ /g} \ + ${LLVM_SRCS}/lib/Target/${arch:C/:.*//}/${arch:C/.*://}.td > ${.TARGET} +. endfor +.endfor +DiagnosticGroups.inc.h: ${CLANG_SRCS}/include/clang/Basic/Diagnostic.td + ${TBLGEN} -I${CLANG_SRCS}/include/clang/Basic \ + -gen-clang-diag-groups \ + ${CLANG_SRCS}/include/clang/Basic/Diagnostic.td > ${.TARGET} +.for hdr in AST Analysis Common Driver Frontend Lex Parse Sema +Diagnostic${hdr}Kinds.inc.h: ${CLANG_SRCS}/include/clang/Basic/Diagnostic.td + ${TBLGEN} -I${CLANG_SRCS}/include/clang/Basic \ + -gen-clang-diags-defs -clang-component=${hdr} \ + ${CLANG_SRCS}/include/clang/Basic/Diagnostic.td > ${.TARGET} +.endfor +Options.inc.h: ${CLANG_SRCS}/include/clang/Driver/Options.td + ${TBLGEN} -I${CLANG_SRCS}/include/clang/Driver \ + -gen-opt-parser-defs \ + ${CLANG_SRCS}/include/clang/Driver/Options.td > ${.TARGET} + +CC1Options.inc.h: ${CLANG_SRCS}/include/clang/Driver/CC1Options.td + ${TBLGEN} -I${CLANG_SRCS}/include/clang/Driver \ + -gen-opt-parser-defs \ + ${CLANG_SRCS}/include/clang/Driver/CC1Options.td > ${.TARGET} + +SRCS+= ${TGHDRS:C/$/.inc.h/} +DPADD+= ${TGHDRS:C/$/.inc.h/} +CLEANFILES+= ${TGHDRS:C/$/.inc.h/} Added: projects/clangbsd-import/usr.bin/clang/clang.lib.mk ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/clang.lib.mk Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,7 @@ +# $FreeBSD$ + +.include "clang.build.mk" + +INTERNALLIB= + +.include Added: projects/clangbsd-import/usr.bin/clang/clang.prog.mk ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/clang.prog.mk Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,12 @@ +# $FreeBSD$ + +.include "clang.build.mk" + +.for lib in ${LIBDEPS} +DPADD+= ${.OBJDIR}/../../lib/lib${lib}/lib${lib}.a +LDADD+= ${.OBJDIR}/../../lib/lib${lib}/lib${lib}.a +.endfor + +BINDIR?=/usr/bin + +.include Added: projects/clangbsd-import/usr.bin/clang/include/ARMGenAsmWriter.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/ARMGenAsmWriter.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "ARMGenAsmWriter.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/ARMGenCallingConv.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/ARMGenCallingConv.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "ARMGenCallingConv.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/ARMGenCodeEmitter.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/ARMGenCodeEmitter.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "ARMGenCodeEmitter.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/ARMGenDAGISel.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/ARMGenDAGISel.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "ARMGenDAGISel.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/ARMGenInstrInfo.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/ARMGenInstrInfo.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "ARMGenInstrInfo.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/ARMGenInstrNames.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/ARMGenInstrNames.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "ARMGenInstrNames.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/ARMGenRegisterInfo.h.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/ARMGenRegisterInfo.h.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "ARMGenRegisterInfo.h.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/ARMGenRegisterInfo.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/ARMGenRegisterInfo.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "ARMGenRegisterInfo.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/ARMGenRegisterNames.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/ARMGenRegisterNames.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "ARMGenRegisterNames.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/ARMGenSubtarget.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/ARMGenSubtarget.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "ARMGenSubtarget.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/IA64GenAsmWriter.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/IA64GenAsmWriter.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "IA64GenAsmWriter.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/IA64GenDAGISel.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/IA64GenDAGISel.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "IA64GenDAGISel.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/IA64GenInstrInfo.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/IA64GenInstrInfo.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "IA64GenInstrInfo.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/IA64GenInstrNames.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/IA64GenInstrNames.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "IA64GenInstrNames.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/IA64GenRegisterInfo.h.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/IA64GenRegisterInfo.h.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "IA64GenRegisterInfo.h.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/IA64GenRegisterInfo.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/IA64GenRegisterInfo.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "IA64GenRegisterInfo.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/IA64GenRegisterNames.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/IA64GenRegisterNames.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "IA64GenRegisterNames.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/Makefile Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,11 @@ +# $FreeBSD$ + +.PATH: ${.CURDIR}/../../../contrib/llvm/tools/clang/lib/Headers + +INCSDIR=${INCLUDEDIR}/clang/2.0 + +INCS= emmintrin.h mm_malloc.h mmintrin.h pmmintrin.h tmmintrin.h xmmintrin.h + +.include +.include +.include Added: projects/clangbsd-import/usr.bin/clang/include/MipsGenAsmWriter.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/MipsGenAsmWriter.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "MipsGenAsmWriter.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/MipsGenCallingConv.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/MipsGenCallingConv.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "MipsGenCallingConv.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/MipsGenDAGISel.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/MipsGenDAGISel.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "MipsGenDAGISel.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/MipsGenInstrInfo.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/MipsGenInstrInfo.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "MipsGenInstrInfo.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/MipsGenInstrNames.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/MipsGenInstrNames.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "MipsGenInstrNames.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/MipsGenRegisterInfo.h.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/MipsGenRegisterInfo.h.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "MipsGenRegisterInfo.h.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/MipsGenRegisterInfo.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/MipsGenRegisterInfo.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "MipsGenRegisterInfo.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/MipsGenRegisterNames.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/MipsGenRegisterNames.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "MipsGenRegisterNames.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/MipsGenSubtarget.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/MipsGenSubtarget.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "MipsGenSubtarget.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/PPCGenAsmWriter.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/PPCGenAsmWriter.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "PPCGenAsmWriter.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/PPCGenCallingConv.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/PPCGenCallingConv.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "PPCGenCallingConv.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/PPCGenCodeEmitter.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/PPCGenCodeEmitter.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "PPCGenCodeEmitter.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/PPCGenDAGISel.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/PPCGenDAGISel.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "PPCGenDAGISel.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/PPCGenInstrInfo.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/PPCGenInstrInfo.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "PPCGenInstrInfo.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/PPCGenInstrNames.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/PPCGenInstrNames.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "PPCGenInstrNames.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/PPCGenRegisterInfo.h.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/PPCGenRegisterInfo.h.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "PPCGenRegisterInfo.h.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/PPCGenRegisterInfo.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/PPCGenRegisterInfo.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "PPCGenRegisterInfo.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/PPCGenRegisterNames.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/PPCGenRegisterNames.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "PPCGenRegisterNames.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/PPCGenSubtarget.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/PPCGenSubtarget.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "PPCGenSubtarget.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/X86GenAsmMatcher.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/X86GenAsmMatcher.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "X86GenAsmMatcher.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/X86GenAsmWriter.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/X86GenAsmWriter.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "X86GenAsmWriter.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/X86GenAsmWriter1.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/X86GenAsmWriter1.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "X86GenAsmWriter1.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/X86GenCallingConv.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/X86GenCallingConv.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "X86GenCallingConv.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/X86GenDAGISel.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/X86GenDAGISel.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "X86GenDAGISel.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/X86GenFastISel.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/X86GenFastISel.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "X86GenFastISel.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/X86GenInstrInfo.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/X86GenInstrInfo.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "X86GenInstrInfo.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/X86GenInstrNames.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/X86GenInstrNames.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "X86GenInstrNames.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/X86GenRegisterInfo.h.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/X86GenRegisterInfo.h.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "X86GenRegisterInfo.h.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/X86GenRegisterInfo.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/X86GenRegisterInfo.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "X86GenRegisterInfo.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/X86GenRegisterNames.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/X86GenRegisterNames.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "X86GenRegisterNames.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/X86GenSubtarget.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/X86GenSubtarget.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "X86GenSubtarget.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticASTKinds.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticASTKinds.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "DiagnosticASTKinds.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticAnalysisKinds.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticAnalysisKinds.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "DiagnosticAnalysisKinds.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticCommonKinds.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticCommonKinds.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "DiagnosticCommonKinds.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticDriverKinds.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticDriverKinds.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "DiagnosticDriverKinds.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticFrontendKinds.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticFrontendKinds.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "DiagnosticFrontendKinds.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticGroups.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticGroups.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "DiagnosticGroups.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticLexKinds.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticLexKinds.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "DiagnosticLexKinds.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticParseKinds.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticParseKinds.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "DiagnosticParseKinds.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticSemaKinds.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/clang/Basic/DiagnosticSemaKinds.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "DiagnosticSemaKinds.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/clang/Driver/CC1Options.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/clang/Driver/CC1Options.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "CC1Options.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/clang/Driver/Options.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/clang/Driver/Options.inc Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,2 @@ +/* $FreeBSD$ */ +#include "Options.inc.h" Added: projects/clangbsd-import/usr.bin/clang/include/llvm/ADT/iterator.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/llvm/ADT/iterator.h Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,78 @@ +/* include/llvm/ADT/iterator.h. Generated from iterator.h.in by configure. */ +//==-- llvm/ADT/iterator.h - Portable wrapper around --*- C++ -*-==// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +// +// This file provides a wrapper around the mysterious header file. +// In GCC 2.95.3, the file defines a bidirectional_iterator class (and other +// friends), instead of the standard iterator class. In GCC 3.1, the +// bidirectional_iterator class got moved out and the new, standards compliant, +// iterator<> class was added. Because there is nothing that we can do to get +// correct behavior on both compilers, we have this header with #ifdef's. Gross +// huh? +// +// By #includ'ing this file, you get the contents of plus the +// following classes in the global namespace: +// +// 1. bidirectional_iterator +// 2. forward_iterator +// +// The #if directives' expressions are filled in by Autoconf. +// +// $FreeBSD$ +//===----------------------------------------------------------------------===// + +#ifndef LLVM_ADT_ITERATOR_H +#define LLVM_ADT_ITERATOR_H + +#include + +#define HAVE_BI_ITERATOR 0 +#define HAVE_STD_ITERATOR 1 +#define HAVE_FWD_ITERATOR 0 + +#ifdef _MSC_VER +# define HAVE_BI_ITERATOR 0 +# define HAVE_STD_ITERATOR 1 +# define HAVE_FWD_ITERATOR 0 +#endif + +#if !HAVE_BI_ITERATOR +# if HAVE_STD_ITERATOR +/// If the bidirectional iterator is not defined, we attempt to define it in +/// terms of the C++ standard iterator. Otherwise, we import it with a "using" +/// statement. +/// +template +struct bidirectional_iterator + : public std::iterator { +}; +# else +# error "Need to have standard iterator to define bidirectional iterator!" +# endif +#else +using std::bidirectional_iterator; +#endif + +#if !HAVE_FWD_ITERATOR +# if HAVE_STD_ITERATOR +/// If the forward iterator is not defined, attempt to define it in terms of +/// the C++ standard iterator. Otherwise, we import it with a "using" statement. +/// +template +struct forward_iterator + : public std::iterator { +}; +# else +# error "Need to have standard iterator to define forward iterator!" +# endif +#else +using std::forward_iterator; +#endif + +#endif // LLVM_ADT_ITERATOR_H Added: projects/clangbsd-import/usr.bin/clang/include/llvm/Config/AsmParsers.def ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/llvm/Config/AsmParsers.def Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,29 @@ +//===- llvm/Config/AsmParsers.def - LLVM Assembly Parsers -------*- C++ -*-===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +// +// This file enumerates all of the assembly-language parsers +// supported by this build of LLVM. Clients of this file should define +// the LLVM_ASM_PARSER macro to be a function-like macro with a +// single parameter (the name of the target whose assembly can be +// generated); including this file will then enumerate all of the +// targets with assembly parsers. +// +// The set of targets supported by LLVM is generated at configuration +// time, at which point this header is generated. Do not modify this +// header directly. +// +//===----------------------------------------------------------------------===// + +#ifndef LLVM_ASM_PARSER +# error Please define the macro LLVM_ASM_PARSER(TargetName) +#endif + +LLVM_ASM_PARSER(ARM) LLVM_ASM_PARSER(X86) + +#undef LLVM_ASM_PARSER Added: projects/clangbsd-import/usr.bin/clang/include/llvm/Config/AsmPrinters.def ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/llvm/Config/AsmPrinters.def Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,30 @@ +/* $FreeBSD$ */ +//===- llvm/Config/AsmPrinters.def - LLVM Assembly Printers -----*- C++ -*-===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +// +// This file enumerates all of the assembly-language printers +// supported by this build of LLVM. Clients of this file should define +// the LLVM_ASM_PRINTER macro to be a function-like macro with a +// single parameter (the name of the target whose assembly can be +// generated); including this file will then enumerate all of the +// targets with assembly printers. +// +// The set of targets supported by LLVM is generated at configuration +// time, at which point this header is generated. Do not modify this +// header directly. +// +//===----------------------------------------------------------------------===// + +#ifndef LLVM_ASM_PRINTER +# error Please define the macro LLVM_ASM_PRINTER(TargetName) +#endif + +LLVM_ASM_PRINTER(Mips) LLVM_ASM_PRINTER(ARM) LLVM_ASM_PRINTER(PowerPC) LLVM_ASM_PRINTER(X86) + +#undef LLVM_ASM_PRINTER Added: projects/clangbsd-import/usr.bin/clang/include/llvm/Config/Disassemblers.def ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/llvm/Config/Disassemblers.def Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,29 @@ +//===- llvm/Config/Disassemblers.def - LLVM Assembly Parsers ----*- C++ -*-===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +// +// This file enumerates all of the assembly-language parsers +// supported by this build of LLVM. Clients of this file should define +// the LLVM_ASM_PARSER macro to be a function-like macro with a +// single parameter (the name of the target whose assembly can be +// generated); including this file will then enumerate all of the +// targets with assembly parsers. +// +// The set of targets supported by LLVM is generated at configuration +// time, at which point this header is generated. Do not modify this +// header directly. +// +//===----------------------------------------------------------------------===// + +#ifndef LLVM_DISASSEMBLER +# error Please define the macro LLVM_DISASSEMBLER(TargetName) +#endif + +LLVM_DISASSEMBLER(X86) + +#undef LLVM_DISASSEMBLER Added: projects/clangbsd-import/usr.bin/clang/include/llvm/Config/Targets.def ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/llvm/Config/Targets.def Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,29 @@ +/* $FreeBSD$ */ +/*===- llvm/Config/Targets.def - LLVM Target Architectures ------*- C++ -*-===*\ +|* *| +|* The LLVM Compiler Infrastructure *| +|* *| +|* This file is distributed under the University of Illinois Open Source *| +|* License. See LICENSE.TXT for details. *| +|* *| +|*===----------------------------------------------------------------------===*| +|* *| +|* This file enumerates all of the target architectures supported by *| +|* this build of LLVM. Clients of this file should define the *| +|* LLVM_TARGET macro to be a function-like macro with a single *| +|* parameter (the name of the target); including this file will then *| +|* enumerate all of the targets. *| +|* *| +|* The set of targets supported by LLVM is generated at configuration *| +|* time, at which point this header is generated. Do not modify this *| +|* header directly. *| +|* *| +\*===----------------------------------------------------------------------===*/ + +#ifndef LLVM_TARGET +# error Please define the macro LLVM_TARGET(TargetName) +#endif + +LLVM_TARGET(Mips) LLVM_TARGET(ARM) LLVM_TARGET(PowerPC) LLVM_TARGET(X86) + +#undef LLVM_TARGET Added: projects/clangbsd-import/usr.bin/clang/include/llvm/Config/config.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clangbsd-import/usr.bin/clang/include/llvm/Config/config.h Wed May 12 18:34:08 2010 (r207986) @@ -0,0 +1,601 @@ +/* $FreeBSD$ */ +/* include/llvm/Config/config.h. Generated from config.h.in by configure. */ +/* include/llvm/Config/config.h.in. Generated from autoconf/configure.ac by autoheader. */ + +/* Define if dlopen(0) will open the symbols of the program */ +#define CAN_DLOPEN_SELF 1 + +/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP + systems. This function is required for `alloca.c' support on those systems. + */ +/* #undef CRAY_STACKSEG_END */ + +/* 32 bit multilib directory. */ +#define CXX_INCLUDE_32BIT_DIR "" + +/* 64 bit multilib directory. */ +#define CXX_INCLUDE_64BIT_DIR "" + +/* Arch the libstdc++ headers. */ +#define CXX_INCLUDE_ARCH "" + +/* Directory with the libstdc++ headers. */ +#define CXX_INCLUDE_ROOT "" + +/* Define to 1 if using `alloca.c'. */ +/* #undef C_ALLOCA */ + +/* Directories clang will search for headers */ +#define C_INCLUDE_DIRS "" + +/* Define if CBE is enabled for printf %a output */ +#define ENABLE_CBE_PRINTF_A 1 + +/* Define if position independent code is enabled */ +#define ENABLE_PIC 1 + +/* Define if threads enabled */ +/* #undef ENABLE_THREADS */ + +/* Define to 1 if you have `alloca', as a function or macro. */ +#define HAVE_ALLOCA 1 + +/* Define to 1 if you have and it should be used (not on Ultrix). + */ +/* #undef HAVE_ALLOCA_H */ + +/* Define to 1 if you have the `argz_append' function. */ +/* #undef HAVE_ARGZ_APPEND */ + +/* Define to 1 if you have the `argz_create_sep' function. */ +/* #undef HAVE_ARGZ_CREATE_SEP */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_ARGZ_H */ + +/* Define to 1 if you have the `argz_insert' function. */ +/* #undef HAVE_ARGZ_INSERT */ + +/* Define to 1 if you have the `argz_next' function. */ +/* #undef HAVE_ARGZ_NEXT */ + +/* Define to 1 if you have the `argz_stringify' function. */ +/* #undef HAVE_ARGZ_STRINGIFY */ + +/* Define to 1 if you have the header file. */ +#define HAVE_ASSERT_H 1 + +/* Define to 1 if you have the `backtrace' function. */ +/* #undef HAVE_BACKTRACE */ + +/* Define to 1 if you have the `bcopy' function. */ +/* #undef HAVE_BCOPY */ + +/* Does not have bi-directional iterator */ +#define HAVE_BI_ITERATOR 0 + +/* Define to 1 if you have the `ceilf' function. */ +#define HAVE_CEILF 1 + +/* Define if the neat program is available */ +/* #undef HAVE_CIRCO */ + +/* Define to 1 if you have the `closedir' function. */ +#define HAVE_CLOSEDIR 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_CTYPE_H 1 + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +#define HAVE_DIRENT_H 1 + +/* Define if you have the GNU dld library. */ +/* #undef HAVE_DLD */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_DLD_H */ + +/* Define to 1 if you have the `dlerror' function. */ +#define HAVE_DLERROR 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_DLFCN_H 1 + +/* Define if dlopen() is available on this platform. */ +#define HAVE_DLOPEN 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_DL_H */ + +/* Define if the dot program is available */ +/* #undef HAVE_DOT */ + +/* Define if the dotty program is available */ +/* #undef HAVE_DOTTY */ + +/* Define if you have the _dyld_func_lookup function. */ +/* #undef HAVE_DYLD */ + +/* Define to 1 if you have the header file. */ +#define HAVE_ERRNO_H 1 + +/* Define to 1 if the system has the type `error_t'. */ +/* #undef HAVE_ERROR_T */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_EXECINFO_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_FCNTL_H 1 + +/* Define if the neat program is available */ +/* #undef HAVE_FDP */ + +/* Define if libffi is available on this platform. */ +/* #undef HAVE_FFI_CALL */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_FFI_FFI_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_FFI_H */ + +/* Set to 1 if the finite function is found in */ +/* #undef HAVE_FINITE_IN_IEEEFP_H */ + +/* Define to 1 if you have the `floorf' function. */ +#define HAVE_FLOORF 1 + +/* Define to 1 if you have the `fmodf' function. */ +#define HAVE_FMODF 1 + +/* Does not have forward iterator */ +#define HAVE_FWD_ITERATOR 0 + +/* Define to 1 if you have the `getcwd' function. */ +#define HAVE_GETCWD 1 + +/* Define to 1 if you have the `getpagesize' function. */ +#define HAVE_GETPAGESIZE 1 + +/* Define to 1 if you have the `getrlimit' function. */ +#define HAVE_GETRLIMIT 1 + +/* Define to 1 if you have the `getrusage' function. */ +#define HAVE_GETRUSAGE 1 + +/* Define to 1 if you have the `gettimeofday' function. */ +#define HAVE_GETTIMEOFDAY 1 + +/* Define if the Graphviz program is available */ +/* #undef HAVE_GRAPHVIZ */ + +/* Define if the gv program is available */ +/* #undef HAVE_GV */ + +/* Define to 1 if you have the `index' function. */ +/* #undef HAVE_INDEX */ + +/* Define to 1 if the system has the type `int64_t'. */ +#define HAVE_INT64_T 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define to 1 if you have the `isatty' function. */ +#define HAVE_ISATTY 1 + +/* Set to 1 if the isinf function is found in */ +#define HAVE_ISINF_IN_CMATH 1 + +/* Set to 1 if the isinf function is found in */ +#define HAVE_ISINF_IN_MATH_H 1 + +/* Set to 1 if the isnan function is found in */ +#define HAVE_ISNAN_IN_CMATH 1 + +/* Set to 1 if the isnan function is found in */ +#define HAVE_ISNAN_IN_MATH_H 1 + +/* Define if you have the libdl library or equivalent. */ +#define HAVE_LIBDL 1 + +/* Define to 1 if you have the `imagehlp' library (-limagehlp). */ +/* #undef HAVE_LIBIMAGEHLP */ + +/* Define to 1 if you have the `m' library (-lm). */ +#define HAVE_LIBM 1 + +/* Define to 1 if you have the `psapi' library (-lpsapi). */ +/* #undef HAVE_LIBPSAPI */ + +/* Define to 1 if you have the `pthread' library (-lpthread). */ +#define HAVE_LIBPTHREAD 1 + +/* Define to 1 if you have the `udis86' library (-ludis86). */ +/* #undef HAVE_LIBUDIS86 */ + +/* Define to 1 if you have the header file. */ +#define HAVE_LIMITS_H 1 + +/* Define if you can use -Wl,-export-dynamic. */ +#define HAVE_LINK_EXPORT_DYNAMIC 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_LINK_H 1 + +/* Define if you can use -Wl,-R. to pass -R. to the linker, in order to add + the current directory to the dynamic linker search path. */ +#define HAVE_LINK_R 1 + +/* Define to 1 if you have the `longjmp' function. */ +#define HAVE_LONGJMP 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_MACH_MACH_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_MACH_O_DYLD_H */ + +/* Define if mallinfo() is available on this platform. */ +/* #undef HAVE_MALLINFO */ *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@FreeBSD.ORG Wed May 12 19:00:24 2010 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 52D541065670; Wed, 12 May 2010 19:00:24 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 42F3F8FC12; Wed, 12 May 2010 19: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 o4CJ0Osp095205; Wed, 12 May 2010 19:00:24 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4CJ0Omp095202; Wed, 12 May 2010 19:00:24 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201005121900.o4CJ0Omp095202@svn.freebsd.org> From: Ed Schouten Date: Wed, 12 May 2010 19: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: r207987 - in projects/clangbsd-import/usr.bin/clang/bin: clang tblgen 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, 12 May 2010 19:00:24 -0000 Author: ed Date: Wed May 12 19:00:23 2010 New Revision: 207987 URL: http://svn.freebsd.org/changeset/base/207987 Log: Use MAN= instead of NO_MAN=. For some reason it still tries to install a clang.1 when using NO_MAN, even though there isn't one yet. Modified: projects/clangbsd-import/usr.bin/clang/bin/clang/Makefile projects/clangbsd-import/usr.bin/clang/bin/tblgen/Makefile Modified: projects/clangbsd-import/usr.bin/clang/bin/clang/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/bin/clang/Makefile Wed May 12 18:34:08 2010 (r207986) +++ projects/clangbsd-import/usr.bin/clang/bin/clang/Makefile Wed May 12 19:00:23 2010 (r207987) @@ -6,7 +6,7 @@ PROG_CXX=clang SRCDIR= tools/clang/tools/driver SRCS= cc1_main.cpp driver.cpp -NO_MAN= +MAN= LINKS= ${BINDIR}/clang ${BINDIR}/clang++ Modified: projects/clangbsd-import/usr.bin/clang/bin/tblgen/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/bin/tblgen/Makefile Wed May 12 18:34:08 2010 (r207986) +++ projects/clangbsd-import/usr.bin/clang/bin/tblgen/Makefile Wed May 12 19:00:23 2010 (r207987) @@ -15,7 +15,7 @@ SRCS= ARMDecoderEmitter.cpp AsmMatcherEm RegisterInfoEmitter.cpp SubtargetEmitter.cpp TGLexer.cpp \ TGParser.cpp TGValueTypes.cpp TableGen.cpp TableGenBackend.cpp \ X86DisassemblerTables.cpp X86RecognizableInstr.cpp -NO_MAN= +MAN= LIBDEPS=llvmsupport llvmsystem From owner-svn-src-projects@FreeBSD.ORG Wed May 12 19:16:45 2010 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 0F9D3106567C; Wed, 12 May 2010 19:16:45 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id F3DF98FC12; Wed, 12 May 2010 19:16:44 +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 o4CJGitR098835; Wed, 12 May 2010 19:16:44 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4CJGigq098833; Wed, 12 May 2010 19:16:44 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201005121916.o4CJGigq098833@svn.freebsd.org> From: Ed Schouten Date: Wed, 12 May 2010 19:16:44 +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: r207988 - projects/clangbsd-import/contrib/llvm/tools/clang/lib/Frontend 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, 12 May 2010 19:16:45 -0000 Author: ed Date: Wed May 12 19:16:44 2010 New Revision: 207988 URL: http://svn.freebsd.org/changeset/base/207988 Log: Remove /usr/local/include from the default include path. Modified: projects/clangbsd-import/contrib/llvm/tools/clang/lib/Frontend/InitHeaderSearch.cpp Modified: projects/clangbsd-import/contrib/llvm/tools/clang/lib/Frontend/InitHeaderSearch.cpp ============================================================================== --- projects/clangbsd-import/contrib/llvm/tools/clang/lib/Frontend/InitHeaderSearch.cpp Wed May 12 19:00:23 2010 (r207987) +++ projects/clangbsd-import/contrib/llvm/tools/clang/lib/Frontend/InitHeaderSearch.cpp Wed May 12 19:16:44 2010 (r207988) @@ -480,7 +480,6 @@ void InitHeaderSearch::AddDefaultCInclud break; } - AddPath("/usr/local/include", System, true, false, false); AddPath("/usr/include", System, false, false, false); } From owner-svn-src-projects@FreeBSD.ORG Wed May 12 19:20:04 2010 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 152E11065675; Wed, 12 May 2010 19:20:04 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 053C08FC15; Wed, 12 May 2010 19:20: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 o4CJK3RH099650; Wed, 12 May 2010 19:20:03 GMT (envelope-from rdivacky@svn.freebsd.org) Received: (from rdivacky@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4CJK32C099649; Wed, 12 May 2010 19:20:03 GMT (envelope-from rdivacky@svn.freebsd.org) Message-Id: <201005121920.o4CJK32C099649@svn.freebsd.org> From: Roman Divacky Date: Wed, 12 May 2010 19:20:03 +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: r207989 - projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend 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, 12 May 2010 19:20:04 -0000 Author: rdivacky Date: Wed May 12 19:20:03 2010 New Revision: 207989 URL: http://svn.freebsd.org/changeset/base/207989 Log: Catch up on r207988. Modified: projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/InitHeaderSearch.cpp Modified: projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/InitHeaderSearch.cpp ============================================================================== --- projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/InitHeaderSearch.cpp Wed May 12 19:16:44 2010 (r207988) +++ projects/clangbsd/contrib/llvm/tools/clang/lib/Frontend/InitHeaderSearch.cpp Wed May 12 19:20:03 2010 (r207989) @@ -482,7 +482,6 @@ void InitHeaderSearch::AddDefaultCInclud break; } - AddPath("/usr/local/include", System, true, false, false); AddPath("/usr/include", System, false, false, false); } From owner-svn-src-projects@FreeBSD.ORG Wed May 12 19:27:26 2010 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 8DDDC1065672; Wed, 12 May 2010 19:27:26 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 7D7708FC14; Wed, 12 May 2010 19:27:26 +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 o4CJRQHK001511; Wed, 12 May 2010 19:27:26 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4CJRQhx001509; Wed, 12 May 2010 19:27:26 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201005121927.o4CJRQhx001509@svn.freebsd.org> From: Ed Schouten Date: Wed, 12 May 2010 19:27:26 +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: r207992 - projects/clangbsd-import/usr.bin/clang/include/llvm/Config 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, 12 May 2010 19:27:26 -0000 Author: ed Date: Wed May 12 19:27:26 2010 New Revision: 207992 URL: http://svn.freebsd.org/changeset/base/207992 Log: Update config.h. Modified: projects/clangbsd-import/usr.bin/clang/include/llvm/Config/config.h Modified: projects/clangbsd-import/usr.bin/clang/include/llvm/Config/config.h ============================================================================== --- projects/clangbsd-import/usr.bin/clang/include/llvm/Config/config.h Wed May 12 19:24:31 2010 (r207991) +++ projects/clangbsd-import/usr.bin/clang/include/llvm/Config/config.h Wed May 12 19:27:26 2010 (r207992) @@ -1,15 +1,6 @@ -/* $FreeBSD$ */ /* include/llvm/Config/config.h. Generated from config.h.in by configure. */ /* include/llvm/Config/config.h.in. Generated from autoconf/configure.ac by autoheader. */ -/* Define if dlopen(0) will open the symbols of the program */ -#define CAN_DLOPEN_SELF 1 - -/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP - systems. This function is required for `alloca.c' support on those systems. - */ -/* #undef CRAY_STACKSEG_END */ - /* 32 bit multilib directory. */ #define CXX_INCLUDE_32BIT_DIR "" @@ -22,9 +13,6 @@ /* Directory with the libstdc++ headers. */ #define CXX_INCLUDE_ROOT "" -/* Define to 1 if using `alloca.c'. */ -/* #undef C_ALLOCA */ - /* Directories clang will search for headers */ #define C_INCLUDE_DIRS "" @@ -37,12 +25,8 @@ /* Define if threads enabled */ /* #undef ENABLE_THREADS */ -/* Define to 1 if you have `alloca', as a function or macro. */ -#define HAVE_ALLOCA 1 - -/* Define to 1 if you have and it should be used (not on Ultrix). - */ -/* #undef HAVE_ALLOCA_H */ +/* Define if timestamp information (e.g., __DATE___) is allowed */ +#define ENABLE_TIMESTAMPS 1 /* Define to 1 if you have the `argz_append' function. */ /* #undef HAVE_ARGZ_APPEND */ @@ -71,9 +55,6 @@ /* Define to 1 if you have the `bcopy' function. */ /* #undef HAVE_BCOPY */ -/* Does not have bi-directional iterator */ -#define HAVE_BI_ITERATOR 0 - /* Define to 1 if you have the `ceilf' function. */ #define HAVE_CEILF 1 @@ -150,9 +131,6 @@ /* Define to 1 if you have the `fmodf' function. */ #define HAVE_FMODF 1 -/* Does not have forward iterator */ -#define HAVE_FWD_ITERATOR 0 - /* Define to 1 if you have the `getcwd' function. */ #define HAVE_GETCWD 1 @@ -273,14 +251,11 @@ /* Define if mmap() uses MAP_ANONYMOUS to map anonymous pages, or undefine if it uses MAP_ANON */ -/* #undef HAVE_MMAP_ANONYMOUS */ +#define HAVE_MMAP_ANONYMOUS 1 /* Define if mmap() can map files into memory */ #define HAVE_MMAP_FILE -/* define if the compiler implements namespaces */ -#define HAVE_NAMESPACES - /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ @@ -293,6 +268,9 @@ /* Define to 1 if you have the `opendir' function. */ #define HAVE_OPENDIR 1 +/* Define to 1 if you have the `posix_spawn' function. */ +#define HAVE_POSIX_SPAWN 1 + /* Define to 1 if you have the `powf' function. */ #define HAVE_POWF 1 @@ -377,9 +355,6 @@ /* Set to 1 if the std::isnan function is found in */ #define HAVE_STD_ISNAN_IN_CMATH 1 -/* Does not have std namespace iterator */ -#define HAVE_STD_ITERATOR 1 - /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 @@ -472,17 +447,17 @@ /* Define to 1 if the system has the type `u_int64_t'. */ /* #undef HAVE_U_INT64_T */ +/* Define to 1 if you have the header file. */ +/* #undef HAVE_VALGRIND_VALGRIND_H */ + /* Define to 1 if you have the header file. */ /* #undef HAVE_WINDOWS_H */ /* Define to 1 if you have the `__dso_handle' function. */ #define HAVE___DSO_HANDLE 1 -/* Time at which LLVM was configured */ -#define LLVM_CONFIGTIME "Thu Oct 15 19:21:29 CEST 2009" - /* Build multithreading support into LLVM */ -#define LLVM_MULTITHREADED 1 +/* #undef LLVM_MULTITHREADED */ /* LLVM architecture name for the native architecture, if available */ #define LLVM_NATIVE_ARCH X86Target @@ -551,25 +526,17 @@ #define PACKAGE_NAME "llvm" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "llvm 2.7svn" +#define PACKAGE_STRING "llvm 2.8svn" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "-llvm-" /* Define to the version of this package. */ -#define PACKAGE_VERSION "2.7svn" +#define PACKAGE_VERSION "2.8svn" /* Define as the return type of signal handlers (`int' or `void'). */ #define RETSIGTYPE void -/* If using the C implementation of alloca, define if you know the - direction of stack growth for your system; otherwise it will be - automatically deduced at runtime. - STACK_DIRECTION > 0 => grows toward higher addresses - STACK_DIRECTION < 0 => grows toward lower addresses - STACK_DIRECTION = 0 => direction of growth unknown */ -/* #undef STACK_DIRECTION */ - /* Define to 1 if the `S_IS*' macros in do not work properly. */ /* #undef STAT_MACROS_BROKEN */ From owner-svn-src-projects@FreeBSD.ORG Wed May 12 19:28:21 2010 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 67884106566C; Wed, 12 May 2010 19:28:21 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 57E6A8FC0A; Wed, 12 May 2010 19:28:21 +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 o4CJSLeV001743; Wed, 12 May 2010 19:28:21 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4CJSLiF001741; Wed, 12 May 2010 19:28:21 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201005121928.o4CJSLiF001741@svn.freebsd.org> From: Ed Schouten Date: Wed, 12 May 2010 19:28: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: r207993 - projects/clangbsd-import/usr.bin/clang/include/llvm/Config 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, 12 May 2010 19:28:21 -0000 Author: ed Date: Wed May 12 19:28:21 2010 New Revision: 207993 URL: http://svn.freebsd.org/changeset/base/207993 Log: Restore $FreeBSD$. Modified: projects/clangbsd-import/usr.bin/clang/include/llvm/Config/config.h Modified: projects/clangbsd-import/usr.bin/clang/include/llvm/Config/config.h ============================================================================== --- projects/clangbsd-import/usr.bin/clang/include/llvm/Config/config.h Wed May 12 19:27:26 2010 (r207992) +++ projects/clangbsd-import/usr.bin/clang/include/llvm/Config/config.h Wed May 12 19:28:21 2010 (r207993) @@ -1,3 +1,4 @@ +/* $FreeBSD$ */ /* include/llvm/Config/config.h. Generated from config.h.in by configure. */ /* include/llvm/Config/config.h.in. Generated from autoconf/configure.ac by autoheader. */ From owner-svn-src-projects@FreeBSD.ORG Wed May 12 19:35:14 2010 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 099A5106564A; Wed, 12 May 2010 19:35:14 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id EDB0B8FC17; Wed, 12 May 2010 19:35: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 o4CJZDXn003279; Wed, 12 May 2010 19:35:13 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4CJZDxj003277; Wed, 12 May 2010 19:35:13 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201005121935.o4CJZDxj003277@svn.freebsd.org> From: Ed Schouten Date: Wed, 12 May 2010 19:35: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: r207994 - projects/clangbsd-import/usr.bin/clang/include/llvm/Config 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, 12 May 2010 19:35:14 -0000 Author: ed Date: Wed May 12 19:35:13 2010 New Revision: 207994 URL: http://svn.freebsd.org/changeset/base/207994 Log: Fix bootstrapping from 8. Modified: projects/clangbsd-import/usr.bin/clang/include/llvm/Config/config.h Modified: projects/clangbsd-import/usr.bin/clang/include/llvm/Config/config.h ============================================================================== --- projects/clangbsd-import/usr.bin/clang/include/llvm/Config/config.h Wed May 12 19:28:21 2010 (r207993) +++ projects/clangbsd-import/usr.bin/clang/include/llvm/Config/config.h Wed May 12 19:35:13 2010 (r207994) @@ -252,7 +252,7 @@ /* Define if mmap() uses MAP_ANONYMOUS to map anonymous pages, or undefine if it uses MAP_ANON */ -#define HAVE_MMAP_ANONYMOUS 1 +/* #undef HAVE_MMAP_ANONYMOUS */ /* Define if mmap() can map files into memory */ #define HAVE_MMAP_FILE From owner-svn-src-projects@FreeBSD.ORG Wed May 12 20:10:30 2010 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 0C2DD106567A; Wed, 12 May 2010 20:10:30 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id EFF9B8FC12; Wed, 12 May 2010 20:10: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 o4CKATwD011283; Wed, 12 May 2010 20:10:29 GMT (envelope-from rdivacky@svn.freebsd.org) Received: (from rdivacky@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4CKATSd011281; Wed, 12 May 2010 20:10:29 GMT (envelope-from rdivacky@svn.freebsd.org) Message-Id: <201005122010.o4CKATSd011281@svn.freebsd.org> From: Roman Divacky Date: Wed, 12 May 2010 20:10:29 +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: r207996 - projects/clangbsd/usr.bin/clang/include/llvm/Config 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, 12 May 2010 20:10:30 -0000 Author: rdivacky Date: Wed May 12 20:10:29 2010 New Revision: 207996 URL: http://svn.freebsd.org/changeset/base/207996 Log: get config.h update from clangbsd-import Modified: projects/clangbsd/usr.bin/clang/include/llvm/Config/config.h Modified: projects/clangbsd/usr.bin/clang/include/llvm/Config/config.h ============================================================================== --- projects/clangbsd/usr.bin/clang/include/llvm/Config/config.h Wed May 12 19:59:32 2010 (r207995) +++ projects/clangbsd/usr.bin/clang/include/llvm/Config/config.h Wed May 12 20:10:29 2010 (r207996) @@ -2,14 +2,6 @@ /* include/llvm/Config/config.h. Generated from config.h.in by configure. */ /* include/llvm/Config/config.h.in. Generated from autoconf/configure.ac by autoheader. */ -/* Define if dlopen(0) will open the symbols of the program */ -#define CAN_DLOPEN_SELF 1 - -/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP - systems. This function is required for `alloca.c' support on those systems. - */ -/* #undef CRAY_STACKSEG_END */ - /* 32 bit multilib directory. */ #define CXX_INCLUDE_32BIT_DIR "" @@ -22,9 +14,6 @@ /* Directory with the libstdc++ headers. */ #define CXX_INCLUDE_ROOT "" -/* Define to 1 if using `alloca.c'. */ -/* #undef C_ALLOCA */ - /* Directories clang will search for headers */ #define C_INCLUDE_DIRS "" @@ -37,12 +26,8 @@ /* Define if threads enabled */ /* #undef ENABLE_THREADS */ -/* Define to 1 if you have `alloca', as a function or macro. */ -#define HAVE_ALLOCA 1 - -/* Define to 1 if you have and it should be used (not on Ultrix). - */ -/* #undef HAVE_ALLOCA_H */ +/* Define if timestamp information (e.g., __DATE___) is allowed */ +#define ENABLE_TIMESTAMPS 1 /* Define to 1 if you have the `argz_append' function. */ /* #undef HAVE_ARGZ_APPEND */ @@ -71,9 +56,6 @@ /* Define to 1 if you have the `bcopy' function. */ /* #undef HAVE_BCOPY */ -/* Does not have bi-directional iterator */ -#define HAVE_BI_ITERATOR 0 - /* Define to 1 if you have the `ceilf' function. */ #define HAVE_CEILF 1 @@ -150,9 +132,6 @@ /* Define to 1 if you have the `fmodf' function. */ #define HAVE_FMODF 1 -/* Does not have forward iterator */ -#define HAVE_FWD_ITERATOR 0 - /* Define to 1 if you have the `getcwd' function. */ #define HAVE_GETCWD 1 @@ -278,9 +257,6 @@ /* Define if mmap() can map files into memory */ #define HAVE_MMAP_FILE -/* define if the compiler implements namespaces */ -#define HAVE_NAMESPACES - /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ @@ -293,6 +269,9 @@ /* Define to 1 if you have the `opendir' function. */ #define HAVE_OPENDIR 1 +/* Define to 1 if you have the `posix_spawn' function. */ +#define HAVE_POSIX_SPAWN 1 + /* Define to 1 if you have the `powf' function. */ #define HAVE_POWF 1 @@ -377,9 +356,6 @@ /* Set to 1 if the std::isnan function is found in */ #define HAVE_STD_ISNAN_IN_CMATH 1 -/* Does not have std namespace iterator */ -#define HAVE_STD_ITERATOR 1 - /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 @@ -472,17 +448,17 @@ /* Define to 1 if the system has the type `u_int64_t'. */ /* #undef HAVE_U_INT64_T */ +/* Define to 1 if you have the header file. */ +/* #undef HAVE_VALGRIND_VALGRIND_H */ + /* Define to 1 if you have the header file. */ /* #undef HAVE_WINDOWS_H */ /* Define to 1 if you have the `__dso_handle' function. */ #define HAVE___DSO_HANDLE 1 -/* Time at which LLVM was configured */ -#define LLVM_CONFIGTIME "Thu Oct 15 19:21:29 CEST 2009" - /* Build multithreading support into LLVM */ -#define LLVM_MULTITHREADED 1 +/* #undef LLVM_MULTITHREADED */ /* LLVM architecture name for the native architecture, if available */ #define LLVM_NATIVE_ARCH X86Target @@ -551,25 +527,17 @@ #define PACKAGE_NAME "llvm" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "llvm 2.7svn" +#define PACKAGE_STRING "llvm 2.8svn" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "-llvm-" /* Define to the version of this package. */ -#define PACKAGE_VERSION "2.7svn" +#define PACKAGE_VERSION "2.8svn" /* Define as the return type of signal handlers (`int' or `void'). */ #define RETSIGTYPE void -/* If using the C implementation of alloca, define if you know the - direction of stack growth for your system; otherwise it will be - automatically deduced at runtime. - STACK_DIRECTION > 0 => grows toward higher addresses - STACK_DIRECTION < 0 => grows toward lower addresses - STACK_DIRECTION = 0 => direction of growth unknown */ -/* #undef STACK_DIRECTION */ - /* Define to 1 if the `S_IS*' macros in do not work properly. */ /* #undef STAT_MACROS_BROKEN */ From owner-svn-src-projects@FreeBSD.ORG Wed May 12 20:15:06 2010 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 3C4461065670; Wed, 12 May 2010 20:15:06 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 2C0458FC1D; Wed, 12 May 2010 20:15:06 +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 o4CKF55t012318; Wed, 12 May 2010 20:15:05 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4CKF5PF012316; Wed, 12 May 2010 20:15:05 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201005122015.o4CKF5PF012316@svn.freebsd.org> From: Ed Schouten Date: Wed, 12 May 2010 20:15:05 +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: r207997 - projects/clangbsd-import/contrib/llvm/tools/clang/lib/Frontend 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, 12 May 2010 20:15:06 -0000 Author: ed Date: Wed May 12 20:15:05 2010 New Revision: 207997 URL: http://svn.freebsd.org/changeset/base/207997 Log: Fix built-in header location of Clang. Modified: projects/clangbsd-import/contrib/llvm/tools/clang/lib/Frontend/InitHeaderSearch.cpp Modified: projects/clangbsd-import/contrib/llvm/tools/clang/lib/Frontend/InitHeaderSearch.cpp ============================================================================== --- projects/clangbsd-import/contrib/llvm/tools/clang/lib/Frontend/InitHeaderSearch.cpp Wed May 12 20:10:29 2010 (r207996) +++ projects/clangbsd-import/contrib/llvm/tools/clang/lib/Frontend/InitHeaderSearch.cpp Wed May 12 20:15:05 2010 (r207997) @@ -14,6 +14,7 @@ #include "clang/Frontend/Utils.h" #include "clang/Basic/FileManager.h" #include "clang/Basic/LangOptions.h" +#include "clang/Basic/Version.h" #include "clang/Frontend/HeaderSearchOptions.h" #include "clang/Lex/HeaderSearch.h" #include "llvm/ADT/SmallString.h" @@ -480,6 +481,8 @@ void InitHeaderSearch::AddDefaultCInclud break; } + AddPath("/usr/include/clang/" CLANG_VERSION_STRING, + System, false, false, false); AddPath("/usr/include", System, false, false, false); } @@ -812,6 +815,7 @@ void clang::ApplyHeaderSearchOptions(Hea else Init.AddDelimitedPaths(HSOpts.CEnvIncPath); +#if 0 /* XXX: Always points to an invalid path. */ if (HSOpts.UseBuiltinIncludes) { // Ignore the sys root, we *always* look for clang headers relative to // supplied path. @@ -819,6 +823,7 @@ void clang::ApplyHeaderSearchOptions(Hea P.appendComponent("include"); Init.AddPath(P.str(), System, false, false, false, /*IgnoreSysRoot=*/ true); } +#endif if (HSOpts.UseStandardIncludes) Init.AddDefaultSystemIncludePaths(Lang, Triple, From owner-svn-src-projects@FreeBSD.ORG Wed May 12 20:32:05 2010 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 46820106566B; Wed, 12 May 2010 20:32:05 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 2BE888FC0C; Wed, 12 May 2010 20:32:05 +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 o4CKW51E016170; Wed, 12 May 2010 20:32:05 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4CKW5LW016167; Wed, 12 May 2010 20:32:05 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201005122032.o4CKW5LW016167@svn.freebsd.org> From: Ed Schouten Date: Wed, 12 May 2010 20:32:05 +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: r207999 - in projects/clangbsd-import/usr.bin/clang/lib: libllvmsupport libllvmsystem 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, 12 May 2010 20:32:05 -0000 Author: ed Date: Wed May 12 20:32:04 2010 New Revision: 207999 URL: http://svn.freebsd.org/changeset/base/207999 Log: Remove REQUIRES_RTTI, which we don't need here. Also sort all files by name. Modified: projects/clangbsd-import/usr.bin/clang/lib/libllvmsupport/Makefile projects/clangbsd-import/usr.bin/clang/lib/libllvmsystem/Makefile Modified: projects/clangbsd-import/usr.bin/clang/lib/libllvmsupport/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libllvmsupport/Makefile Wed May 12 20:21:44 2010 (r207998) +++ projects/clangbsd-import/usr.bin/clang/lib/libllvmsupport/Makefile Wed May 12 20:32:04 2010 (r207999) @@ -3,18 +3,17 @@ LIB= llvmsupport SRCDIR= lib/Support -SRCS= circular_raw_ostream.cpp APFloat.cpp APInt.cpp APSInt.cpp Allocator.cpp \ - CommandLine.cpp ConstantRange.cpp Debug.cpp DeltaAlgorithm.cpp Dwarf.cpp \ - ErrorHandling.cpp FileUtilities.cpp FoldingSet.cpp FormattedStream.cpp \ - GraphWriter.cpp IsInf.cpp IsNAN.cpp ManagedStatic.cpp \ - MemoryBuffer.cpp MemoryObject.cpp PluginLoader.cpp \ - PrettyStackTrace.cpp Regex.cpp SlowOperationInformer.cpp \ - SmallPtrSet.cpp SmallVector.cpp SourceMgr.cpp Statistic.cpp \ - StringExtras.cpp \ - StringMap.cpp StringPool.cpp StringRef.cpp SystemUtils.cpp \ - TargetRegistry.cpp Timer.cpp Triple.cpp Twine.cpp raw_os_ostream.cpp \ - raw_ostream.cpp regcomp.c regerror.c regexec.c regfree.c regstrlcpy.c - -REQUIRES_RTTI=yo +SRCS= APFloat.cpp APInt.cpp APSInt.cpp Allocator.cpp CommandLine.cpp \ + ConstantRange.cpp Debug.cpp DeltaAlgorithm.cpp Dwarf.cpp \ + ErrorHandling.cpp FileUtilities.cpp FoldingSet.cpp \ + FormattedStream.cpp GraphWriter.cpp IsInf.cpp IsNAN.cpp \ + ManagedStatic.cpp MemoryBuffer.cpp MemoryObject.cpp \ + PluginLoader.cpp PrettyStackTrace.cpp Regex.cpp \ + SlowOperationInformer.cpp SmallPtrSet.cpp SmallVector.cpp \ + SourceMgr.cpp Statistic.cpp StringExtras.cpp StringMap.cpp \ + StringPool.cpp StringRef.cpp SystemUtils.cpp \ + TargetRegistry.cpp Timer.cpp Triple.cpp Twine.cpp \ + circular_raw_ostream.cpp raw_os_ostream.cpp raw_ostream.cpp \ + regcomp.c regerror.c regexec.c regfree.c regstrlcpy.c .include "../../clang.lib.mk" Modified: projects/clangbsd-import/usr.bin/clang/lib/libllvmsystem/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libllvmsystem/Makefile Wed May 12 20:21:44 2010 (r207998) +++ projects/clangbsd-import/usr.bin/clang/lib/libllvmsystem/Makefile Wed May 12 20:32:04 2010 (r207999) @@ -3,11 +3,10 @@ LIB= llvmsystem SRCDIR= lib/System -SRCS= Alarm.cpp Atomic.cpp Disassembler.cpp DynamicLibrary.cpp Errno.cpp \ - Host.cpp IncludeFile.cpp Memory.cpp Mutex.cpp Path.cpp \ - Process.cpp Program.cpp RWMutex.cpp SearchForAddressOfSpecialSymbol.cpp \ - Signals.cpp ThreadLocal.cpp Threading.cpp TimeValue.cpp Valgrind.cpp - -REQUIRES_RTTI=yo +SRCS= Alarm.cpp Atomic.cpp Disassembler.cpp DynamicLibrary.cpp \ + Errno.cpp Host.cpp IncludeFile.cpp Memory.cpp Mutex.cpp \ + Path.cpp Process.cpp Program.cpp RWMutex.cpp \ + SearchForAddressOfSpecialSymbol.cpp Signals.cpp \ + ThreadLocal.cpp Threading.cpp TimeValue.cpp Valgrind.cpp .include "../../clang.lib.mk" From owner-svn-src-projects@FreeBSD.ORG Wed May 12 20:34:47 2010 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 EC7C6106566B; Wed, 12 May 2010 20:34:47 +0000 (UTC) (envelope-from rdivacky@vlk.vlakno.cz) Received: from vlakno.cz (lev.vlakno.cz [77.93.215.190]) by mx1.freebsd.org (Postfix) with ESMTP id A32438FC0A; Wed, 12 May 2010 20:34:47 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by vlakno.cz (Postfix) with ESMTP id 78D439CB0D2; Wed, 12 May 2010 22:31:48 +0200 (CEST) X-Virus-Scanned: amavisd-new at vlakno.cz Received: from vlakno.cz ([127.0.0.1]) by localhost (lev.vlakno.cz [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id OQL+W2Te5FYa; Wed, 12 May 2010 22:31:46 +0200 (CEST) Received: from vlk.vlakno.cz (localhost [127.0.0.1]) by vlakno.cz (Postfix) with ESMTP id 55AE39CB140; Wed, 12 May 2010 22:31:46 +0200 (CEST) Received: (from rdivacky@localhost) by vlk.vlakno.cz (8.14.3/8.14.3/Submit) id o4CKVk8v019143; Wed, 12 May 2010 22:31:46 +0200 (CEST) (envelope-from rdivacky) Date: Wed, 12 May 2010 22:31:46 +0200 From: Roman Divacky To: Ed Schouten Message-ID: <20100512203146.GA19049@freebsd.org> References: <201005122032.o4CKW5LW016167@svn.freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201005122032.o4CKW5LW016167@svn.freebsd.org> User-Agent: Mutt/1.4.2.3i Cc: svn-src-projects@FreeBSD.org, src-committers@FreeBSD.org Subject: Re: svn commit: r207999 - in projects/clangbsd-import/usr.bin/clang/lib: libllvmsupport libllvmsystem 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, 12 May 2010 20:34:48 -0000 On Wed, May 12, 2010 at 08:32:05PM +0000, Ed Schouten wrote: > Author: ed > Date: Wed May 12 20:32:04 2010 > New Revision: 207999 > URL: http://svn.freebsd.org/changeset/base/207999 > > Log: > Remove REQUIRES_RTTI, which we don't need here. > > Also sort all files by name. I guess we want to resurrect this in future because of 1) upstream does this 2) it's an optimization (smaller binary etc.) From owner-svn-src-projects@FreeBSD.ORG Wed May 12 20:38:33 2010 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 73F9E106564A; Wed, 12 May 2010 20:38:33 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 613288FC17; Wed, 12 May 2010 20:38: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 o4CKcXLx017658; Wed, 12 May 2010 20:38:33 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4CKcXGJ017638; Wed, 12 May 2010 20:38:33 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201005122038.o4CKcXGJ017638@svn.freebsd.org> From: Ed Schouten Date: Wed, 12 May 2010 20:38: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: r208000 - in projects/clangbsd-import: . etc/mtree gnu/lib/libgcc gnu/lib/libstdc++ gnu/lib/libsupc++ gnu/usr.bin/cc gnu/usr.bin/cc/cc_tools gnu/usr.bin/cc/include lib/libc/gen release/... 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, 12 May 2010 20:38:33 -0000 Author: ed Date: Wed May 12 20:38:32 2010 New Revision: 208000 URL: http://svn.freebsd.org/changeset/base/208000 Log: MFC already. I want to have obrien's fix in here, because it prevents possible mishaps when using clang. Modified: projects/clangbsd-import/ObsoleteFiles.inc projects/clangbsd-import/etc/mtree/BSD.include.dist projects/clangbsd-import/gnu/lib/libgcc/Makefile projects/clangbsd-import/gnu/lib/libstdc++/Makefile projects/clangbsd-import/gnu/lib/libsupc++/Makefile projects/clangbsd-import/gnu/usr.bin/cc/Makefile.inc projects/clangbsd-import/gnu/usr.bin/cc/cc_tools/freebsd-native.h projects/clangbsd-import/gnu/usr.bin/cc/include/Makefile projects/clangbsd-import/lib/libc/gen/glob.c projects/clangbsd-import/release/doc/en_US.ISO8859-1/hardware/article.sgml projects/clangbsd-import/release/doc/share/misc/dev.archlist.txt projects/clangbsd-import/sbin/restore/symtab.c projects/clangbsd-import/share/man/man4/fxp.4 projects/clangbsd-import/share/man/man4/mfi.4 projects/clangbsd-import/share/man/man4/run.4 projects/clangbsd-import/sys/kern/vfs_subr.c projects/clangbsd-import/sys/modules/Makefile projects/clangbsd-import/sys/netinet/sctp_indata.c projects/clangbsd-import/sys/netinet/sctp_output.c Directory Properties: projects/clangbsd-import/ (props changed) projects/clangbsd-import/cddl/contrib/opensolaris/ (props changed) projects/clangbsd-import/contrib/ee/ (props changed) projects/clangbsd-import/contrib/expat/ (props changed) projects/clangbsd-import/contrib/file/ (props changed) projects/clangbsd-import/contrib/gdb/ (props changed) projects/clangbsd-import/contrib/gnu-sort/ (props changed) projects/clangbsd-import/contrib/groff/ (props changed) projects/clangbsd-import/contrib/less/ (props changed) projects/clangbsd-import/contrib/libpcap/ (props changed) projects/clangbsd-import/contrib/ncurses/ (props changed) projects/clangbsd-import/contrib/one-true-awk/ (props changed) projects/clangbsd-import/contrib/openbsm/ (props changed) projects/clangbsd-import/contrib/openpam/ (props changed) projects/clangbsd-import/contrib/pf/ (props changed) projects/clangbsd-import/contrib/tcpdump/ (props changed) projects/clangbsd-import/contrib/tcsh/ (props changed) projects/clangbsd-import/contrib/tzcode/stdtime/ (props changed) projects/clangbsd-import/contrib/tzcode/zic/ (props changed) projects/clangbsd-import/contrib/tzdata/ (props changed) projects/clangbsd-import/contrib/wpa/ (props changed) projects/clangbsd-import/lib/libutil/ (props changed) projects/clangbsd-import/lib/libz/ (props changed) projects/clangbsd-import/sbin/ (props changed) projects/clangbsd-import/sbin/ipfw/ (props changed) projects/clangbsd-import/sys/ (props changed) projects/clangbsd-import/sys/amd64/include/xen/ (props changed) projects/clangbsd-import/sys/cddl/contrib/opensolaris/ (props changed) projects/clangbsd-import/sys/contrib/dev/acpica/ (props changed) projects/clangbsd-import/sys/contrib/x86emu/ (props changed) projects/clangbsd-import/sys/dev/xen/xenpci/ (props changed) projects/clangbsd-import/usr.bin/csup/ (props changed) projects/clangbsd-import/usr.bin/procstat/ (props changed) Modified: projects/clangbsd-import/ObsoleteFiles.inc ============================================================================== --- projects/clangbsd-import/ObsoleteFiles.inc Wed May 12 20:32:04 2010 (r207999) +++ projects/clangbsd-import/ObsoleteFiles.inc Wed May 12 20:38:32 2010 (r208000) @@ -14,6 +14,24 @@ # The file is partitioned: OLD_FILES first, then OLD_LIBS and OLD_DIRS last. # +# 20100511: move GCC-specific headers to /usr/include/gcc +.if ${TARGET_ARCH} == "amd64" || ${TARGET_ARCH} == "i386" +OLD_FILES+=usr/include/emmintrin.h +OLD_FILES+=usr/include/mm_malloc.h +OLD_FILES+=usr/include/pmmintrin.h +OLD_FILES+=usr/include/xmmintrin.h +.endif +.if ${TARGET_ARCH} == "amd64" || ${TARGET_ARCH} == "i386" || ${TARGET_ARCH} == "arm" +OLD_FILES+=usr/include/mmintrin.h +.endif +.if ${TARGET_ARCH} == "ia64" +OLD_FILES+=usr/include/ia64intrin.h +.endif +.if ${TARGET_ARCH} == "powerpc" +OLD_FILES+=usr/include/altivec.h +OLD_FILES+=usr/include/ppc-asm.h +OLD_FILES+=usr/include/spe.h +.endif # 20100416: [mips] removed .if ${TARGET_ARCH} == "mips" OLD_FILES+=usr/include/machine/psl.h Modified: projects/clangbsd-import/etc/mtree/BSD.include.dist ============================================================================== --- projects/clangbsd-import/etc/mtree/BSD.include.dist Wed May 12 20:32:04 2010 (r207999) +++ projects/clangbsd-import/etc/mtree/BSD.include.dist Wed May 12 20:38:32 2010 (r208000) @@ -163,6 +163,10 @@ unionfs .. .. + gcc + 4.2 + .. + .. geom cache .. Modified: projects/clangbsd-import/gnu/lib/libgcc/Makefile ============================================================================== --- projects/clangbsd-import/gnu/lib/libgcc/Makefile Wed May 12 20:32:04 2010 (r207999) +++ projects/clangbsd-import/gnu/lib/libgcc/Makefile Wed May 12 20:38:32 2010 (r208000) @@ -1,4 +1,5 @@ # $FreeBSD$ + GCCDIR= ${.CURDIR}/../../../contrib/gcc GCCLIB= ${.CURDIR}/../../../contrib/gcclibs Modified: projects/clangbsd-import/gnu/lib/libstdc++/Makefile ============================================================================== --- projects/clangbsd-import/gnu/lib/libstdc++/Makefile Wed May 12 20:32:04 2010 (r207999) +++ projects/clangbsd-import/gnu/lib/libstdc++/Makefile Wed May 12 20:38:32 2010 (r208000) @@ -1,5 +1,6 @@ # $FreeBSD$ +GCCVER= 4.2 GCCDIR= ${.CURDIR}/../../../contrib/gcc GCCLIB= ${.CURDIR}/../../../contrib/gcclibs SRCDIR= ${.CURDIR}/../../../contrib/libstdc++ @@ -94,7 +95,7 @@ CLEANFILES+= atomicity.cc INCSGROUPS= BITSHDRS BKWHDRS EXTHDRS BASEHDRS BASEXHDRS STDHDRS \ TARGETHDRS THRHDRS DEBUGHDRS TR1HDRS PBHDRS0 PBHDRS1 -CXXINCLUDEDIR= ${INCLUDEDIR}/c++/4.2 +CXXINCLUDEDIR= ${INCLUDEDIR}/c++/${GCCVER} STDHDRS= std_algorithm.h std_bitset.h std_complex.h std_deque.h \ std_fstream.h std_functional.h std_iomanip.h std_ios.h \ Modified: projects/clangbsd-import/gnu/lib/libsupc++/Makefile ============================================================================== --- projects/clangbsd-import/gnu/lib/libsupc++/Makefile Wed May 12 20:32:04 2010 (r207999) +++ projects/clangbsd-import/gnu/lib/libsupc++/Makefile Wed May 12 20:38:32 2010 (r208000) @@ -1,10 +1,11 @@ # $FreeBSD$ +GCCVER= 4.2 GCCDIR= ${.CURDIR}/../../../contrib/gcc GCCLIB= ${.CURDIR}/../../../contrib/gcclibs SRCDIR= ${.CURDIR}/../../../contrib/libstdc++/libsupc++ -.PATH: ${SRCDIR} ${GCCLIB}/libiberty +.PATH: ${SRCDIR} ${GCCLIB}/libiberty # Static only. LIB= supc++ @@ -27,7 +28,7 @@ PO_CXXFLAGS= ${CXXFLAGS:N-ffunction-s HDRS= exception new typeinfo cxxabi.h exception_defines.h INCS= ${HDRS:S;^;${SRCDIR}/;} -INCSDIR=${INCLUDEDIR}/c++/4.2 +INCSDIR=${INCLUDEDIR}/c++/${GCCVER} unwind.h: ${GCCDIR}/unwind-generic.h ln -sf ${.ALLSRC} ${.TARGET} Modified: projects/clangbsd-import/gnu/usr.bin/cc/Makefile.inc ============================================================================== --- projects/clangbsd-import/gnu/usr.bin/cc/Makefile.inc Wed May 12 20:32:04 2010 (r207999) +++ projects/clangbsd-import/gnu/usr.bin/cc/Makefile.inc Wed May 12 20:38:32 2010 (r208000) @@ -6,6 +6,7 @@ .if !defined(__CC_MAKEFILE_INC__) __CC_MAKEFILE_INC__= ${MFILE} +GCCVER= 4.2 GCCDIR= ${.CURDIR}/../../../../contrib/gcc GCCLIB= ${.CURDIR}/../../../../contrib/gcclibs @@ -15,6 +16,7 @@ GCCLIB= ${.CURDIR}/../../../../contrib/g MD_FILE= ${GCCDIR}/config/${GCC_CPU}/${GCC_CPU}.md GCC_TARGET= ${TARGET_ARCH}-undermydesk-freebsd +CFLAGS+= -DGCCVER=\"${GCCVER}\" CFLAGS+= -DIN_GCC -DHAVE_CONFIG_H CFLAGS+= -DPREFIX=\"${TOOLS_PREFIX}/usr\" #CFLAGS+= -DWANT_COMPILER_INVARIANTS Modified: projects/clangbsd-import/gnu/usr.bin/cc/cc_tools/freebsd-native.h ============================================================================== --- projects/clangbsd-import/gnu/usr.bin/cc/cc_tools/freebsd-native.h Wed May 12 20:32:04 2010 (r207999) +++ projects/clangbsd-import/gnu/usr.bin/cc/cc_tools/freebsd-native.h Wed May 12 20:38:32 2010 (r208000) @@ -15,9 +15,9 @@ #undef LOCAL_INCLUDE_DIR /* We don't wish to support one. */ /* Look for the include files in the system-defined places. */ -#define GPLUSPLUS_INCLUDE_DIR PREFIX"/include/c++/4.2" -#define GPLUSPLUS_BACKWARD_INCLUDE_DIR PREFIX"/include/c++/4.2/backward" -#define GCC_INCLUDE_DIR PREFIX"/include" +#define GPLUSPLUS_INCLUDE_DIR PREFIX"/include/c++/"GCCVER +#define GPLUSPLUS_BACKWARD_INCLUDE_DIR PREFIX"/include/c++/"GCCVER"/backward" +#define GCC_INCLUDE_DIR PREFIX"/include/gcc/"GCCVER #ifdef CROSS_COMPILE #define CROSS_INCLUDE_DIR PREFIX"/include" #else Modified: projects/clangbsd-import/gnu/usr.bin/cc/include/Makefile ============================================================================== --- projects/clangbsd-import/gnu/usr.bin/cc/include/Makefile Wed May 12 20:32:04 2010 (r207999) +++ projects/clangbsd-import/gnu/usr.bin/cc/include/Makefile Wed May 12 20:38:32 2010 (r208000) @@ -2,6 +2,8 @@ .include "../Makefile.inc" +INCSDIR=${INCLUDEDIR}/gcc/${GCCVER} + .PATH: ${GCCDIR}/config/${GCC_CPU} .if ${TARGET_ARCH} == "i386" || ${TARGET_ARCH} == "amd64" Modified: projects/clangbsd-import/lib/libc/gen/glob.c ============================================================================== --- projects/clangbsd-import/lib/libc/gen/glob.c Wed May 12 20:32:04 2010 (r207999) +++ projects/clangbsd-import/lib/libc/gen/glob.c Wed May 12 20:38:32 2010 (r208000) @@ -433,9 +433,9 @@ static int glob0(const Char *pattern, glob_t *pglob, size_t *limit) { const Char *qpatnext; - int c, err; + int err; size_t oldpathc; - Char *bufnext, patbuf[MAXPATHLEN]; + Char *bufnext, c, patbuf[MAXPATHLEN]; qpatnext = globtilde(pattern, patbuf, MAXPATHLEN, pglob); oldpathc = pglob->gl_pathc; Modified: projects/clangbsd-import/release/doc/en_US.ISO8859-1/hardware/article.sgml ============================================================================== --- projects/clangbsd-import/release/doc/en_US.ISO8859-1/hardware/article.sgml Wed May 12 20:32:04 2010 (r207999) +++ projects/clangbsd-import/release/doc/en_US.ISO8859-1/hardware/article.sgml Wed May 12 20:38:32 2010 (r208000) @@ -842,6 +842,8 @@ &hwlist.ep; + &hwlist.et; + &hwlist.ex; &hwlist.fe; @@ -890,6 +892,8 @@ &hwlist.sf; + &hwlist.sge; + &hwlist.sis; &hwlist.sk; @@ -981,10 +985,15 @@ [&arch.i386;, &arch.amd64;] Marvell Libertas IEEE 802.11b/g PCI network adapters (&man.malo.4; driver) + Marvell 88W8363 IEEE 802.11n wireless network + adapters (&man.mwl.4; driver) + &hwlist.ral; &hwlist.rum; + &hwlist.run; + &hwlist.uath; &hwlist.upgt; Modified: projects/clangbsd-import/release/doc/share/misc/dev.archlist.txt ============================================================================== --- projects/clangbsd-import/release/doc/share/misc/dev.archlist.txt Wed May 12 20:32:04 2010 (r207999) +++ projects/clangbsd-import/release/doc/share/misc/dev.archlist.txt Wed May 12 20:38:32 2010 (r208000) @@ -104,6 +104,7 @@ rc i386 ral i386,amd64 rue i386,pc98,amd64 rum i386,amd64 +run i386,amd64 safe i386,pc98,amd64 sbp i386,sparc64,ia64,amd64 sis i386,pc98,ia64,amd64 Modified: projects/clangbsd-import/sbin/restore/symtab.c ============================================================================== --- projects/clangbsd-import/sbin/restore/symtab.c Wed May 12 20:32:04 2010 (r207999) +++ projects/clangbsd-import/sbin/restore/symtab.c Wed May 12 20:38:32 2010 (r208000) @@ -443,7 +443,7 @@ dumpsymtable(char *filename, long checkp FILE *fd; struct symtableheader hdr; - vprintf(stdout, "Check pointing the restore\n"); + vprintf(stdout, "Checkpointing the restore\n"); if (Nflag) return; if ((fd = fopen(filename, "w")) == NULL) { Modified: projects/clangbsd-import/share/man/man4/fxp.4 ============================================================================== --- projects/clangbsd-import/share/man/man4/fxp.4 Wed May 12 20:32:04 2010 (r207999) +++ projects/clangbsd-import/share/man/man4/fxp.4 Wed May 12 20:38:32 2010 (r208000) @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd December 15, 2008 +.Dd May 12, 2010 .Dt FXP 4 .Os .Sh NAME @@ -62,23 +62,25 @@ except i82557, i82259ER and early i82558 The .Nm driver supports the following media types: -.Pp -.Bl -tag -width xxxxxxxxxxxxxxxxxxxx -.It autoselect -Enable autoselection of the media type and options -.It 10baseT/UTP -Set 10Mbps operation -.It 100baseTX -Set 100Mbps (Fast Ethernet) operation +.Bl -tag -width "10baseT/UTP" +.It Cm autoselect +Enable autoselection of the media type and options. +The autoselected mode can be overridden by adding the media options to +.Xr rc.conf 5 . +.It Cm 10baseT/UTP +Set 10Mbps operation. +.It Cm 100baseTX +Set 100Mbps (Fast Ethernet) operation. .El .Pp The .Nm driver supports the following media options: -.Pp -.Bl -tag -width xxxxxxxxxxxxxxxxxxxx -.It full-duplex -Set full duplex operation +.Bl -tag -width "full-duplex" +.It Cm full-duplex +Force full duplex operation. +.It Cm half-duplex +Force half duplex operation. .El .Pp Note that 100baseTX media type is not available on the Pro/10. @@ -143,6 +145,43 @@ NEC PC-9821X-B06 (PC-98) .It Many on-board network interfaces on Intel motherboards .El +.Sh LOADER TUNABLES +Tunables can be set at the +.Xr loader 8 +prompt before booting the kernel or stored in +.Xr loader.conf 5 . +The following variables are available as both +.Xr loader 8 +tunables and +.Xr sysctl 8 +variables: +.Bl -tag -width "xxxxxx" +.It Va dev.fxp.%d.int_delay +Maximum amount of time, in microseconds, that an interrupt may +be delayed in an attempt to coalesce interrupts. +This is only effective if the Intel microcode is loaded. +The accepted range is 300 to 3000, the default is 1000. +.It Va dev.fxp.%d.bundle_max +Number of packets that will be bundled, before an interrupt is +generated. +This is only effective if the Intel microcode is loaded. +The accepted range is 1 to 65535, the default is 6. +.It Va dev.fxp.%d.noflow +Controls whether flow control should be used or not. +The default is 1 (no flow control). +.El +.Sh SYSCTL VARIABLES +The following variables are available as +.Xr sysctl 8 +variables. +.Bl -tag -width "xxxxxx" +.It Va dev.fxp.%d.rnr +This is a read-only variable and shows the number of events of +RNR (resource not ready). +.It Va dev.fxp.%d.stats +This is a read-only variable and displays useful MAC counters +maintained in the driver. +.El .Sh DIAGNOSTICS .Bl -diag .It "fxp%d: couldn't map memory" Modified: projects/clangbsd-import/share/man/man4/mfi.4 ============================================================================== --- projects/clangbsd-import/share/man/man4/mfi.4 Wed May 12 20:32:04 2010 (r207999) +++ projects/clangbsd-import/share/man/man4/mfi.4 Wed May 12 20:38:32 2010 (r208000) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd January 2, 2010 +.Dd May 12, 2010 .Dt MFI 4 .Os .Sh NAME @@ -91,6 +91,8 @@ Dell PERC5 .It Dell PERC6 .It +IBM ServeRAID M5015 SAS/SATA +.It IBM ServeRAID-MR10i .It Intel RAID Controller SROMBSAS18E Modified: projects/clangbsd-import/share/man/man4/run.4 ============================================================================== --- projects/clangbsd-import/share/man/man4/run.4 Wed May 12 20:32:04 2010 (r207999) +++ projects/clangbsd-import/share/man/man4/run.4 Wed May 12 20:38:32 2010 (r208000) @@ -98,7 +98,9 @@ driver can be configured at runtime with or on boot with .Xr hostname.if 5 . .Sh HARDWARE -The following adapters should work: +The +.Nm +driver supports the following wireless adapters: .Pp .Bl -tag -width Ds -offset indent -compact .It Airlink101 AWLL6090 Modified: projects/clangbsd-import/sys/kern/vfs_subr.c ============================================================================== --- projects/clangbsd-import/sys/kern/vfs_subr.c Wed May 12 20:32:04 2010 (r207999) +++ projects/clangbsd-import/sys/kern/vfs_subr.c Wed May 12 20:38:32 2010 (r208000) @@ -821,6 +821,19 @@ static struct kproc_desc vnlru_kp = { }; SYSINIT(vnlru, SI_SUB_KTHREAD_UPDATE, SI_ORDER_FIRST, kproc_start, &vnlru_kp); + +static void +vfs_lowmem(void *arg __unused) +{ + + /* + * On low memory condition free 1/8th of the free vnodes. + */ + mtx_lock(&vnode_free_list_mtx); + vnlru_free(freevnodes / 8); + mtx_unlock(&vnode_free_list_mtx); +} +EVENTHANDLER_DEFINE(vm_lowmem, vfs_lowmem, NULL, 0); /* * Routines having to do with the management of the vnode table. Modified: projects/clangbsd-import/sys/modules/Makefile ============================================================================== --- projects/clangbsd-import/sys/modules/Makefile Wed May 12 20:32:04 2010 (r207999) +++ projects/clangbsd-import/sys/modules/Makefile Wed May 12 20:38:32 2010 (r208000) @@ -144,6 +144,7 @@ SUBDIR= ${_3dfx} \ ${_iwn} \ ${_iwnfw} \ ${_ixgb} \ + ${_ixgbe} \ jme \ joy \ kbdmux \ @@ -190,6 +191,7 @@ SUBDIR= ${_3dfx} \ msk \ mvs \ mwl \ + mwlfw \ mxge \ my \ ${_ncp} \ @@ -465,6 +467,7 @@ _iwifw= iwifw _iwn= iwn _iwnfw= iwnfw _ixgb= ixgb +_ixgbe= ixgbe _mly= mly _nfe= nfe _nve= nve @@ -537,6 +540,7 @@ _iwifw= iwifw _iwn= iwn _iwnfw= iwnfw _ixgb= ixgb +_ixgbe= ixgbe _lindev= lindev _linprocfs= linprocfs _linsysfs= linsysfs Modified: projects/clangbsd-import/sys/netinet/sctp_indata.c ============================================================================== --- projects/clangbsd-import/sys/netinet/sctp_indata.c Wed May 12 20:32:04 2010 (r207999) +++ projects/clangbsd-import/sys/netinet/sctp_indata.c Wed May 12 20:38:32 2010 (r208000) @@ -3750,7 +3750,8 @@ sctp_try_advance_peer_ack_point(struct s * the chunk, advance our peer ack point and we can check * the next chunk. */ - if (tp1->sent == SCTP_FORWARD_TSN_SKIP) { + if ((tp1->sent == SCTP_FORWARD_TSN_SKIP) || + (tp1->sent == SCTP_DATAGRAM_ACKED)) { /* advance PeerAckPoint goes forward */ if (compare_with_wrap(tp1->rec.data.TSN_seq, asoc->advanced_peer_ack_point, @@ -5351,7 +5352,7 @@ sctp_kick_prsctp_reorder_queue(struct sc { struct sctp_queued_to_read *ctl, *nctl; struct sctp_association *asoc; - int tt; + uint16_t tt; asoc = &stcb->asoc; tt = strmin->last_sequence_delivered; Modified: projects/clangbsd-import/sys/netinet/sctp_output.c ============================================================================== --- projects/clangbsd-import/sys/netinet/sctp_output.c Wed May 12 20:32:04 2010 (r207999) +++ projects/clangbsd-import/sys/netinet/sctp_output.c Wed May 12 20:38:32 2010 (r208000) @@ -9707,7 +9707,6 @@ send_forward_tsn(struct sctp_tcb *stcb, chk->rec.chunk_id.can_take_data = 0; chk->asoc = asoc; chk->whoTo = NULL; - chk->data = sctp_get_mbuf_for_msg(MCLBYTES, 0, M_DONTWAIT, 1, MT_DATA); if (chk->data == NULL) { sctp_free_a_chunk(stcb, chk); @@ -9734,7 +9733,8 @@ sctp_fill_in_rest: unsigned int cnt_of_skipped = 0; TAILQ_FOREACH(at, &asoc->sent_queue, sctp_next) { - if (at->sent != SCTP_FORWARD_TSN_SKIP) { + if ((at->sent != SCTP_FORWARD_TSN_SKIP) && + (at->sent != SCTP_DATAGRAM_ACKED)) { /* no more to look at */ break; } @@ -9775,9 +9775,8 @@ sctp_fill_in_rest: 0xff, 0xff, cnt_of_space, space_needed); } - cnt_of_skipped = (cnt_of_space - - ((sizeof(struct sctp_forward_tsn_chunk)) / - sizeof(struct sctp_strseq))); + cnt_of_skipped = cnt_of_space - sizeof(struct sctp_forward_tsn_chunk); + cnt_of_skipped /= sizeof(struct sctp_strseq); /*- * Go through and find the TSN that will be the one * we report. From owner-svn-src-projects@FreeBSD.ORG Wed May 12 20:58:08 2010 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 DFF871065674; Wed, 12 May 2010 20:58:08 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id D09868FC1A; Wed, 12 May 2010 20:58:08 +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 o4CKw87P021981; Wed, 12 May 2010 20:58:08 GMT (envelope-from rdivacky@svn.freebsd.org) Received: (from rdivacky@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4CKw8ir021979; Wed, 12 May 2010 20:58:08 GMT (envelope-from rdivacky@svn.freebsd.org) Message-Id: <201005122058.o4CKw8ir021979@svn.freebsd.org> From: Roman Divacky Date: Wed, 12 May 2010 20:58:08 +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: r208001 - projects/clangbsd/usr.bin 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, 12 May 2010 20:58:09 -0000 Author: rdivacky Date: Wed May 12 20:58:08 2010 New Revision: 208001 URL: http://svn.freebsd.org/changeset/base/208001 Log: build clang only when WITHOUT_TOOLCHAIN is not defined Modified: projects/clangbsd/usr.bin/Makefile Modified: projects/clangbsd/usr.bin/Makefile ============================================================================== --- projects/clangbsd/usr.bin/Makefile Wed May 12 20:38:32 2010 (r208000) +++ projects/clangbsd/usr.bin/Makefile Wed May 12 20:58:08 2010 (r208001) @@ -277,10 +277,6 @@ _cpio= cpio _calendar= calendar .endif -.if ${MK_CLANG} != "no" -_clang= clang -.endif - .if ${MK_HESIOD} != "no" _hesinfo= hesinfo .endif @@ -350,6 +346,9 @@ _ul= ul _ar= ar _c89= c89 _c99= c99 +.if ${MK_CLANG} != "no" +_clang= clang +.endif _compile_et= compile_et _ctags= ctags _file2c= file2c From owner-svn-src-projects@FreeBSD.ORG Thu May 13 15:43:41 2010 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 65EFF106566B; Thu, 13 May 2010 15:43:41 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 51B378FC08; Thu, 13 May 2010 15:43:41 +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 o4DFhfig076252; Thu, 13 May 2010 15:43:41 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4DFhfEn076225; Thu, 13 May 2010 15:43:41 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201005131543.o4DFhfEn076225@svn.freebsd.org> From: Ed Schouten Date: Thu, 13 May 2010 15:43:41 +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: r208031 - in projects/clangbsd-import/usr.bin/clang: bin/tblgen lib lib/libclanganalysis lib/libclangast lib/libclangchecker lib/libclangcodegen lib/libclangdriver lib/libclangfrontend ... 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, 13 May 2010 15:43:41 -0000 Author: ed Date: Thu May 13 15:43:40 2010 New Revision: 208031 URL: http://svn.freebsd.org/changeset/base/208031 Log: Be a bit consistent with respect to style. - Sort all file names lexicographically. - Use 72 columns at most. Modified: projects/clangbsd-import/usr.bin/clang/bin/tblgen/Makefile projects/clangbsd-import/usr.bin/clang/lib/Makefile projects/clangbsd-import/usr.bin/clang/lib/libclanganalysis/Makefile projects/clangbsd-import/usr.bin/clang/lib/libclangast/Makefile projects/clangbsd-import/usr.bin/clang/lib/libclangchecker/Makefile projects/clangbsd-import/usr.bin/clang/lib/libclangcodegen/Makefile projects/clangbsd-import/usr.bin/clang/lib/libclangdriver/Makefile projects/clangbsd-import/usr.bin/clang/lib/libclangfrontend/Makefile projects/clangbsd-import/usr.bin/clang/lib/libclanglex/Makefile projects/clangbsd-import/usr.bin/clang/lib/libclangsema/Makefile projects/clangbsd-import/usr.bin/clang/lib/libllvmanalysis/Makefile projects/clangbsd-import/usr.bin/clang/lib/libllvmarmcodegen/Makefile projects/clangbsd-import/usr.bin/clang/lib/libllvmasmprinter/Makefile projects/clangbsd-import/usr.bin/clang/lib/libllvmcodegen/Makefile projects/clangbsd-import/usr.bin/clang/lib/libllvmcore/Makefile projects/clangbsd-import/usr.bin/clang/lib/libllvminstcombine/Makefile projects/clangbsd-import/usr.bin/clang/lib/libllvmipa/Makefile projects/clangbsd-import/usr.bin/clang/lib/libllvmipo/Makefile projects/clangbsd-import/usr.bin/clang/lib/libllvmmc/Makefile projects/clangbsd-import/usr.bin/clang/lib/libllvmmcparser/Makefile projects/clangbsd-import/usr.bin/clang/lib/libllvmpowerpccodegen/Makefile projects/clangbsd-import/usr.bin/clang/lib/libllvmscalaropts/Makefile projects/clangbsd-import/usr.bin/clang/lib/libllvmselectiondag/Makefile projects/clangbsd-import/usr.bin/clang/lib/libllvmtarget/Makefile projects/clangbsd-import/usr.bin/clang/lib/libllvmtransformutils/Makefile projects/clangbsd-import/usr.bin/clang/lib/libllvmx86codegen/Makefile Modified: projects/clangbsd-import/usr.bin/clang/bin/tblgen/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/bin/tblgen/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/bin/tblgen/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -3,18 +3,19 @@ PROG_CXX=tblgen SRCDIR= utils/TableGen -SRCS= ARMDecoderEmitter.cpp AsmMatcherEmitter.cpp AsmWriterEmitter.cpp \ - AsmWriterInst.cpp CallingConvEmitter.cpp \ +SRCS= ARMDecoderEmitter.cpp AsmMatcherEmitter.cpp \ + AsmWriterEmitter.cpp AsmWriterInst.cpp CallingConvEmitter.cpp \ ClangDiagnosticsEmitter.cpp CodeEmitterGen.cpp \ CodeGenDAGPatterns.cpp CodeGenInstruction.cpp \ CodeGenTarget.cpp DAGISelEmitter.cpp DAGISelMatcher.cpp \ - DAGISelMatcherEmitter.cpp DAGISelMatcherGen.cpp DAGISelMatcherOpt.cpp \ - DisassemblerEmitter.cpp EDEmitter.cpp FastISelEmitter.cpp \ - InstrEnumEmitter.cpp InstrInfoEmitter.cpp IntrinsicEmitter.cpp \ - LLVMCConfigurationEmitter.cpp OptParserEmitter.cpp Record.cpp \ - RegisterInfoEmitter.cpp SubtargetEmitter.cpp TGLexer.cpp \ - TGParser.cpp TGValueTypes.cpp TableGen.cpp TableGenBackend.cpp \ - X86DisassemblerTables.cpp X86RecognizableInstr.cpp + DAGISelMatcherEmitter.cpp DAGISelMatcherGen.cpp \ + DAGISelMatcherOpt.cpp DisassemblerEmitter.cpp EDEmitter.cpp \ + FastISelEmitter.cpp InstrEnumEmitter.cpp InstrInfoEmitter.cpp \ + IntrinsicEmitter.cpp LLVMCConfigurationEmitter.cpp \ + OptParserEmitter.cpp Record.cpp RegisterInfoEmitter.cpp \ + SubtargetEmitter.cpp TGLexer.cpp TGParser.cpp TGValueTypes.cpp \ + TableGen.cpp TableGenBackend.cpp X86DisassemblerTables.cpp \ + X86RecognizableInstr.cpp MAN= LIBDEPS=llvmsupport llvmsystem Modified: projects/clangbsd-import/usr.bin/clang/lib/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -11,6 +11,7 @@ SUBDIR= libclanganalysis \ libclangparse \ libclangrewrite \ libclangsema \ + \ libllvmanalysis \ libllvmasmprinter \ libllvmbitreader \ Modified: projects/clangbsd-import/usr.bin/clang/lib/libclanganalysis/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libclanganalysis/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/libclanganalysis/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -3,8 +3,8 @@ LIB= clanganalysis SRCDIR= tools/clang/lib/Analysis -SRCS= AnalysisContext.cpp CFG.cpp \ - LiveVariables.cpp PrintfFormatString.cpp ReachableCode.cpp \ +SRCS= AnalysisContext.cpp CFG.cpp LiveVariables.cpp \ + PrintfFormatString.cpp ReachableCode.cpp \ UninitializedValues.cpp TGHDRS= DiagnosticAnalysisKinds DiagnosticCommonKinds Modified: projects/clangbsd-import/usr.bin/clang/lib/libclangast/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libclangast/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/libclangast/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -4,16 +4,15 @@ LIB= clangast SRCDIR= tools/clang/lib/AST SRCS= APValue.cpp ASTConsumer.cpp ASTContext.cpp ASTDiagnostic.cpp \ - AttrImpl.cpp ASTImporter.cpp CXXInheritance.cpp \ - Decl.cpp DeclBase.cpp DeclCXX.cpp DeclFriend.cpp DeclGroup.cpp \ - DeclObjC.cpp \ - DeclPrinter.cpp DeclTemplate.cpp DeclarationName.cpp Expr.cpp \ - ExprCXX.cpp ExprConstant.cpp FullExpr.cpp InheritViz.cpp \ - NestedNameSpecifier.cpp ParentMap.cpp RecordLayout.cpp \ - RecordLayoutBuilder.cpp \ + ASTImporter.cpp AttrImpl.cpp CXXInheritance.cpp Decl.cpp \ + DeclBase.cpp DeclCXX.cpp DeclFriend.cpp DeclGroup.cpp \ + DeclObjC.cpp DeclPrinter.cpp DeclTemplate.cpp \ + DeclarationName.cpp Expr.cpp ExprCXX.cpp ExprConstant.cpp \ + FullExpr.cpp InheritViz.cpp NestedNameSpecifier.cpp \ + ParentMap.cpp RecordLayout.cpp RecordLayoutBuilder.cpp \ Stmt.cpp StmtDumper.cpp StmtIterator.cpp StmtPrinter.cpp \ - StmtProfile.cpp StmtViz.cpp TemplateBase.cpp TemplateName.cpp Type.cpp \ - TypeLoc.cpp TypePrinter.cpp + StmtProfile.cpp StmtViz.cpp TemplateBase.cpp TemplateName.cpp \ + Type.cpp TypeLoc.cpp TypePrinter.cpp TGHDRS= DiagnosticASTKinds DiagnosticCommonKinds Modified: projects/clangbsd-import/usr.bin/clang/lib/libclangchecker/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libclangchecker/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/libclangchecker/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -3,34 +3,35 @@ LIB= clangchecker SRCDIR= tools/clang/lib/Checker -SRCS= AdjustedReturnValueChecker.cpp AggExprVisitor.cpp ArrayBoundChecker.cpp \ - AttrNonNullChecker.cpp BasicConstraintManager.cpp \ - BasicObjCFoundationChecks.cpp BasicStore.cpp BasicValueFactory.cpp \ - BugReporter.cpp BugReporterVisitors.cpp BuiltinFunctionChecker.cpp \ +SRCS= AdjustedReturnValueChecker.cpp AggExprVisitor.cpp \ + ArrayBoundChecker.cpp AttrNonNullChecker.cpp \ + BasicConstraintManager.cpp BasicObjCFoundationChecks.cpp \ + BasicStore.cpp BasicValueFactory.cpp BugReporter.cpp \ + BugReporterVisitors.cpp BuiltinFunctionChecker.cpp \ CFRefCount.cpp CallAndMessageChecker.cpp CallInliner.cpp \ - CastToStructChecker.cpp CheckDeadStores.cpp CheckObjCDealloc.cpp \ - CheckObjCInstMethSignature.cpp \ + CastToStructChecker.cpp CheckDeadStores.cpp \ + CheckObjCDealloc.cpp CheckObjCInstMethSignature.cpp \ CheckSecuritySyntaxOnly.cpp CheckSizeofPointer.cpp Checker.cpp \ - CocoaConventions.cpp \ - DereferenceChecker.cpp DivZeroChecker.cpp Environment.cpp \ - ExplodedGraph.cpp FixedAddressChecker.cpp FlatStore.cpp \ - GRBlockCounter.cpp GRCoreEngine.cpp GRCXXExprEngine.cpp GRExprEngine.cpp \ - GRExprEngineExperimentalChecks.cpp \ - GRState.cpp LLVMConventionsChecker.cpp MacOSXAPIChecker.cpp \ + CocoaConventions.cpp DereferenceChecker.cpp DivZeroChecker.cpp \ + Environment.cpp ExplodedGraph.cpp FixedAddressChecker.cpp \ + FlatStore.cpp GRBlockCounter.cpp GRCXXExprEngine.cpp \ + GRCoreEngine.cpp GRExprEngine.cpp \ + GRExprEngineExperimentalChecks.cpp GRState.cpp \ + LLVMConventionsChecker.cpp MacOSXAPIChecker.cpp \ MallocChecker.cpp ManagerRegistry.cpp MemRegion.cpp \ NSAutoreleasePoolChecker.cpp NSErrorChecker.cpp \ - NoReturnFunctionChecker.cpp ObjCUnusedIVarsChecker.cpp \ - OSAtomicChecker.cpp PathDiagnostic.cpp \ - PointerArithChecker.cpp \ - PointerSubChecker.cpp PthreadLockChecker.cpp \ - RangeConstraintManager.cpp RegionStore.cpp ReturnPointerRangeChecker.cpp \ + NoReturnFunctionChecker.cpp OSAtomicChecker.cpp \ + ObjCUnusedIVarsChecker.cpp PathDiagnostic.cpp \ + PointerArithChecker.cpp PointerSubChecker.cpp \ + PthreadLockChecker.cpp RangeConstraintManager.cpp \ + RegionStore.cpp ReturnPointerRangeChecker.cpp \ ReturnStackAddressChecker.cpp ReturnUndefChecker.cpp SVals.cpp \ - SValuator.cpp \ - SimpleConstraintManager.cpp SimpleSValuator.cpp Store.cpp \ - SymbolManager.cpp UndefBranchChecker.cpp UndefCapturedBlockVarChecker.cpp \ - UndefResultChecker.cpp UndefinedArraySubscriptChecker.cpp \ - UndefinedAssignmentChecker.cpp UnixAPIChecker.cpp VLASizeChecker.cpp \ - ValueManager.cpp + SValuator.cpp SimpleConstraintManager.cpp SimpleSValuator.cpp \ + Store.cpp SymbolManager.cpp UndefBranchChecker.cpp \ + UndefCapturedBlockVarChecker.cpp UndefResultChecker.cpp \ + UndefinedArraySubscriptChecker.cpp \ + UndefinedAssignmentChecker.cpp UnixAPIChecker.cpp \ + VLASizeChecker.cpp ValueManager.cpp TGHDRS= DiagnosticAnalysisKinds DiagnosticCommonKinds Modified: projects/clangbsd-import/usr.bin/clang/lib/libclangcodegen/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libclangcodegen/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/libclangcodegen/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -3,15 +3,14 @@ LIB= clangcodegen SRCDIR= tools/clang/lib/CodeGen -SRCS= CGBlocks.cpp CGBuiltin.cpp CGClass.cpp CGDeclCXX.cpp CGException.cpp \ - CGCXX.cpp \ - CGExprCXX.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 \ - CGRTTI.cpp CGStmt.cpp CGTemporaries.cpp CGVTT.cpp CGVTables.cpp \ - CodeGenFunction.cpp \ - CodeGenModule.cpp CodeGenTypes.cpp Mangle.cpp ModuleBuilder.cpp \ - TargetInfo.cpp +SRCS= CGBlocks.cpp CGBuiltin.cpp CGCXX.cpp CGCall.cpp CGClass.cpp \ + CGDebugInfo.cpp CGDecl.cpp CGDeclCXX.cpp CGException.cpp \ + CGExpr.cpp CGExprAgg.cpp CGExprCXX.cpp CGExprComplex.cpp \ + CGExprConstant.cpp CGExprScalar.cpp CGObjC.cpp CGObjCGNU.cpp \ + CGObjCMac.cpp CGRTTI.cpp CGRecordLayoutBuilder.cpp CGStmt.cpp \ + CGTemporaries.cpp CGVTT.cpp CGVTables.cpp CodeGenFunction.cpp \ + CodeGenModule.cpp CodeGenTypes.cpp Mangle.cpp \ + ModuleBuilder.cpp TargetInfo.cpp TGHDRS= DiagnosticCommonKinds Intrinsics Modified: projects/clangbsd-import/usr.bin/clang/lib/libclangdriver/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libclangdriver/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/libclangdriver/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -5,8 +5,8 @@ LIB= clangdriver SRCDIR= tools/clang/lib/Driver SRCS= Action.cpp Arg.cpp ArgList.cpp CC1Options.cpp Compilation.cpp \ Driver.cpp DriverOptions.cpp HostInfo.cpp Job.cpp OptTable.cpp \ - Option.cpp Phases.cpp \ - Tool.cpp ToolChain.cpp ToolChains.cpp Tools.cpp Types.cpp + Option.cpp Phases.cpp Tool.cpp ToolChain.cpp ToolChains.cpp \ + Tools.cpp Types.cpp TGHDRS= DiagnosticCommonKinds DiagnosticDriverKinds Options CC1Options Modified: projects/clangbsd-import/usr.bin/clang/lib/libclangfrontend/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libclangfrontend/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/libclangfrontend/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -4,20 +4,19 @@ LIB= clangfrontend SRCDIR= tools/clang/lib/Frontend SRCS= ASTConsumers.cpp ASTMerge.cpp ASTUnit.cpp AnalysisConsumer.cpp \ - CacheTokens.cpp \ - CodeGenAction.cpp CompilerInstance.cpp CompilerInvocation.cpp \ - DeclXML.cpp DependencyFile.cpp DiagChecker.cpp \ - DocumentXML.cpp FixItRewriter.cpp FrontendAction.cpp \ - FrontendActions.cpp FrontendOptions.cpp GeneratePCH.cpp \ - HTMLDiagnostics.cpp HTMLPrint.cpp InitHeaderSearch.cpp \ - InitPreprocessor.cpp LangStandards.cpp PCHReader.cpp \ - PCHReaderDecl.cpp PCHReaderStmt.cpp PCHWriter.cpp \ - PCHWriterDecl.cpp PCHWriterStmt.cpp PlistDiagnostics.cpp \ - PrintParserCallbacks.cpp PrintPreprocessedOutput.cpp \ - RewriteMacros.cpp RewriteObjC.cpp \ + CacheTokens.cpp CodeGenAction.cpp CompilerInstance.cpp \ + CompilerInvocation.cpp DeclXML.cpp DependencyFile.cpp \ + DiagChecker.cpp DocumentXML.cpp FixItRewriter.cpp \ + FrontendAction.cpp FrontendActions.cpp FrontendOptions.cpp \ + GeneratePCH.cpp HTMLDiagnostics.cpp HTMLPrint.cpp \ + InitHeaderSearch.cpp InitPreprocessor.cpp LangStandards.cpp \ + PCHReader.cpp PCHReaderDecl.cpp PCHReaderStmt.cpp \ + PCHWriter.cpp PCHWriterDecl.cpp PCHWriterStmt.cpp \ + PlistDiagnostics.cpp PrintParserCallbacks.cpp \ + PrintPreprocessedOutput.cpp RewriteMacros.cpp RewriteObjC.cpp \ RewriteTest.cpp StmtXML.cpp TextDiagnosticBuffer.cpp \ - TextDiagnosticPrinter.cpp TypeXML.cpp VerifyDiagnosticsClient.cpp \ - Warnings.cpp + TextDiagnosticPrinter.cpp TypeXML.cpp \ + VerifyDiagnosticsClient.cpp Warnings.cpp TGHDRS= DiagnosticASTKinds DiagnosticCommonKinds DiagnosticDriverKinds \ DiagnosticFrontendKinds DiagnosticLexKinds DiagnosticSemaKinds \ Modified: projects/clangbsd-import/usr.bin/clang/lib/libclanglex/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libclanglex/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/libclanglex/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -6,9 +6,9 @@ SRCDIR= tools/clang/lib/Lex SRCS= HeaderMap.cpp HeaderSearch.cpp Lexer.cpp LiteralSupport.cpp \ MacroArgs.cpp MacroInfo.cpp PPCaching.cpp PPDirectives.cpp \ PPExpressions.cpp PPLexerChange.cpp PPMacroExpansion.cpp \ - PTHLexer.cpp Pragma.cpp PreprocessingRecord.cpp Preprocessor.cpp \ - PreprocessorLexer.cpp \ - ScratchBuffer.cpp TokenConcatenation.cpp TokenLexer.cpp + PTHLexer.cpp Pragma.cpp PreprocessingRecord.cpp \ + Preprocessor.cpp PreprocessorLexer.cpp ScratchBuffer.cpp \ + TokenConcatenation.cpp TokenLexer.cpp TGHDRS= DiagnosticCommonKinds DiagnosticLexKinds Modified: projects/clangbsd-import/usr.bin/clang/lib/libclangsema/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libclangsema/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/libclangsema/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -4,16 +4,17 @@ LIB= clangsema SRCDIR= tools/clang/lib/Sema SRCS= AnalysisBasedWarnings.cpp CodeCompleteConsumer.cpp \ - IdentifierResolver.cpp \ - JumpDiagnostics.cpp IdentifierResolver.cpp ParseAST.cpp \ - Sema.cpp SemaAccess.cpp SemaAttr.cpp SemaCXXCast.cpp \ - SemaCXXScopeSpec.cpp SemaChecking.cpp SemaCodeComplete.cpp \ - SemaDecl.cpp SemaDeclAttr.cpp SemaDeclCXX.cpp SemaDeclObjC.cpp \ - SemaExceptionSpec.cpp SemaExpr.cpp SemaExprCXX.cpp SemaExprObjC.cpp \ - SemaInit.cpp SemaLookup.cpp SemaObjCProperty.cpp SemaOverload.cpp \ - SemaStmt.cpp \ - SemaTemplate.cpp SemaTemplateDeduction.cpp SemaTemplateInstantiate.cpp \ - SemaTemplateInstantiateDecl.cpp SemaTemplateInstantiate.cpp SemaType.cpp \ + IdentifierResolver.cpp IdentifierResolver.cpp \ + JumpDiagnostics.cpp ParseAST.cpp Sema.cpp SemaAccess.cpp \ + SemaAttr.cpp SemaCXXCast.cpp SemaCXXScopeSpec.cpp \ + SemaChecking.cpp SemaCodeComplete.cpp SemaDecl.cpp \ + SemaDeclAttr.cpp SemaDeclCXX.cpp SemaDeclObjC.cpp \ + SemaExceptionSpec.cpp SemaExpr.cpp SemaExprCXX.cpp \ + SemaExprObjC.cpp SemaInit.cpp SemaLookup.cpp \ + SemaObjCProperty.cpp SemaOverload.cpp SemaStmt.cpp \ + SemaTemplate.cpp SemaTemplateDeduction.cpp \ + SemaTemplateInstantiate.cpp SemaTemplateInstantiate.cpp \ + SemaTemplateInstantiateDecl.cpp SemaType.cpp \ TargetAttributesSema.cpp TGHDRS= DiagnosticASTKinds DiagnosticCommonKinds DiagnosticSemaKinds DiagnosticParseKinds Modified: projects/clangbsd-import/usr.bin/clang/lib/libllvmanalysis/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libllvmanalysis/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/libllvmanalysis/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -8,18 +8,17 @@ SRCS= AliasAnalysis.cpp AliasAnalysisCou AliasSetTracker.cpp Analysis.cpp BasicAliasAnalysis.cpp \ CFGPrinter.cpp CaptureTracking.cpp ConstantFolding.cpp \ DbgInfoPrinter.cpp DebugInfo.cpp IVUsers.cpp InlineCost.cpp \ - InstructionSimplify.cpp \ - InstCount.cpp Interval.cpp IntervalPartition.cpp LazyValueInfo.cpp \ - LibCallAliasAnalysis.cpp LibCallSemantics.cpp Lint.cpp LiveValues.cpp \ - LoopDependenceAnalysis.cpp LoopInfo.cpp LoopPass.cpp \ - MemoryBuiltins.cpp MemoryDependenceAnalysis.cpp PHITransAddr.cpp \ - PointerTracking.cpp \ - PostDominators.cpp ProfileEstimatorPass.cpp ProfileInfo.cpp \ - ProfileInfoLoader.cpp ProfileInfoLoaderPass.cpp \ - ProfileVerifierPass.cpp ScalarEvolution.cpp \ - ScalarEvolutionAliasAnalysis.cpp ScalarEvolutionExpander.cpp \ - ScalarEvolutionNormalization.cpp SparsePropagation.cpp Trace.cpp \ - ValueTracking.cpp + InstCount.cpp InstructionSimplify.cpp Interval.cpp \ + IntervalPartition.cpp LazyValueInfo.cpp \ + LibCallAliasAnalysis.cpp LibCallSemantics.cpp Lint.cpp \ + LiveValues.cpp LoopDependenceAnalysis.cpp LoopInfo.cpp \ + LoopPass.cpp MemoryBuiltins.cpp MemoryDependenceAnalysis.cpp \ + PHITransAddr.cpp PointerTracking.cpp PostDominators.cpp \ + ProfileEstimatorPass.cpp ProfileInfo.cpp ProfileInfoLoader.cpp \ + ProfileInfoLoaderPass.cpp ProfileVerifierPass.cpp \ + ScalarEvolution.cpp ScalarEvolutionAliasAnalysis.cpp \ + ScalarEvolutionExpander.cpp ScalarEvolutionNormalization.cpp \ + SparsePropagation.cpp Trace.cpp ValueTracking.cpp TGHDRS= Intrinsics Modified: projects/clangbsd-import/usr.bin/clang/lib/libllvmarmcodegen/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libllvmarmcodegen/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/libllvmarmcodegen/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -5,14 +5,15 @@ LIB= llvmarmcodegen SRCDIR= lib/Target/ARM SRCS= ARMBaseInstrInfo.cpp ARMBaseRegisterInfo.cpp \ ARMCodeEmitter.cpp ARMConstantIslandPass.cpp \ - ARMConstantPoolValue.cpp ARMExpandPseudoInsts.cpp ARMISelDAGToDAG.cpp \ - ARMISelLowering.cpp ARMInstrInfo.cpp ARMJITInfo.cpp \ - ARMLoadStoreOptimizer.cpp ARMLoadStoreOptimizer.cpp ARMMCAsmInfo.cpp \ - ARMRegisterInfo.cpp ARMSelectionDAGInfo.cpp ARMSubtarget.cpp \ - ARMTargetMachine.cpp ARMTargetObjectFile.cpp NEONMoveFix.cpp \ - NEONPreAllocPass.cpp Thumb1InstrInfo.cpp Thumb1RegisterInfo.cpp \ - Thumb2ITBlockPass.cpp Thumb2InstrInfo.cpp Thumb2RegisterInfo.cpp \ - Thumb2SizeReduction.cpp + ARMConstantPoolValue.cpp ARMExpandPseudoInsts.cpp \ + ARMISelDAGToDAG.cpp ARMISelLowering.cpp ARMInstrInfo.cpp \ + ARMJITInfo.cpp ARMLoadStoreOptimizer.cpp \ + ARMLoadStoreOptimizer.cpp ARMMCAsmInfo.cpp ARMRegisterInfo.cpp \ + ARMSelectionDAGInfo.cpp ARMSubtarget.cpp ARMTargetMachine.cpp \ + ARMTargetObjectFile.cpp NEONMoveFix.cpp NEONPreAllocPass.cpp \ + Thumb1InstrInfo.cpp Thumb1RegisterInfo.cpp \ + Thumb2ITBlockPass.cpp Thumb2InstrInfo.cpp \ + Thumb2RegisterInfo.cpp Thumb2SizeReduction.cpp TGHDRS= ARMGenCallingConv ARMGenCodeEmitter ARMGenDAGISel \ ARMGenInstrInfo ARMGenInstrNames ARMGenRegisterInfo.h \ Modified: projects/clangbsd-import/usr.bin/clang/lib/libllvmasmprinter/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libllvmasmprinter/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/libllvmasmprinter/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -3,7 +3,7 @@ LIB= llvmasmprinter SRCDIR= lib/CodeGen/AsmPrinter -SRCS= AsmPrinter.cpp AsmPrinterDwarf.cpp AsmPrinterInlineAsm.cpp DIE.cpp \ - DwarfDebug.cpp DwarfException.cpp OcamlGCPrinter.cpp +SRCS= AsmPrinter.cpp AsmPrinterDwarf.cpp AsmPrinterInlineAsm.cpp \ + DIE.cpp DwarfDebug.cpp DwarfException.cpp OcamlGCPrinter.cpp .include "../../clang.lib.mk" Modified: projects/clangbsd-import/usr.bin/clang/lib/libllvmcodegen/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libllvmcodegen/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/libllvmcodegen/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -9,29 +9,31 @@ SRCS= AggressiveAntiDepBreaker.cpp Analy 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 \ + LLVMTargetMachine.cpp LatencyPriorityQueue.cpp \ + LiveInterval.cpp LiveIntervalAnalysis.cpp \ + LiveStackAnalysis.cpp LiveVariables.cpp LowerSubregs.cpp \ MachineBasicBlock.cpp MachineCSE.cpp MachineDominators.cpp \ - MachineFunction.cpp MachineFunctionAnalysis.cpp MachineFunctionPass.cpp \ - MachineFunctionPrinterPass.cpp MachineInstr.cpp MachineLICM.cpp \ - MachineLoopInfo.cpp MachineModuleInfo.cpp MachineModuleInfoImpls.cpp \ - MachinePassRegistry.cpp MachineRegisterInfo.cpp MachineSSAUpdater.cpp \ - MachineSink.cpp MachineVerifier.cpp \ - ObjectCodeEmitter.cpp OcamlGC.cpp OptimizeExts.cpp OptimizePHIs.cpp \ - PHIElimination.cpp Passes.cpp PostRASchedulerList.cpp \ - PreAllocSplitting.cpp ProcessImplicitDefs.cpp PrologEpilogInserter.cpp \ + MachineFunction.cpp MachineFunctionAnalysis.cpp \ + MachineFunctionPass.cpp MachineFunctionPrinterPass.cpp \ + MachineInstr.cpp MachineLICM.cpp MachineLoopInfo.cpp \ + MachineModuleInfo.cpp MachineModuleInfoImpls.cpp \ + MachinePassRegistry.cpp MachineRegisterInfo.cpp \ + MachineSSAUpdater.cpp MachineSink.cpp MachineVerifier.cpp \ + ObjectCodeEmitter.cpp OcamlGC.cpp OptimizeExts.cpp \ + OptimizePHIs.cpp PHIElimination.cpp Passes.cpp \ + PostRASchedulerList.cpp PreAllocSplitting.cpp \ + ProcessImplicitDefs.cpp PrologEpilogInserter.cpp \ PseudoSourceValue.cpp RegAllocFast.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 SlotIndexes.cpp \ - Spiller.cpp StackProtector.cpp StackSlotColoring.cpp \ - StrongPHIElimination.cpp TailDuplication.cpp TargetInstrInfoImpl.cpp \ - TargetLoweringObjectFileImpl.cpp TwoAddressInstructionPass.cpp \ - UnreachableBlockElim.cpp VirtRegMap.cpp \ - VirtRegRewriter.cpp + ScheduleDAGInstrs.cpp ScheduleDAGPrinter.cpp ShadowStackGC.cpp \ + ShrinkWrapping.cpp SimpleRegisterCoalescing.cpp \ + SjLjEHPrepare.cpp SlotIndexes.cpp Spiller.cpp \ + StackProtector.cpp StackSlotColoring.cpp \ + StrongPHIElimination.cpp TailDuplication.cpp \ + TargetInstrInfoImpl.cpp TargetLoweringObjectFileImpl.cpp \ + TwoAddressInstructionPass.cpp UnreachableBlockElim.cpp \ + VirtRegMap.cpp VirtRegRewriter.cpp TGHDRS= Intrinsics Modified: projects/clangbsd-import/usr.bin/clang/lib/libllvmcore/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libllvmcore/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/libllvmcore/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -4,13 +4,14 @@ LIB= llvmcore SRCDIR= lib/VMCore SRCS= AsmWriter.cpp Attributes.cpp AutoUpgrade.cpp BasicBlock.cpp \ - ConstantFold.cpp Constants.cpp Core.cpp DebugLoc.cpp Dominators.cpp \ - Function.cpp Globals.cpp GVMaterializer.cpp InlineAsm.cpp Instruction.cpp \ - Instructions.cpp IntrinsicInst.cpp IRBuilder.cpp LLVMContext.cpp \ - LLVMContextImpl.cpp LeakDetector.cpp Metadata.cpp \ - Module.cpp Pass.cpp PassManager.cpp \ - PrintModulePass.cpp Type.cpp TypeSymbolTable.cpp Use.cpp \ - Value.cpp ValueSymbolTable.cpp ValueTypes.cpp Verifier.cpp + ConstantFold.cpp Constants.cpp Core.cpp DebugLoc.cpp \ + Dominators.cpp Function.cpp GVMaterializer.cpp Globals.cpp \ + IRBuilder.cpp InlineAsm.cpp Instruction.cpp Instructions.cpp \ + IntrinsicInst.cpp LLVMContext.cpp LLVMContextImpl.cpp \ + LeakDetector.cpp Metadata.cpp Module.cpp Pass.cpp \ + PassManager.cpp PrintModulePass.cpp Type.cpp \ + TypeSymbolTable.cpp Use.cpp Value.cpp ValueSymbolTable.cpp \ + ValueTypes.cpp Verifier.cpp TGHDRS= Intrinsics Modified: projects/clangbsd-import/usr.bin/clang/lib/libllvminstcombine/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libllvminstcombine/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/libllvminstcombine/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -3,11 +3,13 @@ LIB= llvminstcombine SRCDIR= lib/Transforms/InstCombine -SRCS= InstCombineAddSub.cpp InstCombineAndOrXor.cpp InstCombineCalls.cpp \ - InstCombineCasts.cpp InstCombineCompares.cpp InstCombineLoadStoreAlloca.cpp \ - InstCombineMulDivRem.cpp InstCombinePHI.cpp InstCombineSelect.cpp \ - InstCombineShifts.cpp InstCombineSimplifyDemanded.cpp \ - InstCombineVectorOps.cpp InstructionCombining.cpp +SRCS= InstCombineAddSub.cpp InstCombineAndOrXor.cpp \ + InstCombineCalls.cpp InstCombineCasts.cpp \ + InstCombineCompares.cpp InstCombineLoadStoreAlloca.cpp \ + InstCombineMulDivRem.cpp InstCombinePHI.cpp \ + InstCombineSelect.cpp InstCombineShifts.cpp \ + InstCombineSimplifyDemanded.cpp InstCombineVectorOps.cpp \ + InstructionCombining.cpp TGHDRS= Intrinsics Modified: projects/clangbsd-import/usr.bin/clang/lib/libllvmipa/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libllvmipa/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/libllvmipa/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -3,8 +3,8 @@ LIB= llvmipa SRCDIR= lib/Analysis/IPA -SRCS= CallGraph.cpp CallGraphSCCPass.cpp \ - FindUsedTypes.cpp GlobalsModRef.cpp +SRCS= CallGraph.cpp CallGraphSCCPass.cpp FindUsedTypes.cpp \ + GlobalsModRef.cpp TGHDRS= Intrinsics Modified: projects/clangbsd-import/usr.bin/clang/lib/libllvmipo/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libllvmipo/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/libllvmipo/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -6,11 +6,10 @@ SRCDIR= lib/Transforms/IPO SRCS= ArgumentPromotion.cpp ConstantMerge.cpp \ DeadArgumentElimination.cpp DeadTypeElimination.cpp \ ExtractGV.cpp FunctionAttrs.cpp GlobalDCE.cpp GlobalOpt.cpp \ - IPConstantPropagation.cpp IPO.cpp \ - InlineAlways.cpp InlineSimple.cpp Inliner.cpp Internalize.cpp \ - LoopExtractor.cpp LowerSetJmp.cpp MergeFunctions.cpp \ - PartialSpecialization.cpp PruneEH.cpp \ - StripDeadPrototypes.cpp StripSymbols.cpp \ + IPConstantPropagation.cpp IPO.cpp InlineAlways.cpp \ + InlineSimple.cpp Inliner.cpp Internalize.cpp LoopExtractor.cpp \ + LowerSetJmp.cpp MergeFunctions.cpp PartialSpecialization.cpp \ + PruneEH.cpp StripDeadPrototypes.cpp StripSymbols.cpp \ StructRetPromotion.cpp TGHDRS= Intrinsics Modified: projects/clangbsd-import/usr.bin/clang/lib/libllvmmc/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libllvmmc/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/libllvmmc/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -7,8 +7,8 @@ SRCS= MCAsmInfo.cpp MCAsmInfoCOFF.cpp MC MCAsmStreamer.cpp MCAssembler.cpp MCCodeEmitter.cpp \ MCContext.cpp MCDisassembler.cpp MCExpr.cpp MCInst.cpp \ MCInstPrinter.cpp MCMachOStreamer.cpp MCNullStreamer.cpp \ - MCObjectWriter.cpp \ - MCSection.cpp MCSectionELF.cpp MCSectionMachO.cpp MCStreamer.cpp \ - MCSymbol.cpp MCValue.cpp MachObjectWriter.cpp TargetAsmBackend.cpp + MCObjectWriter.cpp MCSection.cpp MCSectionELF.cpp \ + MCSectionMachO.cpp MCStreamer.cpp MCSymbol.cpp MCValue.cpp \ + MachObjectWriter.cpp TargetAsmBackend.cpp .include "../../clang.lib.mk" Modified: projects/clangbsd-import/usr.bin/clang/lib/libllvmmcparser/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libllvmmcparser/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/libllvmmcparser/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -3,6 +3,7 @@ LIB= llvmmcparser SRCDIR= lib/MC/MCParser -SRCS= AsmLexer.cpp AsmParser.cpp MCAsmLexer.cpp MCAsmParser.cpp TargetAsmParser.cpp +SRCS= AsmLexer.cpp AsmParser.cpp MCAsmLexer.cpp MCAsmParser.cpp \ + TargetAsmParser.cpp .include "../../clang.lib.mk" Modified: projects/clangbsd-import/usr.bin/clang/lib/libllvmpowerpccodegen/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libllvmpowerpccodegen/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/libllvmpowerpccodegen/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -6,9 +6,8 @@ SRCDIR= lib/Target/PowerPC SRCS= PPCBranchSelector.cpp PPCCodeEmitter.cpp \ PPCHazardRecognizers.cpp PPCISelDAGToDAG.cpp \ PPCISelLowering.cpp PPCInstrInfo.cpp PPCJITInfo.cpp \ - PPCMCAsmInfo.cpp PPCPredicates.cpp \ - PPCRegisterInfo.cpp PPCSelectionDAGInfo.cpp PPCSubtarget.cpp \ - PPCTargetMachine.cpp + PPCMCAsmInfo.cpp PPCPredicates.cpp PPCRegisterInfo.cpp \ + PPCSelectionDAGInfo.cpp PPCSubtarget.cpp PPCTargetMachine.cpp TGHDRS= Intrinsics PPCGenCallingConv PPCGenCodeEmitter PPCGenDAGISel \ PPCGenInstrInfo PPCGenInstrNames PPCGenRegisterInfo.h \ Modified: projects/clangbsd-import/usr.bin/clang/lib/libllvmscalaropts/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libllvmscalaropts/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/libllvmscalaropts/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -5,15 +5,13 @@ LIB= llvmscalaropts SRCDIR= lib/Transforms/Scalar SRCS= ADCE.cpp BasicBlockPlacement.cpp CodeGenPrepare.cpp \ ConstantProp.cpp DCE.cpp DeadStoreElimination.cpp \ - GEPSplitter.cpp GVN.cpp IndVarSimplify.cpp \ - JumpThreading.cpp LICM.cpp \ - LoopDeletion.cpp LoopIndexSplit.cpp LoopRotation.cpp \ + GEPSplitter.cpp GVN.cpp IndVarSimplify.cpp JumpThreading.cpp \ + LICM.cpp LoopDeletion.cpp LoopIndexSplit.cpp LoopRotation.cpp \ LoopStrengthReduce.cpp LoopUnrollPass.cpp LoopUnswitch.cpp \ - MemCpyOptimizer.cpp Reassociate.cpp \ - Reg2Mem.cpp SCCP.cpp Scalar.cpp ScalarReplAggregates.cpp \ - SimplifyCFGPass.cpp SimplifyHalfPowrLibCalls.cpp \ - SimplifyLibCalls.cpp TailDuplication.cpp \ - TailRecursionElimination.cpp + MemCpyOptimizer.cpp Reassociate.cpp Reg2Mem.cpp SCCP.cpp \ + Scalar.cpp ScalarReplAggregates.cpp SimplifyCFGPass.cpp \ + SimplifyHalfPowrLibCalls.cpp SimplifyLibCalls.cpp \ + TailDuplication.cpp TailRecursionElimination.cpp TGHDRS= Intrinsics Modified: projects/clangbsd-import/usr.bin/clang/lib/libllvmselectiondag/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libllvmselectiondag/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/libllvmselectiondag/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -3,15 +3,14 @@ LIB= llvmselectiondag SRCDIR= lib/CodeGen/SelectionDAG -SRCS= CallingConvLower.cpp DAGCombiner.cpp FastISel.cpp FunctionLoweringInfo.cpp \ - InstrEmitter.cpp LegalizeDAG.cpp LegalizeFloatTypes.cpp \ - LegalizeIntegerTypes.cpp LegalizeTypes.cpp \ - LegalizeTypesGeneric.cpp LegalizeVectorOps.cpp \ - LegalizeVectorTypes.cpp ScheduleDAGFast.cpp \ - ScheduleDAGList.cpp ScheduleDAGRRList.cpp \ +SRCS= CallingConvLower.cpp DAGCombiner.cpp FastISel.cpp \ + FunctionLoweringInfo.cpp InstrEmitter.cpp LegalizeDAG.cpp \ + LegalizeFloatTypes.cpp LegalizeIntegerTypes.cpp LegalizeTypes.cpp \ + LegalizeTypesGeneric.cpp LegalizeVectorOps.cpp LegalizeVectorTypes.cpp \ + ScheduleDAGFast.cpp ScheduleDAGList.cpp ScheduleDAGRRList.cpp \ ScheduleDAGSDNodes.cpp SelectionDAG.cpp SelectionDAGBuilder.cpp \ - TargetSelectionDAGInfo.cpp SelectionDAGISel.cpp SelectionDAGPrinter.cpp \ - TargetLowering.cpp + SelectionDAGISel.cpp SelectionDAGPrinter.cpp TargetLowering.cpp \ + TargetSelectionDAGInfo.cpp TGHDRS= Intrinsics Modified: projects/clangbsd-import/usr.bin/clang/lib/libllvmtarget/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libllvmtarget/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/libllvmtarget/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -6,8 +6,7 @@ SRCDIR= lib/Target SRCS= Mangler.cpp SubtargetFeature.cpp Target.cpp TargetAsmLexer.cpp \ TargetData.cpp TargetELFWriterInfo.cpp TargetFrameInfo.cpp \ TargetInstrInfo.cpp TargetIntrinsicInfo.cpp \ - TargetLoweringObjectFile.cpp \ - TargetMachine.cpp TargetRegisterInfo.cpp \ - TargetSubtarget.cpp + TargetLoweringObjectFile.cpp TargetMachine.cpp \ + TargetRegisterInfo.cpp TargetSubtarget.cpp .include "../../clang.lib.mk" Modified: projects/clangbsd-import/usr.bin/clang/lib/libllvmtransformutils/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libllvmtransformutils/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/libllvmtransformutils/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -6,12 +6,11 @@ SRCDIR= lib/Transforms/Utils SRCS= AddrModeMatcher.cpp BasicBlockUtils.cpp BasicInliner.cpp \ BreakCriticalEdges.cpp BuildLibCalls.cpp CloneFunction.cpp \ CloneLoop.cpp CloneModule.cpp CodeExtractor.cpp \ - DemoteRegToStack.cpp InlineFunction.cpp \ - InstructionNamer.cpp LCSSA.cpp Local.cpp LoopSimplify.cpp \ - LoopUnroll.cpp LowerInvoke.cpp LowerSwitch.cpp \ - Mem2Reg.cpp PromoteMemoryToRegister.cpp SSAUpdater.cpp SSI.cpp \ - SimplifyCFG.cpp UnifyFunctionExitNodes.cpp \ - ValueMapper.cpp + DemoteRegToStack.cpp InlineFunction.cpp InstructionNamer.cpp \ + LCSSA.cpp Local.cpp LoopSimplify.cpp LoopUnroll.cpp \ + LowerInvoke.cpp LowerSwitch.cpp Mem2Reg.cpp \ + PromoteMemoryToRegister.cpp SSAUpdater.cpp SSI.cpp \ + SimplifyCFG.cpp UnifyFunctionExitNodes.cpp ValueMapper.cpp TGHDRS= Intrinsics Modified: projects/clangbsd-import/usr.bin/clang/lib/libllvmx86codegen/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libllvmx86codegen/Makefile Thu May 13 15:31:00 2010 (r208030) +++ projects/clangbsd-import/usr.bin/clang/lib/libllvmx86codegen/Makefile Thu May 13 15:43:40 2010 (r208031) @@ -3,13 +3,14 @@ LIB= llvmx86codegen SRCDIR= lib/Target/X86 -SRCS= SSEDomainFix.cpp X86AsmBackend.cpp X86COFFMachineModuleInfo.cpp \ - X86CodeEmitter.cpp X86ELFWriterInfo.cpp \ - X86FastISel.cpp X86FloatingPoint.cpp X86FloatingPointRegKill.cpp \ - X86ISelDAGToDAG.cpp X86ISelLowering.cpp X86InstrInfo.cpp \ - X86JITInfo.cpp X86MCAsmInfo.cpp X86MCCodeEmitter.cpp \ - X86RegisterInfo.cpp X86SelectionDAGInfo.cpp X86Subtarget.cpp \ - X86TargetMachine.cpp X86TargetObjectFile.cpp +SRCS= SSEDomainFix.cpp X86AsmBackend.cpp \ + X86COFFMachineModuleInfo.cpp X86CodeEmitter.cpp \ + X86ELFWriterInfo.cpp X86FastISel.cpp X86FloatingPoint.cpp \ + X86FloatingPointRegKill.cpp X86ISelDAGToDAG.cpp \ + X86ISelLowering.cpp X86InstrInfo.cpp X86JITInfo.cpp \ + X86MCAsmInfo.cpp X86MCCodeEmitter.cpp X86RegisterInfo.cpp \ + X86SelectionDAGInfo.cpp X86Subtarget.cpp X86TargetMachine.cpp \ + X86TargetObjectFile.cpp TGHDRS= Intrinsics X86GenCallingConv X86GenDAGISel X86GenFastISel \ X86GenInstrInfo X86GenInstrNames X86GenRegisterInfo.h \ From owner-svn-src-projects@FreeBSD.ORG Thu May 13 17:32:31 2010 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 05E21106566C; Thu, 13 May 2010 17:32:31 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id E9BBA8FC0C; Thu, 13 May 2010 17:32:30 +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 o4DHWU1O001141; Thu, 13 May 2010 17:32:30 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4DHWU91001139; Thu, 13 May 2010 17:32:30 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201005131732.o4DHWU91001139@svn.freebsd.org> From: Ed Schouten Date: Thu, 13 May 2010 17:32:30 +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: r208038 - projects/clangbsd-import/contrib/llvm/lib/System 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, 13 May 2010 17:32:31 -0000 Author: ed Date: Thu May 13 17:32:30 2010 New Revision: 208038 URL: http://svn.freebsd.org/changeset/base/208038 Log: Crude hack to make LLVM build on FreeBSD/arm. LLVM needs a function to flush the icache of certain memory regions. glibc has a function for it called __clear_cache(), but FreeBSD's libc doesn't have it. I don't care about flushing the icache at all, because it's only used when JITting, which we are not going to do with Clang. Modified: projects/clangbsd-import/contrib/llvm/lib/System/Memory.cpp Modified: projects/clangbsd-import/contrib/llvm/lib/System/Memory.cpp ============================================================================== --- projects/clangbsd-import/contrib/llvm/lib/System/Memory.cpp Thu May 13 17:22:00 2010 (r208037) +++ projects/clangbsd-import/contrib/llvm/lib/System/Memory.cpp Thu May 13 17:32:30 2010 (r208038) @@ -61,7 +61,7 @@ void llvm::sys::Memory::InvalidateInstru for (intptr_t Line = StartLine; Line < EndLine; Line += LineSize) asm volatile("icbi 0, %0" : : "r"(Line)); asm volatile("isync"); -# elif defined(__arm__) && defined(__GNUC__) +# elif defined(__arm__) && defined(__GNUC__) && !defined(__FreeBSD__) // FIXME: Can we safely always call this for __GNUC__ everywhere? char *Start = (char*) Addr; char *End = Start + Len; From owner-svn-src-projects@FreeBSD.ORG Thu May 13 20:29:42 2010 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 B2EB8106566B; Thu, 13 May 2010 20:29:42 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 8979E8FC08; Thu, 13 May 2010 20:29:42 +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 o4DKTg1g040639; Thu, 13 May 2010 20:29:42 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4DKTg9A040637; Thu, 13 May 2010 20:29:42 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201005132029.o4DKTg9A040637@svn.freebsd.org> From: Ed Schouten Date: Thu, 13 May 2010 20:29:42 +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: r208045 - projects/clangbsd-import/usr.bin/clang 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, 13 May 2010 20:29:42 -0000 Author: ed Date: Thu May 13 20:29:42 2010 New Revision: 208045 URL: http://svn.freebsd.org/changeset/base/208045 Log: Just use head and tail modifiers to split the architecture/tblgen parameters. Modified: projects/clangbsd-import/usr.bin/clang/clang.build.mk Modified: projects/clangbsd-import/usr.bin/clang/clang.build.mk ============================================================================== --- projects/clangbsd-import/usr.bin/clang/clang.build.mk Thu May 13 20:26:16 2010 (r208044) +++ projects/clangbsd-import/usr.bin/clang/clang.build.mk Thu May 13 20:29:42 2010 (r208045) @@ -21,24 +21,24 @@ Intrinsics.inc.h: ${LLVM_SRCS}/include/l ${TBLGEN} -gen-intrinsic \ ${LLVM_SRCS}/include/llvm/Intrinsics.td > ${.TARGET} .for arch in \ - ARM:ARM Mips:Mips PowerPC:PPC X86:X86 + ARM/ARM Mips/Mips PowerPC/PPC X86/X86 . for hdr in \ - AsmMatcher:-gen-asm-matcher \ - AsmWriter1:-gen-asm-writer,-asmwriternum=1 \ - AsmWriter:-gen-asm-writer \ - CallingConv:-gen-callingconv \ - CodeEmitter:-gen-emitter \ - DAGISel:-gen-dag-isel \ - FastISel:-gen-fast-isel \ - InstrInfo:-gen-instr-desc \ - InstrNames:-gen-instr-enums \ - RegisterInfo.h:-gen-register-desc-header \ - RegisterInfo:-gen-register-desc \ - RegisterNames:-gen-register-enums \ - Subtarget:-gen-subtarget -${arch:C/.*://}Gen${hdr:C/:.*/.inc.h/}: ${LLVM_SRCS}/lib/Target/${arch:C/:.*//}/${arch:C/.*://}.td - ${TBLGEN} ${hdr:C/.*://:C/,/ /g} \ - ${LLVM_SRCS}/lib/Target/${arch:C/:.*//}/${arch:C/.*://}.td > ${.TARGET} + AsmMatcher/-gen-asm-matcher \ + AsmWriter1/-gen-asm-writer,-asmwriternum=1 \ + AsmWriter/-gen-asm-writer \ + CallingConv/-gen-callingconv \ + CodeEmitter/-gen-emitter \ + DAGISel/-gen-dag-isel \ + FastISel/-gen-fast-isel \ + InstrInfo/-gen-instr-desc \ + InstrNames/-gen-instr-enums \ + RegisterInfo.h/-gen-register-desc-header \ + RegisterInfo/-gen-register-desc \ + RegisterNames/-gen-register-enums \ + Subtarget/-gen-subtarget +${arch:T}Gen${hdr:H:C/$/.inc.h/}: ${LLVM_SRCS}/lib/Target/${arch:H}/${arch:T}.td + ${TBLGEN} ${hdr:T:C/,/ /g} \ + ${LLVM_SRCS}/lib/Target/${arch:H}/${arch:T}.td > ${.TARGET} . endfor .endfor DiagnosticGroups.inc.h: ${CLANG_SRCS}/include/clang/Basic/Diagnostic.td From owner-svn-src-projects@FreeBSD.ORG Fri May 14 03:54:54 2010 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 15B60106566B; Fri, 14 May 2010 03:54:54 +0000 (UTC) (envelope-from nwhitehorn@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 04F8E8FC14; Fri, 14 May 2010 03:54: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 o4E3srj7039565; Fri, 14 May 2010 03:54:53 GMT (envelope-from nwhitehorn@svn.freebsd.org) Received: (from nwhitehorn@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4E3srMb039562; Fri, 14 May 2010 03:54:53 GMT (envelope-from nwhitehorn@svn.freebsd.org) Message-Id: <201005140354.o4E3srMb039562@svn.freebsd.org> From: Nathan Whitehorn Date: Fri, 14 May 2010 03:54:53 +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: r208058 - projects/ppc64/sys/powerpc/powermac 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, 14 May 2010 03:54:54 -0000 Author: nwhitehorn Date: Fri May 14 03:54:53 2010 New Revision: 208058 URL: http://svn.freebsd.org/changeset/base/208058 Log: Connect up the Uninorth PCI code to the PCI Express bus found on the U4, which is just different enough from the U3 to be irritating. Modified: projects/ppc64/sys/powerpc/powermac/uninorthpci.c projects/ppc64/sys/powerpc/powermac/uninorthvar.h Modified: projects/ppc64/sys/powerpc/powermac/uninorthpci.c ============================================================================== --- projects/ppc64/sys/powerpc/powermac/uninorthpci.c Fri May 14 03:01:53 2010 (r208057) +++ projects/ppc64/sys/powerpc/powermac/uninorthpci.c Fri May 14 03:54:53 2010 (r208058) @@ -151,9 +151,12 @@ uninorth_probe(device_t dev) if (strcmp(compatible, "uni-north") == 0) { device_set_desc(dev, "Apple UniNorth Host-PCI bridge"); return (0); - } else if (strcmp(compatible,"u3-agp") == 0) { + } else if (strcmp(compatible, "u3-agp") == 0) { device_set_desc(dev, "Apple U3 Host-AGP bridge"); return (0); + } else if (strcmp(compatible, "u4-pcie") == 0) { + device_set_desc(dev, "IBM CPC945 PCI Express Root"); + return (0); } return (ENXIO); @@ -165,7 +168,7 @@ uninorth_attach(device_t dev) struct uninorth_softc *sc; const char *compatible; phandle_t node; - u_int32_t reg[2], busrange[2]; + u_int32_t reg[3], busrange[2]; struct uninorth_range *rp, *io, *mem[2]; int nmem, i, error; @@ -178,14 +181,16 @@ uninorth_attach(device_t dev) if (OF_getprop(node, "bus-range", busrange, sizeof(busrange)) != 8) return (ENXIO); - sc->sc_u3 = 0; + sc->sc_ver = 0; compatible = ofw_bus_get_compat(dev); - if (strcmp(compatible,"u3-agp") == 0) - sc->sc_u3 = 1; + if (strcmp(compatible, "u3-agp") == 0) + sc->sc_ver = 3; + if (strcmp(compatible, "u4-pcie") == 0) + sc->sc_ver = 4; sc->sc_dev = dev; sc->sc_node = node; - if (sc->sc_u3) { + if (sc->sc_ver >= 3) { sc->sc_addr = (vm_offset_t)pmap_mapdev(reg[1] + 0x800000, PAGE_SIZE); sc->sc_data = (vm_offset_t)pmap_mapdev(reg[1] + 0xc00000, PAGE_SIZE); } else { @@ -195,7 +200,7 @@ uninorth_attach(device_t dev) sc->sc_bus = busrange[0]; bzero(sc->sc_range, sizeof(sc->sc_range)); - if (sc->sc_u3) { + if (sc->sc_ver >= 3) { /* * On Apple U3 systems, we have an otherwise standard * Uninorth controller driving AGP. The one difference @@ -495,9 +500,16 @@ uninorth_enable_config(struct uninorth_s return (0); } - if (sc->sc_bus == bus) { + /* + * Issue type 0 configuration space accesses for the root bus. + * + * NOTE: On U4, issue only type 1 accesses. There is a secret + * PCI Express <-> PCI Express bridge not present in the device tree, + * and we need to route all of our configuration space through it. + */ + if (sc->sc_bus == bus && sc->sc_ver < 4) { /* - * No slots less than 11 on the primary bus + * No slots less than 11 on the primary bus on U3 and lower */ if (slot < 11) return (0); @@ -508,6 +520,10 @@ uninorth_enable_config(struct uninorth_s (reg & 0xfc) | 1; } + /* Set extended register bits on U4 */ + if (sc->sc_ver == 4) + cfgval |= (reg >> 8) << 28; + do { out32rb(sc->sc_addr, cfgval); } while (in32rb(sc->sc_addr) != cfgval); @@ -526,44 +542,3 @@ uninorth_get_node(device_t bus, device_t return sc->sc_node; } -/* - * Driver to swallow UniNorth host bridges from the PCI bus side. - */ -static int -unhb_probe(device_t dev) -{ - - if (pci_get_class(dev) == PCIC_BRIDGE && - pci_get_subclass(dev) == PCIS_BRIDGE_HOST) { - device_set_desc(dev, "Host to PCI bridge"); - device_quiet(dev); - return (-10000); - } - - return (ENXIO); -} - -static int -unhb_attach(device_t dev) -{ - - return (0); -} - -static device_method_t unhb_methods[] = { - /* Device interface */ - DEVMETHOD(device_probe, unhb_probe), - DEVMETHOD(device_attach, unhb_attach), - - { 0, 0 } -}; - -static driver_t unhb_driver = { - "unhb", - unhb_methods, - 1, -}; -static devclass_t unhb_devclass; - -DRIVER_MODULE(unhb, pci, unhb_driver, unhb_devclass, 0, 0); - Modified: projects/ppc64/sys/powerpc/powermac/uninorthvar.h ============================================================================== --- projects/ppc64/sys/powerpc/powermac/uninorthvar.h Fri May 14 03:01:53 2010 (r208057) +++ projects/ppc64/sys/powerpc/powermac/uninorthvar.h Fri May 14 03:54:53 2010 (r208058) @@ -63,7 +63,7 @@ struct uninorth_softc { bus_dma_tag_t sc_dmat; struct ofw_bus_iinfo sc_pci_iinfo; - int sc_u3; + int sc_ver; }; struct unin_chip_softc { From owner-svn-src-projects@FreeBSD.ORG Fri May 14 04:22:58 2010 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 B94FD1065670; Fri, 14 May 2010 04:22:58 +0000 (UTC) (envelope-from nwhitehorn@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id A774F8FC13; Fri, 14 May 2010 04:22: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 o4E4Mwag045794; Fri, 14 May 2010 04:22:58 GMT (envelope-from nwhitehorn@svn.freebsd.org) Received: (from nwhitehorn@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4E4Mwnd045792; Fri, 14 May 2010 04:22:58 GMT (envelope-from nwhitehorn@svn.freebsd.org) Message-Id: <201005140422.o4E4Mwnd045792@svn.freebsd.org> From: Nathan Whitehorn Date: Fri, 14 May 2010 04:22: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: r208059 - projects/ppc64/sys/powerpc/powermac 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, 14 May 2010 04:22:58 -0000 Author: nwhitehorn Date: Fri May 14 04:22:58 2010 New Revision: 208059 URL: http://svn.freebsd.org/changeset/base/208059 Log: Do resource management and IRQ mapping in a slightly less horrible way, and take into account some quirks gleaned from the Linux code. USB is still broken on the Powermac 11,2, sadly. Modified: projects/ppc64/sys/powerpc/powermac/cpcht.c Modified: projects/ppc64/sys/powerpc/powermac/cpcht.c ============================================================================== --- projects/ppc64/sys/powerpc/powermac/cpcht.c Fri May 14 03:54:53 2010 (r208058) +++ projects/ppc64/sys/powerpc/powermac/cpcht.c Fri May 14 04:22:58 2010 (r208059) @@ -62,7 +62,7 @@ static int cpcht_probe(device_t); static int cpcht_attach(device_t); -static void cpcht_build_htirq_map(device_t); +static void cpcht_configure_htbridge(device_t, phandle_t); /* * Bus interface. @@ -140,7 +140,7 @@ struct cpcht_softc { device_t sc_dev; phandle_t sc_node; vm_offset_t sc_data; - int sc_bus; + uint64_t sc_populated_slots; struct rman sc_mem_rman; struct cpcht_irq htirq_map[128]; @@ -156,6 +156,17 @@ static devclass_t cpcht_devclass; DRIVER_MODULE(cpcht, nexus, cpcht_driver, cpcht_devclass, 0, 0); +struct cpcht_range { + u_int32_t pci_hi; + u_int32_t pci_mid; + u_int32_t pci_lo; + u_int32_t junk; + u_int32_t host_hi; + u_int32_t host_lo; + u_int32_t size_hi; + u_int32_t size_lo; +}; + static int cpcht_probe(device_t dev) { @@ -182,7 +193,7 @@ static int cpcht_attach(device_t dev) { struct cpcht_softc *sc; - phandle_t node; + phandle_t node, child; u_int32_t reg[3]; int error; @@ -194,11 +205,9 @@ cpcht_attach(device_t dev) sc->sc_dev = dev; sc->sc_node = node; - sc->sc_bus = 0; + sc->sc_populated_slots = 0; sc->sc_data = (vm_offset_t)pmap_mapdev(reg[1], reg[2]); - device_add_child(dev, "pci", device_get_unit(dev)); - sc->sc_mem_rman.rm_type = RMAN_ARRAY; sc->sc_mem_rman.rm_descr = "CPCHT Device Memory"; error = rman_init(&sc->sc_mem_rman); @@ -208,30 +217,75 @@ cpcht_attach(device_t dev) return (error); } - /* Build up the HT->MPIC mapping */ - cpcht_build_htirq_map(dev); + /* + * Set up the resource manager and the HT->MPIC mapping. For cpcht, + * the ranges are properties of the child bridges, and this is also + * where we get the HT interrupts properties. + */ + + bzero(sc->htirq_map, sizeof(sc->htirq_map)); + for (child = OF_child(node); child != 0; child = OF_peer(child)) + cpcht_configure_htbridge(dev, child); + + /* Now make the mapping table available to the MPIC */ + cpcht_irqmap = sc->htirq_map; + + device_add_child(dev, "pci", device_get_unit(dev)); return (bus_generic_attach(dev)); } static void -cpcht_build_htirq_map(device_t dev) +cpcht_configure_htbridge(device_t dev, phandle_t child) { struct cpcht_softc *sc; - int pcifunchigh, hdrtype; - int ptr, nextptr; + struct ofw_pci_register pcir; + struct cpcht_range ranges[6], *rp; + int nranges, ptr, nextptr; uint32_t vend, val; - int nirq, irq; - int i, s, f; + int i, nirq, irq; + u_int f, s; sc = device_get_softc(dev); - bzero(sc->htirq_map, sizeof(sc->htirq_map)); + if (OF_getprop(child, "reg", &pcir, sizeof(pcir)) == -1) + return; + + s = OFW_PCI_PHYS_HI_DEVICE(pcir.phys_hi); + f = OFW_PCI_PHYS_HI_FUNCTION(pcir.phys_hi); /* - * Now we need to build up the HT->MPIC IRQ map. One would naively - * hope that enabling, disabling, and EOIing interrupts would cause - * the appropriate HT bus transactions to that effect. This is not - * the case. + * Mark this slot is populated. The remote south bridge does + * not like us talking to unpopulated slots on the root bus. + */ + sc->sc_populated_slots |= (1 << s); + + /* + * Next grab this child bus's bus ranges. + */ + bzero(ranges, sizeof(ranges)); + nranges = OF_getprop(child, "ranges", ranges, sizeof(ranges)); + + ranges[6].pci_hi = 0; + for (rp = ranges; rp->pci_hi != 0; rp++) { + switch (rp->pci_hi & OFW_PCI_PHYS_HI_SPACEMASK) { + case OFW_PCI_PHYS_HI_SPACE_CONFIG: + break; + case OFW_PCI_PHYS_HI_SPACE_IO: + case OFW_PCI_PHYS_HI_SPACE_MEM32: + rman_manage_region(&sc->sc_mem_rman, rp->pci_lo, + rp->pci_lo + rp->size_lo - 1); + break; + case OFW_PCI_PHYS_HI_SPACE_MEM64: + panic("64-bit CPCHT reserved memory!"); + break; + } + } + + /* + * Next build up any HT->MPIC mappings for this sub-bus. One would + * naively hope that enabling, disabling, and EOIing interrupts would + * cause the appropriate HT bus transactions to that effect. This is + * not the case. * * Instead, we have to muck about on the HT peer's root PCI bridges, * figure out what interrupts they send, enable them, and cache @@ -239,89 +293,68 @@ cpcht_build_htirq_map(device_t dev) * send EOIs later. */ - for (s = 0; s < 0x1f; s++) { - pcifunchigh = 0; - hdrtype = PCIB_READ_CONFIG(dev, 0, s, 0, PCIR_HDRTYPE, 1); - - if ((hdrtype & PCIM_HDRTYPE) > PCI_MAXHDRTYPE) - continue; - if (hdrtype & PCIM_MFDEV) - pcifunchigh = PCI_FUNCMAX; - for (f = 0; f <= pcifunchigh; f++) { - vend = PCIB_READ_CONFIG(dev, 0, s, f, PCIR_DEVVENDOR, 4); - if (vend == 0xfffffffful) + /* All the devices we are interested in have caps */ + if (!(PCIB_READ_CONFIG(dev, 0, s, f, PCIR_STATUS, 2) + & PCIM_STATUS_CAPPRESENT)) + return; + + nextptr = PCIB_READ_CONFIG(dev, 0, s, f, PCIR_CAP_PTR, 1); + while (nextptr != 0) { + ptr = nextptr; + nextptr = PCIB_READ_CONFIG(dev, 0, s, f, + ptr + PCICAP_NEXTPTR, 1); + + /* Find the HT IRQ capabilities */ + if (PCIB_READ_CONFIG(dev, 0, s, f, + ptr + PCICAP_ID, 1) != PCIY_HT) continue; - /* All the devices we are interested in have caps */ - if (!(PCIB_READ_CONFIG(dev, 0, s, f, PCIR_STATUS, 2) - & PCIM_STATUS_CAPPRESENT)) + val = PCIB_READ_CONFIG(dev, 0, s, f, ptr + PCIR_HT_COMMAND, 2); + if ((val & PCIM_HTCMD_CAP_MASK) != PCIM_HTCAP_INTERRUPT) continue; - nextptr = PCIB_READ_CONFIG(dev, 0, s, f, PCIR_CAP_PTR, 1); - while (nextptr != 0) { - ptr = nextptr; - nextptr = PCIB_READ_CONFIG(dev, 0, s, f, - ptr + PCICAP_NEXTPTR, 1); - - /* Find the HT IRQ capabilities */ - if (PCIB_READ_CONFIG(dev, 0, s, f, - ptr + PCICAP_ID, 1) != PCIY_HT) - continue; - - val = PCIB_READ_CONFIG(dev, 0, s, f, - ptr + PCIR_HT_COMMAND, 2); - if ((val & PCIM_HTCMD_CAP_MASK) != - PCIM_HTCAP_INTERRUPT) - continue; + /* Ask for the IRQ count */ + PCIB_WRITE_CONFIG(dev, 0, s, f, ptr + PCIR_HT_COMMAND, 0x1, 1); + nirq = PCIB_READ_CONFIG(dev, 0, s, f, ptr + 4, 4); + nirq = (nirq >> 16) & 0xff; + + device_printf(dev, "%d HT IRQs on device %d.%d\n", nirq, s, f); + + for (i = 0; i <= nirq; i++) { + PCIB_WRITE_CONFIG(dev, 0, s, f, + ptr + PCIR_HT_COMMAND, 0x10 + (i << 1), 1); + irq = PCIB_READ_CONFIG(dev, 0, s, f, ptr + 4, 4); + + /* + * Enable immediately as a level interrupt. + * It is still masked in the MPIC. + */ + PCIB_WRITE_CONFIG(dev, 0, s, f, ptr + 4, + (irq & ~0x23) | 0x22, 4); + irq = (irq >> 16) & 0xff; + + sc->htirq_map[irq].ht_source = i; + sc->htirq_map[irq].ht_base = sc->sc_data + + (((((s & 0x1f) << 3) | (f & 0x07)) << 8) | (ptr)); - /* Ask for the IRQ count */ PCIB_WRITE_CONFIG(dev, 0, s, f, - ptr + PCIR_HT_COMMAND, 0x1, 1); - nirq = PCIB_READ_CONFIG(dev, 0, s, f, ptr + 4, 4); - nirq = (nirq >> 16) & 0xff; - - device_printf(dev, "%d HT IRQs on device %d.%d\n", - nirq, s, f); - - for (i = 0; i <= nirq; i++) { - PCIB_WRITE_CONFIG(dev, 0, s, f, - ptr + PCIR_HT_COMMAND, 0x10 + (i << 1), 1); - irq = PCIB_READ_CONFIG(dev, 0, s, f, ptr + 4, 4); - - /* - * Enable immediately as a level interrupt. - * It is still masked in the MPIC. - */ - PCIB_WRITE_CONFIG(dev, 0, s, f, ptr + 4, - (irq & ~0x23) | 0x22, 4); - irq = (irq >> 16) & 0xff; - - sc->htirq_map[irq].ht_source = i; - sc->htirq_map[irq].ht_base = sc->sc_data + - (((((s & 0x1f) << 3) | (f & 0x07)) << 8) - | (ptr)); - - PCIB_WRITE_CONFIG(dev, 0, s, f, - ptr + PCIR_HT_COMMAND, 0x11 + (i << 1), 1); - sc->htirq_map[irq].eoi_data = - PCIB_READ_CONFIG(dev, 0, s, f, ptr + 4, 4) | - 0x80000000; - - /* - * Apple uses a non-compliant IO/APIC that differs - * in how we signal EOIs. Check if this device was - * made by Apple, and act accordingly. - */ - if ((vend & 0xffff) == 0x106b) - sc->htirq_map[irq].apple_eoi = - (sc->htirq_map[irq].ht_base - ptr) + 0x60; - } + ptr + PCIR_HT_COMMAND, 0x11 + (i << 1), 1); + sc->htirq_map[irq].eoi_data = + PCIB_READ_CONFIG(dev, 0, s, f, ptr + 4, 4) | + 0x80000000; + + /* + * Apple uses a non-compliant IO/APIC that differs + * in how we signal EOIs. Check if this device was + * made by Apple, and act accordingly. + */ + vend = PCIB_READ_CONFIG(dev, 0, s, f, + PCIR_DEVVENDOR, 4); + if ((vend & 0xffff) == 0x106b) + sc->htirq_map[irq].apple_eoi = + (sc->htirq_map[irq].ht_base - ptr) + 0x60; } - } } - - /* Now make this table available to the MPIC */ - cpcht_irqmap = sc->htirq_map; } static int @@ -342,6 +375,9 @@ cpcht_read_config(device_t dev, u_int bu caoff = sc->sc_data + (((((slot & 0x1f) << 3) | (func & 0x07)) << 8) | reg); + if (bus == 0 && !(sc->sc_populated_slots & (1 << slot))) + return (0xffffffff); + if (bus > 0) caoff += 0x01000000UL + (bus << 16); @@ -371,6 +407,9 @@ cpcht_write_config(device_t dev, u_int b caoff = sc->sc_data + (((((slot & 0x1f) << 3) | (func & 0x07)) << 8) | reg); + if (bus == 0 && !(sc->sc_populated_slots & (1 << slot))) + return; + if (bus > 0) caoff += 0x01000000UL + (bus << 16); @@ -399,7 +438,7 @@ cpcht_read_ivar(device_t dev, device_t c *result = device_get_unit(dev); return (0); case PCIB_IVAR_BUS: - *result = sc->sc_bus; + *result = 0; /* Root bus */ return (0); } @@ -444,11 +483,6 @@ cpcht_alloc_resource(device_t bus, devic /* FALLTHROUGH */ case SYS_RES_MEMORY: rm = &sc->sc_mem_rman; - err = rman_manage_region(&sc->sc_mem_rman, start, end); - if (err) - device_printf(bus, "failed to manage memory region " - "%#lx - %#lx for %s\n", start, end, - device_get_nameunit(child)); break; case SYS_RES_IRQ: @@ -519,6 +553,7 @@ static int cpcht_release_resource(device_t bus, device_t child, int type, int rid, struct resource *res) { + if (rman_get_flags(res) & RF_ACTIVE) { int error = bus_deactivate_resource(child, type, rid, res); if (error) @@ -532,6 +567,7 @@ static int cpcht_deactivate_resource(device_t bus, device_t child, int type, int rid, struct resource *res) { + /* * If this is a memory resource, unmap it. */ From owner-svn-src-projects@FreeBSD.ORG Fri May 14 14:34:23 2010 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 1BA9A106567B; Fri, 14 May 2010 14:34:23 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 0BE518FC1B; Fri, 14 May 2010 14:34:23 +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 o4EEYMVo082956; Fri, 14 May 2010 14:34:22 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4EEYMGF082952; Fri, 14 May 2010 14:34:22 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201005141434.o4EEYMGF082952@svn.freebsd.org> From: Ed Schouten Date: Fri, 14 May 2010 14:34:22 +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: r208076 - in projects/clangbsd-import: . share/mk usr.bin 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, 14 May 2010 14:34:23 -0000 Author: ed Date: Fri May 14 14:34:22 2010 New Revision: 208076 URL: http://svn.freebsd.org/changeset/base/208076 Log: Only enable Clang by default on amd64 and i386. Modified: projects/clangbsd-import/Makefile.inc1 projects/clangbsd-import/share/mk/bsd.own.mk projects/clangbsd-import/usr.bin/Makefile Modified: projects/clangbsd-import/Makefile.inc1 ============================================================================== --- projects/clangbsd-import/Makefile.inc1 Fri May 14 14:26:56 2010 (r208075) +++ projects/clangbsd-import/Makefile.inc1 Fri May 14 14:34:22 2010 (r208076) @@ -956,12 +956,12 @@ _gensnmptree= usr.sbin/bsnmpd/gensnmptre _crunchgen= usr.sbin/crunch/crunchgen .endif -.if ${MK_TOOLCHAIN} != "no" && ${MK_CLANG} != "no" +# XXX: There is no way to specify bootstrap tools depending on MK-flags +# with different per-architecture default values. Always build tblgen. _clang_tblgen= \ usr.bin/clang/lib/libllvmsupport \ usr.bin/clang/lib/libllvmsystem \ usr.bin/clang/bin/tblgen -.endif .if ${MK_CDDL} != "no" _dtrace_tools= cddl/usr.bin/sgsmsg cddl/lib/libctf lib/libelf \ Modified: projects/clangbsd-import/share/mk/bsd.own.mk ============================================================================== --- projects/clangbsd-import/share/mk/bsd.own.mk Fri May 14 14:26:56 2010 (r208075) +++ projects/clangbsd-import/share/mk/bsd.own.mk Fri May 14 14:34:22 2010 (r208076) @@ -279,6 +279,17 @@ WITH_IDEA= .endif # +# Default behaviour of MK_CLANG depends on the architecture. +# +.if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386" +_clang_yes=CLANG +_clang_no= +.else +_clang_yes= +_clang_no=CLANG +.endif + +# # MK_* options which default to "yes". # .for var in \ @@ -305,7 +316,7 @@ WITH_IDEA= BZIP2 \ CALENDAR \ CDDL \ - CLANG \ + ${_clang_yes} \ CPP \ CRYPT \ CTM \ @@ -408,6 +419,7 @@ MK_${var}:= yes BIND_LIBS \ BIND_SIGCHASE \ BIND_XML \ + ${_clang_no} \ HESIOD \ IDEA .if defined(WITH_${var}) && defined(WITHOUT_${var}) @@ -487,6 +499,7 @@ MK_GROFF:= no .endif .if ${MK_TOOLCHAIN} == "no" +MK_CLANG:= no MK_GDB:= no .endif Modified: projects/clangbsd-import/usr.bin/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/Makefile Fri May 14 14:26:56 2010 (r208075) +++ projects/clangbsd-import/usr.bin/Makefile Fri May 14 14:34:22 2010 (r208076) @@ -280,6 +280,10 @@ _cpio= cpio _calendar= calendar .endif +.if ${MK_CLANG} != "no" +_clang= clang +.endif + .if ${MK_HESIOD} != "no" _hesinfo= hesinfo .endif @@ -349,9 +353,6 @@ _ul= ul _ar= ar _c89= c89 _c99= c99 -.if ${MK_CLANG} != "no" -_clang= clang -.endif _compile_et= compile_et _ctags= ctags _file2c= file2c From owner-svn-src-projects@FreeBSD.ORG Fri May 14 15:27:19 2010 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 BC9D91065673; Fri, 14 May 2010 15:27:19 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id ACFE98FC1A; Fri, 14 May 2010 15:27:19 +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 o4EFRJgq094856; Fri, 14 May 2010 15:27:19 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4EFRJSb094854; Fri, 14 May 2010 15:27:19 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201005141527.o4EFRJSb094854@svn.freebsd.org> From: Ed Schouten Date: Fri, 14 May 2010 15:27:19 +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: r208078 - projects/clangbsd-import/usr.bin/clang/bin/clang 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, 14 May 2010 15:27:19 -0000 Author: ed Date: Fri May 14 15:27:19 2010 New Revision: 208078 URL: http://svn.freebsd.org/changeset/base/208078 Log: Style(9). Modified: projects/clangbsd-import/usr.bin/clang/bin/clang/Makefile Modified: projects/clangbsd-import/usr.bin/clang/bin/clang/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/bin/clang/Makefile Fri May 14 15:06:12 2010 (r208077) +++ projects/clangbsd-import/usr.bin/clang/bin/clang/Makefile Fri May 14 15:27:19 2010 (r208078) @@ -11,19 +11,18 @@ MAN= LINKS= ${BINDIR}/clang ${BINDIR}/clang++ TGHDRS= DiagnosticCommonKinds DiagnosticDriverKinds \ - DiagnosticFrontendKinds \ - DiagnosticLexKinds DiagnosticSemaKinds CC1Options + DiagnosticFrontendKinds DiagnosticLexKinds DiagnosticSemaKinds \ + CC1Options LIBDEPS=clangfrontend clangdriver clangcodegen clangsema clangchecker \ clanganalysis clangrewrite clangast clangparse clanglex clangbasic \ \ - llvminstcombine \ - llvmipo llvmbitwriter llvmbitreader llvmpowerpccodegen \ - llvmpowerpcasmprinter llvmpowerpcinfo llvmx86asmparser \ - llvmx86asmprinter llvmx86codegen llvmx86info llvmmipsasmprinter \ - llvmmipscodegen llvmmipsinfo llvmarmasmparser llvmarmasmprinter \ - llvmarmcodegen llvmselectiondag llvmasmprinter llvmcodegen \ - llvmscalaropts llvmtransformutils llvmmc llvmmcparser llvmipa \ - llvmanalysis llvmtarget \ - llvmmc llvmcore llvmarminfo llvmsupport llvmsystem + llvminstcombine llvmipo llvmbitwriter llvmbitreader \ + llvmpowerpccodegen llvmpowerpcasmprinter llvmpowerpcinfo \ + llvmx86asmparser llvmx86asmprinter llvmx86codegen llvmx86info \ + llvmmipsasmprinter llvmmipscodegen llvmmipsinfo \ + llvmarmasmparser llvmarmasmprinter llvmarmcodegen \ + llvmselectiondag llvmasmprinter llvmcodegen llvmscalaropts \ + llvmtransformutils llvmmc llvmmcparser llvmipa llvmanalysis \ + llvmtarget llvmmc llvmcore llvmarminfo llvmsupport llvmsystem .include "../../clang.prog.mk" From owner-svn-src-projects@FreeBSD.ORG Fri May 14 15:29:17 2010 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 B32E7106567C; Fri, 14 May 2010 15:29:17 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id A3A998FC1E; Fri, 14 May 2010 15:29:17 +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 o4EFTHx0095314; Fri, 14 May 2010 15:29:17 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4EFTHhe095312; Fri, 14 May 2010 15:29:17 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201005141529.o4EFTHhe095312@svn.freebsd.org> From: Ed Schouten Date: Fri, 14 May 2010 15:29:17 +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: r208079 - projects/clangbsd-import/usr.bin/clang/lib/libclangsema 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, 14 May 2010 15:29:17 -0000 Author: ed Date: Fri May 14 15:29:17 2010 New Revision: 208079 URL: http://svn.freebsd.org/changeset/base/208079 Log: Style(9). Modified: projects/clangbsd-import/usr.bin/clang/lib/libclangsema/Makefile Modified: projects/clangbsd-import/usr.bin/clang/lib/libclangsema/Makefile ============================================================================== --- projects/clangbsd-import/usr.bin/clang/lib/libclangsema/Makefile Fri May 14 15:27:19 2010 (r208078) +++ projects/clangbsd-import/usr.bin/clang/lib/libclangsema/Makefile Fri May 14 15:29:17 2010 (r208079) @@ -17,6 +17,7 @@ SRCS= AnalysisBasedWarnings.cpp CodeComp SemaTemplateInstantiateDecl.cpp SemaType.cpp \ TargetAttributesSema.cpp -TGHDRS= DiagnosticASTKinds DiagnosticCommonKinds DiagnosticSemaKinds DiagnosticParseKinds +TGHDRS= DiagnosticASTKinds DiagnosticCommonKinds DiagnosticParseKinds \ + DiagnosticSemaKinds .include "../../clang.lib.mk" From owner-svn-src-projects@FreeBSD.ORG Fri May 14 15:47:51 2010 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 78830106564A; Fri, 14 May 2010 15:47:51 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 689898FC08; Fri, 14 May 2010 15:47:51 +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 o4EFlp3i099483; Fri, 14 May 2010 15:47:51 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4EFlpkT099481; Fri, 14 May 2010 15:47:51 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201005141547.o4EFlpkT099481@svn.freebsd.org> From: Ed Schouten Date: Fri, 14 May 2010 15:47: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: r208080 - projects/clangbsd-import/contrib/llvm/tools/clang/lib/Driver 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, 14 May 2010 15:47:51 -0000 Author: ed Date: Fri May 14 15:47:51 2010 New Revision: 208080 URL: http://svn.freebsd.org/changeset/base/208080 Log: Don't be over-optimistic. Still emit i486 code on i386 by default. Modified: projects/clangbsd-import/contrib/llvm/tools/clang/lib/Driver/Tools.cpp Modified: projects/clangbsd-import/contrib/llvm/tools/clang/lib/Driver/Tools.cpp ============================================================================== --- projects/clangbsd-import/contrib/llvm/tools/clang/lib/Driver/Tools.cpp Fri May 14 15:29:17 2010 (r208079) +++ projects/clangbsd-import/contrib/llvm/tools/clang/lib/Driver/Tools.cpp Fri May 14 15:47:51 2010 (r208080) @@ -629,7 +629,7 @@ void Clang::AddX86TargetArgs(const ArgLi if (getToolChain().getArchName() == "x86_64") CPUName = "x86-64"; else if (getToolChain().getArchName() == "i386") - CPUName = "pentium4"; + CPUName = "i486"; } } From owner-svn-src-projects@FreeBSD.ORG Fri May 14 18:00:21 2010 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 941AE106564A; Fri, 14 May 2010 18:00:21 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 846DD8FC19; Fri, 14 May 2010 18:00:21 +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 o4EI0LwU028862; Fri, 14 May 2010 18:00:21 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4EI0Lcj028860; Fri, 14 May 2010 18:00:21 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201005141800.o4EI0Lcj028860@svn.freebsd.org> From: Ed Schouten Date: Fri, 14 May 2010 18:00: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: r208085 - projects/clangbsd-import/share/mk 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, 14 May 2010 18:00:21 -0000 Author: ed Date: Fri May 14 18:00:21 2010 New Revision: 208085 URL: http://svn.freebsd.org/changeset/base/208085 Log: Enable Clang on PowerPC as well. Rumors are that it somewhat works, except for some bugs related to varargs. By enabling it, I hope it invites people to look into these issues. Requested by: nathanw Modified: projects/clangbsd-import/share/mk/bsd.own.mk Modified: projects/clangbsd-import/share/mk/bsd.own.mk ============================================================================== --- projects/clangbsd-import/share/mk/bsd.own.mk Fri May 14 17:39:28 2010 (r208084) +++ projects/clangbsd-import/share/mk/bsd.own.mk Fri May 14 18:00:21 2010 (r208085) @@ -281,7 +281,8 @@ WITH_IDEA= # # Default behaviour of MK_CLANG depends on the architecture. # -.if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386" +.if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386" || \ + ${MACHINE_ARCH} == "powerpc" _clang_yes=CLANG _clang_no= .else From owner-svn-src-projects@FreeBSD.ORG Fri May 14 18:02:13 2010 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 36D8B106567B; Fri, 14 May 2010 18:02:13 +0000 (UTC) (envelope-from rdivacky@vlk.vlakno.cz) Received: from vlakno.cz (lev.vlakno.cz [77.93.215.190]) by mx1.freebsd.org (Postfix) with ESMTP id E275C8FC15; Fri, 14 May 2010 18:02:12 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by vlakno.cz (Postfix) with ESMTP id 821759CB0DC; Fri, 14 May 2010 19:59:10 +0200 (CEST) X-Virus-Scanned: amavisd-new at vlakno.cz Received: from vlakno.cz ([127.0.0.1]) by localhost (lev.vlakno.cz [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id quQB28jEBfU6; Fri, 14 May 2010 19:59:08 +0200 (CEST) Received: from vlk.vlakno.cz (localhost [127.0.0.1]) by vlakno.cz (Postfix) with ESMTP id 52DF19CB140; Fri, 14 May 2010 19:59:08 +0200 (CEST) Received: (from rdivacky@localhost) by vlk.vlakno.cz (8.14.3/8.14.3/Submit) id o4EHx8LF072797; Fri, 14 May 2010 19:59:08 +0200 (CEST) (envelope-from rdivacky) Date: Fri, 14 May 2010 19:59:08 +0200 From: Roman Divacky To: Ed Schouten Message-ID: <20100514175908.GA72692@freebsd.org> References: <201005141800.o4EI0Lcj028860@svn.freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201005141800.o4EI0Lcj028860@svn.freebsd.org> User-Agent: Mutt/1.4.2.3i Cc: svn-src-projects@FreeBSD.org, src-committers@FreeBSD.org Subject: Re: svn commit: r208085 - projects/clangbsd-import/share/mk 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, 14 May 2010 18:02:13 -0000 On Fri, May 14, 2010 at 06:00:21PM +0000, Ed Schouten wrote: > Author: ed > Date: Fri May 14 18:00:21 2010 > New Revision: 208085 > URL: http://svn.freebsd.org/changeset/base/208085 > > Log: > Enable Clang on PowerPC as well. > > Rumors are that it somewhat works, except for some bugs related to > varargs. By enabling it, I hope it invites people to look into these > issues. if someone feels like working on PPC varargs in clang please contact me. note that this should be like 50 lines of code or so From owner-svn-src-projects@FreeBSD.ORG Fri May 14 22:44:47 2010 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 A7A691065676; Fri, 14 May 2010 22:44:47 +0000 (UTC) (envelope-from nwhitehorn@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 983788FC0A; Fri, 14 May 2010 22:44: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 o4EMil7b093166; Fri, 14 May 2010 22:44:47 GMT (envelope-from nwhitehorn@svn.freebsd.org) Received: (from nwhitehorn@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4EMilf7093164; Fri, 14 May 2010 22:44:47 GMT (envelope-from nwhitehorn@svn.freebsd.org) Message-Id: <201005142244.o4EMilf7093164@svn.freebsd.org> From: Nathan Whitehorn Date: Fri, 14 May 2010 22:44: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: r208106 - projects/ppc64/sys/powerpc/powermac 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, 14 May 2010 22:44:47 -0000 Author: nwhitehorn Date: Fri May 14 22:44:47 2010 New Revision: 208106 URL: http://svn.freebsd.org/changeset/base/208106 Log: Make kiic(4) work on big-endian versions of itself, like the one in the U3/U4 northbridge. This uses 4-byte read/writes instead of adding 3 to the base address like Linux and OS X do. Hooray bus space! Modified: projects/ppc64/sys/powerpc/powermac/kiic.c Modified: projects/ppc64/sys/powerpc/powermac/kiic.c ============================================================================== --- projects/ppc64/sys/powerpc/powermac/kiic.c Fri May 14 22:39:51 2010 (r208105) +++ projects/ppc64/sys/powerpc/powermac/kiic.c Fri May 14 22:44:47 2010 (r208106) @@ -57,6 +57,7 @@ #define ADDR 5 #define SUBADDR 6 #define DATA 7 +#define REV 8 /* MODE */ #define I2C_SPEED 0x03 /* Speed mask */ @@ -221,6 +222,9 @@ kiic_attach(device_t self) kiic_writereg(sc, IER, I2C_INT_DATA | I2C_INT_ADDR | I2C_INT_STOP); + if (bootverbose) + device_printf(self, "Revision: %02X\n", kiic_readreg(sc, REV)); + /* Add the IIC bus layer */ sc->sc_iicbus = device_add_child(self, "iicbus", -1); @@ -230,14 +234,14 @@ kiic_attach(device_t self) static void kiic_writereg(struct kiic_softc *sc, u_int reg, u_int val) { - bus_write_1(sc->sc_reg, sc->sc_regstep * reg, val); + bus_write_4(sc->sc_reg, sc->sc_regstep * reg, val); DELAY(10); /* register access delay */ } static u_int kiic_readreg(struct kiic_softc *sc, u_int reg) { - return bus_read_1(sc->sc_reg, sc->sc_regstep * reg); + return bus_read_4(sc->sc_reg, sc->sc_regstep * reg) & 0xff; } static void From owner-svn-src-projects@FreeBSD.ORG Sat May 15 15:03:19 2010 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 1758D10656C4; Sat, 15 May 2010 15:03:19 +0000 (UTC) (envelope-from nwhitehorn@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 064568FC1A; Sat, 15 May 2010 15:03:19 +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 o4FF3IoO009443; Sat, 15 May 2010 15:03:18 GMT (envelope-from nwhitehorn@svn.freebsd.org) Received: (from nwhitehorn@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4FF3IUb009442; Sat, 15 May 2010 15:03:18 GMT (envelope-from nwhitehorn@svn.freebsd.org) Message-Id: <201005151503.o4FF3IUb009442@svn.freebsd.org> From: Nathan Whitehorn Date: Sat, 15 May 2010 15:03:18 +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: r208114 - projects/ppc64/sys/powerpc/powermac 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: Sat, 15 May 2010 15:03:19 -0000 Author: nwhitehorn Date: Sat May 15 15:03:18 2010 New Revision: 208114 URL: http://svn.freebsd.org/changeset/base/208114 Log: Revise the way htpic(4) programs edge interrupts into the remote IO/APIC. This fixes things like smu (although smu still does not work, but at least does not cause kernel panics) that depend on interrupts attached to GPIO lines on U4 systems. Modified: projects/ppc64/sys/powerpc/powermac/cpcht.c Modified: projects/ppc64/sys/powerpc/powermac/cpcht.c ============================================================================== --- projects/ppc64/sys/powerpc/powermac/cpcht.c Sat May 15 12:51:22 2010 (r208113) +++ projects/ppc64/sys/powerpc/powermac/cpcht.c Sat May 15 15:03:18 2010 (r208114) @@ -156,6 +156,10 @@ static devclass_t cpcht_devclass; DRIVER_MODULE(cpcht, nexus, cpcht_driver, cpcht_devclass, 0, 0); +#define HTAPIC_REQUEST_EOI 0x20 +#define HTAPIC_TRIGGER_LEVEL 0x02 +#define HTAPIC_MASK 0x01 + struct cpcht_range { u_int32_t pci_hi; u_int32_t pci_mid; @@ -316,21 +320,20 @@ cpcht_configure_htbridge(device_t dev, p /* Ask for the IRQ count */ PCIB_WRITE_CONFIG(dev, 0, s, f, ptr + PCIR_HT_COMMAND, 0x1, 1); nirq = PCIB_READ_CONFIG(dev, 0, s, f, ptr + 4, 4); - nirq = (nirq >> 16) & 0xff; + nirq = ((nirq >> 16) & 0xff) + 1; device_printf(dev, "%d HT IRQs on device %d.%d\n", nirq, s, f); - for (i = 0; i <= nirq; i++) { + for (i = 0; i < nirq; i++) { PCIB_WRITE_CONFIG(dev, 0, s, f, ptr + PCIR_HT_COMMAND, 0x10 + (i << 1), 1); irq = PCIB_READ_CONFIG(dev, 0, s, f, ptr + 4, 4); /* - * Enable immediately as a level interrupt. - * It is still masked in the MPIC. + * Mask this interrupt for now. */ PCIB_WRITE_CONFIG(dev, 0, s, f, ptr + 4, - (irq & ~0x23) | 0x22, 4); + irq | HTAPIC_MASK, 4); irq = (irq >> 16) & 0xff; sc->htirq_map[irq].ht_source = i; @@ -612,6 +615,12 @@ static device_method_t openpic_cpcht_me { 0, 0 }, }; +struct openpic_cpcht_softc { + struct openpic_softc sc_openpic; + + struct mtx sc_ht_mtx; +}; + static driver_t openpic_cpcht_driver = { "htpic", openpic_cpcht_methods, @@ -635,6 +644,7 @@ openpic_cpcht_probe(device_t dev) static int openpic_cpcht_attach(device_t dev) { + struct openpic_cpcht_softc *sc; int err, irq; err = openpic_attach(dev); @@ -642,6 +652,13 @@ openpic_cpcht_attach(device_t dev) return (err); /* + * The HT APIC stuff is not thread-safe, so we need a mutex to + * protect it. + */ + sc = device_get_softc(dev); + mtx_init(&sc->sc_ht_mtx, "htpic", NULL, MTX_SPIN); + + /* * Interrupts 0-3 are internally sourced and are level triggered * active low. Interrupts 4-123 are connected to a pulse generator * and should be programmed as edge triggered low-to-high. @@ -661,7 +678,7 @@ static void openpic_cpcht_config(device_t dev, u_int irq, enum intr_trigger trig, enum intr_polarity pol) { -#ifdef NOTYET + struct openpic_cpcht_softc *sc; uint32_t ht_irq; /* @@ -671,48 +688,105 @@ openpic_cpcht_config(device_t dev, u_int * link. */ + sc = device_get_softc(dev); + if (cpcht_irqmap != NULL && irq < 128 && - cpcht_irqmap[irq].ht_base > 0) { + cpcht_irqmap[irq].ht_base > 0 && !cpcht_irqmap[irq].edge) { + mtx_lock_spin(&sc->sc_ht_mtx); + /* Program the data port */ out8rb(cpcht_irqmap[irq].ht_base + PCIR_HT_COMMAND, 0x10 + (cpcht_irqmap[irq].ht_source << 1)); /* Grab the IRQ config register */ - ht_irq = in32rb(cpcht_irqmap[irq].ht_base + 4) & ~23; + ht_irq = in32rb(cpcht_irqmap[irq].ht_base + 4); + + /* Mask the IRQ while we fiddle settings */ + out32rb(cpcht_irqmap[irq].ht_base + 4, ht_irq | HTAPIC_MASK); - if (trig == INTR_TRIGGER_EDGE) + /* Program the interrupt sense */ + ht_irq &= ~(HTAPIC_TRIGGER_LEVEL | HTAPIC_REQUEST_EOI); + if (trig == INTR_TRIGGER_EDGE) { cpcht_irqmap[irq].edge = 1; - else - ht_irq |= 0x22; - + } else { + cpcht_irqmap[irq].edge = 0; + ht_irq |= HTAPIC_TRIGGER_LEVEL | HTAPIC_REQUEST_EOI; + } out32rb(cpcht_irqmap[irq].ht_base + 4, ht_irq); + + mtx_unlock_spin(&sc->sc_ht_mtx); } -#endif - } static void openpic_cpcht_enable(device_t dev, u_int irq, u_int vec) { + struct openpic_cpcht_softc *sc; + uint32_t ht_irq; + openpic_enable(dev, irq, vec); + + sc = device_get_softc(dev); + + if (cpcht_irqmap != NULL && irq < 128 && + cpcht_irqmap[irq].ht_base > 0) { + mtx_lock_spin(&sc->sc_ht_mtx); + + /* Program the data port */ + out8rb(cpcht_irqmap[irq].ht_base + PCIR_HT_COMMAND, + 0x10 + (cpcht_irqmap[irq].ht_source << 1)); + + /* Unmask the interrupt */ + ht_irq = in32rb(cpcht_irqmap[irq].ht_base + 4); + ht_irq &= ~HTAPIC_MASK; + out32rb(cpcht_irqmap[irq].ht_base + 4, ht_irq); + + mtx_unlock_spin(&sc->sc_ht_mtx); + } + openpic_cpcht_eoi(dev, irq); } static void openpic_cpcht_unmask(device_t dev, u_int irq) { + struct openpic_cpcht_softc *sc; + uint32_t ht_irq; + openpic_unmask(dev, irq); + + sc = device_get_softc(dev); + + if (cpcht_irqmap != NULL && irq < 128 && + cpcht_irqmap[irq].ht_base > 0) { + mtx_lock_spin(&sc->sc_ht_mtx); + + /* Program the data port */ + out8rb(cpcht_irqmap[irq].ht_base + PCIR_HT_COMMAND, + 0x10 + (cpcht_irqmap[irq].ht_source << 1)); + + /* Unmask the interrupt */ + ht_irq = in32rb(cpcht_irqmap[irq].ht_base + 4); + ht_irq &= ~HTAPIC_MASK; + out32rb(cpcht_irqmap[irq].ht_base + 4, ht_irq); + + mtx_unlock_spin(&sc->sc_ht_mtx); + } + openpic_cpcht_eoi(dev, irq); } static void openpic_cpcht_eoi(device_t dev, u_int irq) { + struct openpic_cpcht_softc *sc; uint32_t off, mask; if (irq == 255) return; + sc = device_get_softc(dev); + if (cpcht_irqmap != NULL && irq < 128 && cpcht_irqmap[irq].ht_base > 0 && !cpcht_irqmap[irq].edge) { /* If this is an HT IRQ, acknowledge it at the remote APIC */ @@ -722,10 +796,14 @@ openpic_cpcht_eoi(device_t dev, u_int ir mask = 1 << (cpcht_irqmap[irq].ht_source & 0x1f); out32rb(cpcht_irqmap[irq].apple_eoi + off, mask); } else { + mtx_lock_spin(&sc->sc_ht_mtx); + out8rb(cpcht_irqmap[irq].ht_base + PCIR_HT_COMMAND, 0x11 + (cpcht_irqmap[irq].ht_source << 1)); out32rb(cpcht_irqmap[irq].ht_base + 4, cpcht_irqmap[irq].eoi_data); + + mtx_unlock_spin(&sc->sc_ht_mtx); } } From owner-svn-src-projects@FreeBSD.ORG Sat May 15 17:02:34 2010 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 E49ED1065678; Sat, 15 May 2010 17:02:33 +0000 (UTC) (envelope-from nwhitehorn@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id D3CB58FC0A; Sat, 15 May 2010 17:02: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 o4FH2XqA036887; Sat, 15 May 2010 17:02:33 GMT (envelope-from nwhitehorn@svn.freebsd.org) Received: (from nwhitehorn@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4FH2X7W036886; Sat, 15 May 2010 17:02:33 GMT (envelope-from nwhitehorn@svn.freebsd.org) Message-Id: <201005151702.o4FH2X7W036886@svn.freebsd.org> From: Nathan Whitehorn Date: Sat, 15 May 2010 17:02: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: r208115 - 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: Sat, 15 May 2010 17:02:35 -0000 Author: nwhitehorn Date: Sat May 15 17:02:33 2010 New Revision: 208115 URL: http://svn.freebsd.org/changeset/base/208115 Log: Fix memory map detection in the > 4 GB case by not rounding down to an int. This (a) truncated the amount of available RAM, and (b) produced a screwy memory map that broke all kinds of things. USB and Firewire work now on my desktop. Modified: projects/ppc64/sys/powerpc/aim/ofw_machdep.c Modified: projects/ppc64/sys/powerpc/aim/ofw_machdep.c ============================================================================== --- projects/ppc64/sys/powerpc/aim/ofw_machdep.c Sat May 15 15:03:18 2010 (r208114) +++ projects/ppc64/sys/powerpc/aim/ofw_machdep.c Sat May 15 17:02:33 2010 (r208115) @@ -128,9 +128,9 @@ memr_overlap(struct mem_region *r1, stru static void memr_merge(struct mem_region *from, struct mem_region *to) { - int end; - end = imax(to->mr_start + to->mr_size, from->mr_start + from->mr_size); - to->mr_start = imin(from->mr_start, to->mr_start); + vm_offset_t end; + end = ulmax(to->mr_start + to->mr_size, from->mr_start + from->mr_size); + to->mr_start = ulmin(from->mr_start, to->mr_start); to->mr_size = end - to->mr_start; } @@ -229,7 +229,6 @@ parse_ofw_memory(phandle_t node, const c int hisz; hisz = parse_ofw_memory(node, "reg", himem); - j = sz/sizeof(output[0]); for (i = 0; i < hisz/sizeof(himem[0]); i++) { if (himem[i].mr_start > BUS_SPACE_MAXADDR_32BIT) { output[j].mr_start = himem[i].mr_start; From owner-svn-src-projects@FreeBSD.ORG Sat May 15 20:25:29 2010 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 ED310106566C; Sat, 15 May 2010 20:25:29 +0000 (UTC) (envelope-from nwhitehorn@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id DB8E88FC19; Sat, 15 May 2010 20:25: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 o4FKPTHk081826; Sat, 15 May 2010 20:25:29 GMT (envelope-from nwhitehorn@svn.freebsd.org) Received: (from nwhitehorn@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4FKPTeL081823; Sat, 15 May 2010 20:25:29 GMT (envelope-from nwhitehorn@svn.freebsd.org) Message-Id: <201005152025.o4FKPTeL081823@svn.freebsd.org> From: Nathan Whitehorn Date: Sat, 15 May 2010 20:25:29 +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: r208118 - in projects/ppc64/sys: dev/ofw powerpc/aim powerpc/ofw 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: Sat, 15 May 2010 20:25:30 -0000 Author: nwhitehorn Date: Sat May 15 20:25:29 2010 New Revision: 208118 URL: http://svn.freebsd.org/changeset/base/208118 Log: Quiesce Open Firmware before taking control of the exception vectors and MMU. On U4-based Apple systems, there is a firmware background process to manage fans while in OF. Booting the kernel without stopping it causes the SMU to crash, which implies no fan control and no RTC. Modified: projects/ppc64/sys/dev/ofw/ofw_if.m projects/ppc64/sys/dev/ofw/ofw_standard.c projects/ppc64/sys/dev/ofw/openfirm.c projects/ppc64/sys/dev/ofw/openfirm.h projects/ppc64/sys/powerpc/aim/machdep.c projects/ppc64/sys/powerpc/ofw/ofw_real.c Modified: projects/ppc64/sys/dev/ofw/ofw_if.m ============================================================================== --- projects/ppc64/sys/dev/ofw/ofw_if.m Sat May 15 19:46:16 2010 (r208117) +++ projects/ppc64/sys/dev/ofw/ofw_if.m Sat May 15 20:25:29 2010 (r208118) @@ -340,6 +340,13 @@ METHOD void release { # Commands for returning control to the firmware /** + * @brief Turn off firmware background activities + */ +METHOD void quiesce { + ofw_t _ofw; +}; + +/** * @brief Temporarily return control to firmware. */ METHOD void enter { Modified: projects/ppc64/sys/dev/ofw/ofw_standard.c ============================================================================== --- projects/ppc64/sys/dev/ofw/ofw_standard.c Sat May 15 19:46:16 2010 (r208117) +++ projects/ppc64/sys/dev/ofw/ofw_standard.c Sat May 15 20:25:29 2010 (r208118) @@ -105,6 +105,7 @@ static ssize_t ofw_std_write(ofw_t ofw, static int ofw_std_seek(ofw_t ofw, ihandle_t instance, uint64_t pos); static caddr_t ofw_std_claim(ofw_t ofw, void *virt, size_t size, u_int align); static void ofw_std_release(ofw_t ofw, void *virt, size_t size); +static void ofw_std_quiesce(ofw_t ofw); static void ofw_std_enter(ofw_t ofw); static void ofw_std_exit(ofw_t ofw); @@ -133,6 +134,7 @@ static ofw_method_t ofw_std_methods[] = OFWMETHOD(ofw_seek, ofw_std_seek), OFWMETHOD(ofw_claim, ofw_std_claim), OFWMETHOD(ofw_release, ofw_std_release), + OFWMETHOD(ofw_quiesce, ofw_std_quiesce), OFWMETHOD(ofw_enter, ofw_std_enter), OFWMETHOD(ofw_exit, ofw_std_exit), @@ -729,6 +731,23 @@ ofw_std_release(ofw_t ofw, void *virt, s * Control transfer functions */ +/* Turn off OF background tasks */ +static void +ofw_std_quiesce(ofw_t ofw) +{ + struct { + cell_t name; + cell_t nargs; + cell_t nreturns; + } args = { + (cell_t)"quiesce", + 0, + 0, + }; + + openfirmware(&args); +} + /* Suspend and drop back to the Open Firmware interface. */ static void ofw_std_enter(ofw_t ofw) Modified: projects/ppc64/sys/dev/ofw/openfirm.c ============================================================================== --- projects/ppc64/sys/dev/ofw/openfirm.c Sat May 15 19:46:16 2010 (r208117) +++ projects/ppc64/sys/dev/ofw/openfirm.c Sat May 15 20:25:29 2010 (r208118) @@ -409,6 +409,15 @@ OF_release(void *virt, size_t size) * Control transfer functions */ +/* Turn off OF background tasks */ +void +OF_quiesce() +{ + + OFW_QUIESCE(ofw_obj); +} + + /* Suspend and drop back to the Open Firmware interface. */ void OF_enter() Modified: projects/ppc64/sys/dev/ofw/openfirm.h ============================================================================== --- projects/ppc64/sys/dev/ofw/openfirm.h Sat May 15 19:46:16 2010 (r208117) +++ projects/ppc64/sys/dev/ofw/openfirm.h Sat May 15 20:25:29 2010 (r208118) @@ -134,6 +134,7 @@ void *OF_claim(void *virtrequest, size_ void OF_release(void *virt, size_t size); /* Control transfer functions */ +void OF_quiesce(void); void OF_enter(void); void OF_exit(void) __attribute__((noreturn)); Modified: projects/ppc64/sys/powerpc/aim/machdep.c ============================================================================== --- projects/ppc64/sys/powerpc/aim/machdep.c Sat May 15 19:46:16 2010 (r208117) +++ projects/ppc64/sys/powerpc/aim/machdep.c Sat May 15 20:25:29 2010 (r208118) @@ -213,10 +213,11 @@ cpu_startup(void *dummy) printf("Physical memory chunk(s):\n"); for (indx = 0; phys_avail[indx + 1] != 0; indx += 2) { - int size1 = phys_avail[indx + 1] - phys_avail[indx]; + vm_offset_t size1 = + phys_avail[indx + 1] - phys_avail[indx]; #ifdef __powerpc64__ - printf("0x%16lx - 0x%16lx, %d bytes (%ld pages)\n", + printf("0x%16lx - 0x%16lx, %ld bytes (%ld pages)\n", #else printf("0x%08x - 0x%08x, %d bytes (%ld pages)\n", #endif @@ -260,6 +261,8 @@ extern void *decrint, *decrsize; extern void *extint, *extsize; extern void *dblow, *dbsize; +void ofw_real_quiesce(void); + uintptr_t powerpc_init(vm_offset_t startkernel, vm_offset_t endkernel, vm_offset_t basekernel, void *mdp) @@ -327,10 +330,11 @@ powerpc_init(vm_offset_t startkernel, vm mutex_init(); /* - * Install the OF client interface + * Install the OF client interface and then take over the machine */ OF_bootstrap(); + OF_quiesce(); /* * Initialize the console before printing anything. Modified: projects/ppc64/sys/powerpc/ofw/ofw_real.c ============================================================================== --- projects/ppc64/sys/powerpc/ofw/ofw_real.c Sat May 15 19:46:16 2010 (r208117) +++ projects/ppc64/sys/powerpc/ofw/ofw_real.c Sat May 15 20:25:29 2010 (r208118) @@ -110,6 +110,7 @@ static ssize_t ofw_real_write(ofw_t, iha static int ofw_real_seek(ofw_t, ihandle_t instance, u_int64_t pos); static caddr_t ofw_real_claim(ofw_t, void *virt, size_t size, u_int align); static void ofw_real_release(ofw_t, void *virt, size_t size); +static void ofw_real_quiesce(ofw_t); static void ofw_real_enter(ofw_t); static void ofw_real_exit(ofw_t); @@ -138,6 +139,7 @@ static ofw_method_t ofw_real_methods[] = OFWMETHOD(ofw_seek, ofw_real_seek), OFWMETHOD(ofw_claim, ofw_real_claim), OFWMETHOD(ofw_release, ofw_real_release), + OFWMETHOD(ofw_quiesce, ofw_real_quiesce), OFWMETHOD(ofw_enter, ofw_real_enter), OFWMETHOD(ofw_exit, ofw_real_exit), @@ -1048,6 +1050,27 @@ ofw_real_release(ofw_t ofw, void *virt, * Control transfer functions */ +/* Turn off OF background tasks */ +static void +ofw_real_quiesce(ofw_t ofw) +{ + vm_offset_t argsptr; + struct { + cell_t name; + cell_t nargs; + cell_t nreturns; + } args; + + args.name = (cell_t)(uintptr_t)"quiesce"; + args.nargs = 0; + args.nreturns = 0; + + ofw_real_start(); + argsptr = ofw_real_map(&args, sizeof(args)); + openfirmware((void *)argsptr); + ofw_real_stop(); +} + /* Suspend and drop back to the Open Firmware interface. */ static void ofw_real_enter(ofw_t ofw) From owner-svn-src-projects@FreeBSD.ORG Sat May 15 22:39:34 2010 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 9FFB41065673; Sat, 15 May 2010 22:39:34 +0000 (UTC) (envelope-from dougb@FreeBSD.org) Received: from svn.freebsd.org (unknown [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 774D38FC19; Sat, 15 May 2010 22:39:34 +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 o4FMdYFL011560; Sat, 15 May 2010 22:39:34 GMT (envelope-from dougb@svn.freebsd.org) Received: (from dougb@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o4FMdYl7011559; Sat, 15 May 2010 22:39:34 GMT (envelope-from dougb@svn.freebsd.org) Message-Id: <201005152239.o4FMdYl7011559@svn.freebsd.org> From: Doug Barton Date: Sat, 15 May 2010 22:39:34 +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: r208122 - projects/etc_ipv6 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: Sat, 15 May 2010 22:39:34 -0000 Author: dougb Date: Sat May 15 22:39:33 2010 New Revision: 208122 URL: http://svn.freebsd.org/changeset/base/208122 Log: A sandbox to work out changes to the IPv6 configuration UI until such time as agreement is reached on how to move forward with it. Added: - copied from r208121, head/etc/ Directory Properties: projects/etc_ipv6/ (props changed)