On Mon, 10 Dec 2012 15:51:47 +0100, Landry Breuil wrote:
> On Mon, Dec 10, 2012 at 03:40:24PM +0100, Pascal Stumpf wrote:
> > On Mon, 10 Dec 2012 14:19:58 +0100, Landry Breuil wrote:
> > > Hi,
> > > 
> > > here's a preliminary diff to update devel/llvm to 3.2rc3, final release
> > > due soon. So far i've only built it on amd64, currently building on ppc.
> > > Tests reports on mips64*, sparc64 & ppc welcome. For mips64*, amend
> > > LLVM_ARCHS in arch-defines.mk. This release is supposed to bring
> > > improvements on ppc & mips.. see http://llvm.org/docs/ReleaseNotes.html
> > > for the details. The port has a patch adding support for stack smash
> > > handler (iirc from matthew@ ..)
> > 
> > From me, and the patch was already there, it just had to be updated to
> > work with newer LLVM.  Nice to know it still works though.
> 
> Sorry, failed the patch assignment :) I dont know if it 'works', i just
> know it applies. I've been building mozilla trunk on amd64 with that
> llvm version, and it seems to do a good job.

I've verified it works as expected.  There was just a problem with the
patch actually enabling SSP per default (ToolChains.h): Line numbers
shifted so that it actually enabled it on FreeBSD instead of OpenBSD.
But testing the updated patch below with something as big as mozilla
would be great.

This:

- corrects SSP enabling on OpenBSD
- switches to __guard_local
- turns off detection of libxml2; build breaks with it, not hard to fix,
  but I don't think the extra dep is worth it

Regenerating patches against stuff in tools/clang/* is a pain right now
because that is a symlink.  This is going to be fixed when the final
release comes out, right?

Index: Makefile
===================================================================
RCS file: /cvs/ports/devel/llvm/Makefile,v
retrieving revision 1.55
diff -u -p -r1.55 Makefile
--- Makefile    16 Oct 2012 18:22:30 -0000      1.55
+++ Makefile    10 Dec 2012 21:30:21 -0000
@@ -3,15 +3,15 @@
 # XXX: Remember to bump MODCLANG_VERSION in lang/clang/clang.port.mk when
 # updating this port.
 
-SHARED_LIBS +=  libclang                  0.0 # 3.0
+SHARED_LIBS +=  clang                  0.0 # 3.2
 
 COMMENT =      modular, fast C/C++/ObjC compiler, static analyzer and tools
 
-LLVM_V =       3.1
+LLVM_V =       3.2rc3
 DISTNAME =     llvm-${LLVM_V}.src
 PKGNAME =      llvm-${LLVM_V}
-REVISION =     9
 CATEGORIES =   devel
+EXTRACT_SUFX = .tar.bz2
 
 # packager notes in http://llvm.org/docs/Packaging.html
 HOMEPAGE =     http://www.llvm.org/
@@ -31,18 +31,16 @@ PERMIT_DISTFILES_FTP =      Yes
 
 WANTLIB =      c m pthread stdc++
 
-MASTER_SITES = http://llvm.org/releases/${LLVM_V}/
+MASTER_SITES = http://llvm.org/pre-releases/3.2/rc3/
 
 DISTFILES =    ${DISTNAME}${EXTRACT_SUFX} clang-${LLVM_V}.src${EXTRACT_SUFX}
-WRKDIST =      ${WRKDIR}/llvm-${LLVM_V}.src
-
-post-extract:
-       @mv ${WRKDIR}/clang-${LLVM_V}.src ${WRKDIST}/tools/clang
+WRKDIST =      ${WRKDIR}/llvm.src
 
 MODULES =      devel/cmake \
                lang/python
 
 REGRESS_DEPENDS = devel/dejagnu
+BUILD_DEPENGS +=       textproc/py-docutils
 
 MAKE_FLAGS =   OPTIMIZE_OPTION="${CFLAGS}" \
                VERBOSE=Yes \
@@ -56,9 +54,15 @@ USE_LIBTOOL =                Yes
 CONFIGURE_STYLE =      cmake
 CONFIGURE_ARGS =       -DLLVM_ENABLE_FFI:Bool=False \
                        -DLLVM_REQUIRES_RTTI:Bool=True \
-                       -DCMAKE_BUILD_TYPE:String=Release
+                       -DCMAKE_BUILD_TYPE:String=Release \
+                       -DCMAKE_DISABLE_FIND_PACKAGE_LibXml2:Bool=True
+
+# Workaround relocation overflow
+.if ${MACHINE_ARCH} == "powerpc"
+CONFIGURE_ARGS+=       -DCMAKE_EXE_LINKER_FLAGS=-Wl,--relax
+.endif
 
-CLANG_INCLUDE_PATH =   lib/clang/${LLVM_V}/include
+CLANG_INCLUDE_PATH =   lib/clang/3.2/include
 SUBST_VARS +=          CLANG_INCLUDE_PATH
 
 pre-configure:
@@ -66,9 +70,10 @@ pre-configure:
        -@ln -s ${MODPY_BIN} ${WRKDIR}/bin/python
 
 post-build:
-       cd ${WRKSRC}/docs/CommandGuide && for i in *.pod; do \
-       pod2man --release=CVS --center="LLVM Command Guide" \
-           $$i man/man1/$${i%.pod}.1; \
+       ${INSTALL_DATA_DIR} ${WRKSRC}/docs/CommandGuide/man/man1/
+       cd ${WRKSRC}/docs/CommandGuide && for i in *.rst; do \
+       rst2man -q --title="LLVM Command Guide" \
+           $$i man/man1/$${i%.rst}.1; \
        done
        pod2man --release=CVS --center="LLVM Command Guide" \
            ${WRKSRC}/tools/clang/docs/tools/clang.pod \
Index: distinfo
===================================================================
RCS file: /cvs/ports/devel/llvm/distinfo,v
retrieving revision 1.10
diff -u -p -r1.10 distinfo
--- distinfo    25 May 2012 09:05:49 -0000      1.10
+++ distinfo    10 Dec 2012 21:30:21 -0000
@@ -1,10 +1,4 @@
-MD5 (clang-3.1.src.tar.gz) = Wb8tMSCjgF8nyv2jgjyq+A==
-MD5 (llvm-3.1.src.tar.gz) = FuqnZ5+EET9lsSdg/f5O4Q==
-RMD160 (clang-3.1.src.tar.gz) = WuCdPWnU8eUOB/a/NHTaluaoT+s=
-RMD160 (llvm-3.1.src.tar.gz) = zrDvNqthCdp6hWiwTedZdS2+5ac=
-SHA1 (clang-3.1.src.tar.gz) = GfM7GHpQ0i/aKm+e2Ylpmpqe/WI=
-SHA1 (llvm-3.1.src.tar.gz) = I0yW5z74GuyaVNqS/CqQJNZTsFk=
-SHA256 (clang-3.1.src.tar.gz) = /2PiFdzT4oOP/eo4UC+NNbqxfkh/PDeZV5lh5FLVp4Y=
-SHA256 (llvm-3.1.src.tar.gz) = HqBRNRl7VADB+I0A/ygNd1znePj56gQuJaHh5zSkuas=
-SIZE (clang-3.1.src.tar.gz) = 8158418
-SIZE (llvm-3.1.src.tar.gz) = 11077429
+SHA256 (clang-3.2rc3.src.tar.bz2) = 
NdnyMoiLSTyJ+UraUMiy4T9jVt9xRSrNZq1QQzXMmew=
+SHA256 (llvm-3.2rc3.src.tar.bz2) = ISogBkL6D7Z8iFomSsH0AQu78TTr4hT0RgcuI1H6rxI=
+SIZE (clang-3.2rc3.src.tar.bz2) = 7010300
+SIZE (llvm-3.2rc3.src.tar.bz2) = 9357152
Index: patches/patch-CMakeLists_txt
===================================================================
RCS file: /cvs/ports/devel/llvm/patches/patch-CMakeLists_txt,v
retrieving revision 1.1
diff -u -p -r1.1 patch-CMakeLists_txt
--- patches/patch-CMakeLists_txt        16 Oct 2012 18:22:30 -0000      1.1
+++ patches/patch-CMakeLists_txt        10 Dec 2012 21:30:21 -0000
@@ -2,14 +2,14 @@ $OpenBSD: patch-CMakeLists_txt,v 1.1 201
 
 Don't confuse scripts who want the version with appended 'svn' goo.
 
---- CMakeLists.txt.orig        Tue Oct 16 11:08:28 2012
-+++ CMakeLists.txt     Tue Oct 16 11:08:41 2012
+--- CMakeLists.txt.orig        Fri Sep 28 19:35:20 2012
++++ CMakeLists.txt     Mon Dec 10 19:22:46 2012
 @@ -13,7 +13,7 @@ set(CMAKE_MODULE_PATH
  set(LLVM_VERSION_MAJOR 3)
- set(LLVM_VERSION_MINOR 1)
+ set(LLVM_VERSION_MINOR 2)
  
 -set(PACKAGE_VERSION "${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}svn")
 +set(PACKAGE_VERSION "${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}")
  
- set_property(GLOBAL PROPERTY USE_FOLDERS ON)
- 
+ option(LLVM_USE_FOLDERS "Enable solution folders in Visual Studio. Disable 
for Express versions." ON)
+ if ( LLVM_USE_FOLDERS )
Index: patches/patch-Makefile_config_in
===================================================================
RCS file: /cvs/ports/devel/llvm/patches/patch-Makefile_config_in,v
retrieving revision 1.6
diff -u -p -r1.6 patch-Makefile_config_in
--- patches/patch-Makefile_config_in    25 May 2012 09:05:49 -0000      1.6
+++ patches/patch-Makefile_config_in    10 Dec 2012 21:30:21 -0000
@@ -1,7 +1,7 @@
 $OpenBSD: patch-Makefile_config_in,v 1.6 2012/05/25 09:05:49 sthen Exp $
---- Makefile.config.in.orig    Tue May 15 23:06:08 2012
-+++ Makefile.config.in Wed May 23 01:38:47 2012
-@@ -96,11 +96,11 @@ endif
+--- Makefile.config.in.orig    Mon Oct  1 20:40:32 2012
++++ Makefile.config.in Sun Dec  9 22:09:00 2012
+@@ -97,11 +97,11 @@ endif
  PROJ_bindir     := $(PROJ_prefix)/bin
  PROJ_libdir     := $(PROJ_prefix)/lib
  PROJ_datadir    := $(PROJ_prefix)/share
Index: patches/patch-cmake_config-ix_cmake
===================================================================
RCS file: /cvs/ports/devel/llvm/patches/patch-cmake_config-ix_cmake,v
retrieving revision 1.2
diff -u -p -r1.2 patch-cmake_config-ix_cmake
--- patches/patch-cmake_config-ix_cmake 25 May 2012 09:05:49 -0000      1.2
+++ patches/patch-cmake_config-ix_cmake 10 Dec 2012 21:30:21 -0000
@@ -1,24 +0,0 @@
-$OpenBSD: patch-cmake_config-ix_cmake,v 1.2 2012/05/25 09:05:49 sthen Exp $
-
-Fix CMake check for pthread_mutex_lock
-
---- cmake/config-ix.cmake.orig Mon Mar 26 22:56:56 2012
-+++ cmake/config-ix.cmake      Wed May 23 01:38:47 2012
-@@ -87,6 +87,7 @@ if( NOT PURE_WINDOWS )
-   check_library_exists(pthread pthread_create "" HAVE_LIBPTHREAD)
-   check_library_exists(pthread pthread_getspecific "" 
HAVE_PTHREAD_GETSPECIFIC)
-   check_library_exists(pthread pthread_rwlock_init "" 
HAVE_PTHREAD_RWLOCK_INIT)
-+  check_library_exists(pthread pthread_mutex_lock "" HAVE_PTHREAD_MUTEX_LOCK)
-   check_library_exists(dl dlopen "" HAVE_LIBDL)
- endif()
- 
-@@ -133,9 +134,6 @@ check_symbol_exists(strchr string.h HAVE_STRCHR)
- check_symbol_exists(strcmp string.h HAVE_STRCMP)
- check_symbol_exists(strdup string.h HAVE_STRDUP)
- check_symbol_exists(strrchr string.h HAVE_STRRCHR)
--if( NOT PURE_WINDOWS )
--  check_symbol_exists(pthread_mutex_lock pthread.h HAVE_PTHREAD_MUTEX_LOCK)
--endif()
- check_symbol_exists(sbrk unistd.h HAVE_SBRK)
- check_symbol_exists(srand48 stdlib.h HAVE_RAND48_SRAND48)
- if( HAVE_RAND48_SRAND48 )
Index: patches/patch-lib_CodeGen_StackProtector_cpp
===================================================================
RCS file: /cvs/ports/devel/llvm/patches/patch-lib_CodeGen_StackProtector_cpp,v
retrieving revision 1.1
diff -u -p -r1.1 patch-lib_CodeGen_StackProtector_cpp
--- patches/patch-lib_CodeGen_StackProtector_cpp        4 Aug 2012 14:47:52 
-0000       1.1
+++ patches/patch-lib_CodeGen_StackProtector_cpp        10 Dec 2012 21:30:21 
-0000
@@ -1,31 +1,48 @@
-$OpenBSD: patch-lib_CodeGen_StackProtector_cpp,v 1.1 2012/08/04 14:47:52 
pascal Exp $
---- lib/CodeGen/StackProtector.cpp.orig        Wed Nov 23 08:13:56 2011
-+++ lib/CodeGen/StackProtector.cpp     Sun Jul 22 19:55:03 2012
-@@ -169,7 +169,7 @@ bool StackProtector::InsertStackProtectors() {
+$OpenBSD$
+--- lib/CodeGen/StackProtector.cpp.orig        Tue Oct  9 09:45:08 2012
++++ lib/CodeGen/StackProtector.cpp     Mon Dec 10 21:36:28 2012
+@@ -196,6 +196,9 @@ bool StackProtector::InsertStackProtectors() {
+ 
          StackGuardVar = ConstantExpr::getIntToPtr(OffsetVal,
                                        PointerType::get(PtrTy, AddressSpace));
++      } else if (Triple(TLI->getTargetMachine().getTargetTriple()).getOS() ==
++        llvm::Triple::OpenBSD) {
++        StackGuardVar = M->getOrInsertGlobal("__guard_local", PtrTy);
        } else {
--        StackGuardVar = M->getOrInsertGlobal("__stack_chk_guard", PtrTy); 
-+        StackGuardVar = M->getOrInsertGlobal("__guard", PtrTy); 
+         StackGuardVar = M->getOrInsertGlobal("__stack_chk_guard", PtrTy);
        }
- 
-       BasicBlock &Entry = F->getEntryBlock();
-@@ -247,9 +247,16 @@ BasicBlock *StackProtector::CreateFailBB() {
-   BasicBlock *FailBB = BasicBlock::Create(F->getContext(),
+@@ -272,12 +275,28 @@ bool StackProtector::InsertStackProtectors() {
+ /// CreateFailBB - Create a basic block to jump to when the stack protector
+ /// check fails.
+ BasicBlock *StackProtector::CreateFailBB() {
+-  BasicBlock *FailBB = BasicBlock::Create(F->getContext(),
++  LLVMContext &Context = F->getContext();
++  BasicBlock *FailBB = BasicBlock::Create(Context,
                                            "CallStackCheckFailBlk", F);
-   Constant *StackChkFail =
+-  Constant *StackChkFail =
 -    M->getOrInsertFunction("__stack_chk_fail",
-+    M->getOrInsertFunction("__stack_smash_handler",
-                            Type::getVoidTy(F->getContext()), NULL);
+-                           Type::getVoidTy(F->getContext()), NULL);
 -  CallInst::Create(StackChkFail, "", FailBB);
-+  Constant *G = new GlobalVariable(*M,
-+                      ArrayType::get(Type::getInt1Ty(F->getContext()),
-+                      F->getName().size() + 1),
-+                      true, GlobalVariable::PrivateLinkage, 
-+                      ConstantDataArray::getString(F->getContext(),
-+                              F->getName(), true),
-+                      "SSH", false, 0);
-+  CallInst::Create(StackChkFail, G, "", FailBB);
-   new UnreachableInst(F->getContext(), FailBB);
+-  new UnreachableInst(F->getContext(), FailBB);
++  if (Triple(TLI->getTargetMachine().getTargetTriple()).getOS() ==
++      llvm::Triple::OpenBSD) {
++    Constant *StackChkFail =
++      M->getOrInsertFunction("__stack_smash_handler",
++                            Type::getVoidTy(Context), 
Type::getInt8PtrTy(Context), NULL);
++    Constant *G = new GlobalVariable(*M,
++                        ArrayType::get(Type::getInt8Ty(Context),
++                        F->getName().size() + 1),
++                        true, GlobalVariable::PrivateLinkage,
++                        ConstantDataArray::getString(Context,
++                                F->getName(), true),
++                        "SSH");
++    CallInst::Create(StackChkFail, G, "", FailBB);
++  } else {
++    Constant *StackChkFail =
++      M->getOrInsertFunction("__stack_chk_fail",
++                             Type::getVoidTy(Context), NULL);
++    CallInst::Create(StackChkFail, "", FailBB);
++  }
++  new UnreachableInst(Context, FailBB);
    return FailBB;
  }
Index: patches/patch-tools_clang_lib_Basic_Targets_cpp
===================================================================
RCS file: 
/cvs/ports/devel/llvm/patches/patch-tools_clang_lib_Basic_Targets_cpp,v
retrieving revision 1.7
diff -u -p -r1.7 patch-tools_clang_lib_Basic_Targets_cpp
--- patches/patch-tools_clang_lib_Basic_Targets_cpp     8 Aug 2012 09:35:24 
-0000       1.7
+++ patches/patch-tools_clang_lib_Basic_Targets_cpp     10 Dec 2012 21:30:21 
-0000
@@ -1,70 +0,0 @@
-$OpenBSD: patch-tools_clang_lib_Basic_Targets_cpp,v 1.7 2012/08/08 09:35:24 
sthen Exp $
-
-- OpenBSD does not support TLS.
-- Provide target support for powerpc, arm, mips64, mips64el and sparc.
-
---- tools/clang/lib/Basic/Targets.cpp.orig     Wed Apr 25 19:26:22 2012
-+++ tools/clang/lib/Basic/Targets.cpp  Wed Aug  8 10:32:41 2012
-@@ -371,6 +371,7 @@ class OpenBSDTargetInfo : public OSTargetInfo<Target> 
-   OpenBSDTargetInfo(const std::string &triple)
-     : OSTargetInfo<Target>(triple) {
-       this->UserLabelPrefix = "";
-+      this->TLSSupported = false;
- 
-       llvm::Triple Triple(triple);
-       switch (Triple.getArch()) {
-@@ -727,7 +728,8 @@ void PPCTargetInfo::getTargetDefines(const LangOptions
-   }
- 
-   // Target properties.
--  if (getTriple().getOS() != llvm::Triple::NetBSD)
-+  if (getTriple().getOS() != llvm::Triple::NetBSD &&
-+      getTriple().getOS() != llvm::Triple::OpenBSD)
-     Builder.defineMacro("_BIG_ENDIAN");
-   Builder.defineMacro("__BIG_ENDIAN__");
- 
-@@ -3926,6 +3928,8 @@ static TargetInfo *AllocateTarget(const std::string &T
-       return new FreeBSDTargetInfo<ARMTargetInfo>(T);
-     case llvm::Triple::NetBSD:
-       return new NetBSDTargetInfo<ARMTargetInfo>(T);
-+    case llvm::Triple::OpenBSD:
-+      return new OpenBSDTargetInfo<ARMTargetInfo>(T);
-     case llvm::Triple::RTEMS:
-       return new RTEMSTargetInfo<ARMTargetInfo>(T);
-     default:
-@@ -3973,6 +3977,8 @@ static TargetInfo *AllocateTarget(const std::string &T
-       return new FreeBSDTargetInfo<Mips64EBTargetInfo>(T);
-     case llvm::Triple::NetBSD:
-       return new NetBSDTargetInfo<Mips64EBTargetInfo>(T);
-+    case llvm::Triple::OpenBSD:
-+      return new OpenBSDTargetInfo<Mips64EBTargetInfo>(T);
-     default:
-       return new Mips64EBTargetInfo(T);
-     }
-@@ -3987,6 +3993,8 @@ static TargetInfo *AllocateTarget(const std::string &T
-       return new FreeBSDTargetInfo<Mips64ELTargetInfo>(T);
-     case llvm::Triple::NetBSD:
-       return new NetBSDTargetInfo<Mips64ELTargetInfo>(T);
-+    case llvm::Triple::OpenBSD:
-+      return new OpenBSDTargetInfo<Mips64ELTargetInfo>(T);
-     default:
-       return new Mips64ELTargetInfo(T);
-     }
-@@ -4009,6 +4017,8 @@ static TargetInfo *AllocateTarget(const std::string &T
-       return new FreeBSDTargetInfo<PPC32TargetInfo>(T);
-     case llvm::Triple::NetBSD:
-       return new NetBSDTargetInfo<PPC32TargetInfo>(T);
-+    case llvm::Triple::OpenBSD:
-+      return new OpenBSDTargetInfo<PPC32TargetInfo>(T);
-     case llvm::Triple::RTEMS:
-       return new RTEMSTargetInfo<PPC32TargetInfo>(T);
-     default:
-@@ -4049,6 +4059,8 @@ static TargetInfo *AllocateTarget(const std::string &T
-       return new SolarisSparcV8TargetInfo(T);
-     case llvm::Triple::NetBSD:
-       return new NetBSDTargetInfo<SparcV8TargetInfo>(T);
-+    case llvm::Triple::OpenBSD:
-+      return new OpenBSDTargetInfo<SparcV8TargetInfo>(T);
-     case llvm::Triple::RTEMS:
-       return new RTEMSTargetInfo<SparcV8TargetInfo>(T);
-     default:
Index: patches/patch-tools_clang_lib_Driver_ToolChains_h
===================================================================
RCS file: 
/cvs/ports/devel/llvm/patches/patch-tools_clang_lib_Driver_ToolChains_h,v
retrieving revision 1.3
diff -u -p -r1.3 patch-tools_clang_lib_Driver_ToolChains_h
--- patches/patch-tools_clang_lib_Driver_ToolChains_h   4 Aug 2012 14:47:52 
-0000       1.3
+++ patches/patch-tools_clang_lib_Driver_ToolChains_h   10 Dec 2012 21:30:21 
-0000
@@ -1,7 +1,7 @@
 $OpenBSD: patch-tools_clang_lib_Driver_ToolChains_h,v 1.3 2012/08/04 14:47:52 
pascal Exp $
---- tools/clang/lib/Driver/ToolChains.h.orig   Sat Jul 28 12:56:00 2012
-+++ tools/clang/lib/Driver/ToolChains.h        Sat Jul 28 12:57:23 2012
-@@ -471,6 +471,10 @@ class LLVM_LIBRARY_VISIBILITY OpenBSD : public Generic
+--- tools/clang/lib/Driver/ToolChains.h.orig   Wed Nov 21 09:33:40 2012
++++ tools/clang/lib/Driver/ToolChains.h        Mon Dec 10 21:27:25 2012
+@@ -437,6 +437,10 @@ class LLVM_LIBRARY_VISIBILITY OpenBSD : public Generic
  
    virtual Tool &SelectTool(const Compilation &C, const JobAction &JA,
                             const ActionList &Inputs) const;
@@ -11,4 +11,4 @@ $OpenBSD: patch-tools_clang_lib_Driver_T
 +  }
  };
  
- class LLVM_LIBRARY_VISIBILITY FreeBSD : public Generic_ELF {
+ class LLVM_LIBRARY_VISIBILITY Bitrig : public Generic_ELF {
Index: patches/patch-tools_clang_lib_Driver_Tools_cpp
===================================================================
RCS file: /cvs/ports/devel/llvm/patches/patch-tools_clang_lib_Driver_Tools_cpp,v
retrieving revision 1.12
diff -u -p -r1.12 patch-tools_clang_lib_Driver_Tools_cpp
--- patches/patch-tools_clang_lib_Driver_Tools_cpp      31 Aug 2012 16:21:20 
-0000      1.12
+++ patches/patch-tools_clang_lib_Driver_Tools_cpp      10 Dec 2012 21:30:21 
-0000
@@ -1,7 +1,7 @@
 $OpenBSD: patch-tools_clang_lib_Driver_Tools_cpp,v 1.12 2012/08/31 16:21:20 
pascal Exp $
---- tools/clang/lib/Driver/Tools.cpp.orig      Wed Apr 18 23:32:25 2012
-+++ tools/clang/lib/Driver/Tools.cpp   Fri Aug 31 13:20:45 2012
-@@ -4601,6 +4601,9 @@ void openbsd::Link::ConstructJob(Compilation &C, const
+--- tools/clang/lib/Driver/Tools.cpp.orig      Wed Nov 21 08:56:23 2012
++++ tools/clang/lib/Driver/Tools.cpp   Mon Dec 10 19:22:58 2012
+@@ -5125,6 +5125,9 @@ void openbsd::Link::ConstructJob(Compilation &C, const
    const Driver &D = getToolChain().getDriver();
    ArgStringList CmdArgs;
  
@@ -11,28 +11,3 @@ $OpenBSD: patch-tools_clang_lib_Driver_T
    if ((!Args.hasArg(options::OPT_nostdlib)) &&
        (!Args.hasArg(options::OPT_shared))) {
      CmdArgs.push_back("-e");
-@@ -4672,14 +4675,21 @@ void openbsd::Link::ConstructJob(Compilation &C, const
-     // the default system libraries. Just mimic this for now.
-     CmdArgs.push_back("-lgcc");
- 
--    if (Args.hasArg(options::OPT_pthread))
--      CmdArgs.push_back("-lpthread");
-+    if (Args.hasArg(options::OPT_pthread)) {
-+      if (!Args.hasArg(options::OPT_shared) &&
-+          Args.hasArg(options::OPT_pg))
-+         CmdArgs.push_back("-lpthread_p");
-+      else
-+         CmdArgs.push_back("-lpthread");
-+    }
-+
-     if (!Args.hasArg(options::OPT_shared)) {
--      if (Args.hasArg(options::OPT_pg)) 
-+      if (Args.hasArg(options::OPT_pg))
-          CmdArgs.push_back("-lc_p");
-       else
-          CmdArgs.push_back("-lc");
-     }
-+
-     CmdArgs.push_back("-lgcc");
-   }
- 
Index: patches/patch-tools_clang_lib_Frontend_InitHeaderSearch_cpp
===================================================================
RCS file: 
/cvs/ports/devel/llvm/patches/patch-tools_clang_lib_Frontend_InitHeaderSearch_cpp,v
retrieving revision 1.4
diff -u -p -r1.4 patch-tools_clang_lib_Frontend_InitHeaderSearch_cpp
--- patches/patch-tools_clang_lib_Frontend_InitHeaderSearch_cpp 6 Aug 2012 
22:35:26 -0000       1.4
+++ patches/patch-tools_clang_lib_Frontend_InitHeaderSearch_cpp 10 Dec 2012 
21:30:21 -0000
@@ -1,14 +0,0 @@
-$OpenBSD: patch-tools_clang_lib_Frontend_InitHeaderSearch_cpp,v 1.4 2012/08/06 
22:35:26 sthen Exp $
-
-Only provide /usr/include in the default C header search path.
-
---- tools/clang/lib/Frontend/InitHeaderSearch.cpp.orig Wed Aug  1 23:49:24 2012
-+++ tools/clang/lib/Frontend/InitHeaderSearch.cpp      Wed Aug  1 23:49:57 2012
-@@ -210,6 +210,7 @@ void InitHeaderSearch::AddDefaultCIncludePaths(const l
-     switch (os) {
-     case llvm::Triple::FreeBSD:
-     case llvm::Triple::NetBSD:
-+    case llvm::Triple::OpenBSD:
-       break;
-     default:
-       // FIXME: temporary hack: hard-coded paths.
Index: patches/patch-tools_clang_tools_scan-build_scan-build
===================================================================
RCS file: 
/cvs/ports/devel/llvm/patches/patch-tools_clang_tools_scan-build_scan-build,v
retrieving revision 1.3
diff -u -p -r1.3 patch-tools_clang_tools_scan-build_scan-build
--- patches/patch-tools_clang_tools_scan-build_scan-build       14 Dec 2011 
22:58:23 -0000      1.3
+++ patches/patch-tools_clang_tools_scan-build_scan-build       10 Dec 2012 
21:30:21 -0000
@@ -1,7 +1,7 @@
 $OpenBSD: patch-tools_clang_tools_scan-build_scan-build,v 1.3 2011/12/14 
22:58:23 sthen Exp $
---- tools/clang/tools/scan-build/scan-build.orig       Mon Oct  3 13:19:50 2011
-+++ tools/clang/tools/scan-build/scan-build    Sun Oct 23 02:24:42 2011
-@@ -401,7 +401,7 @@ sub CopyFiles {
+--- tools/clang/tools/scan-build/scan-build.orig       Wed Sep  5 21:53:47 2012
++++ tools/clang/tools/scan-build/scan-build    Wed Sep  5 22:05:51 2012
+@@ -403,7 +403,7 @@ sub CopyFiles {
  
    my $Dir = shift;
  
@@ -10,7 +10,7 @@ $OpenBSD: patch-tools_clang_tools_scan-b
    
    DieDiag("Cannot find 'sorttable.js'.\n")
      if (! -r $JS);  
-@@ -411,7 +411,7 @@ sub CopyFiles {
+@@ -413,7 +413,7 @@ sub CopyFiles {
    DieDiag("Could not copy 'sorttable.js' to '$Dir'.\n")
      if (! -r "$Dir/sorttable.js");
      
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/devel/llvm/pkg/PLIST,v
retrieving revision 1.16
diff -u -p -r1.16 PLIST
--- pkg/PLIST   25 May 2012 09:05:49 -0000      1.16
+++ pkg/PLIST   10 Dec 2012 21:30:21 -0000
@@ -1,13 +1,12 @@
 @comment $OpenBSD: PLIST,v 1.16 2012/05/25 09:05:49 sthen Exp $
 @bin bin/bugpoint
 bin/c++-analyzer
-@bin bin/c-index-test
 bin/ccc-analyzer
 bin/clang
 bin/clang++
-@bin bin/clang-3.1
+@bin bin/clang-3.2
+@bin bin/clang-check
 @bin bin/clang-tblgen
-@bin bin/diagtool
 @bin bin/llc
 @bin bin/lli
 @bin bin/llvm-ar
@@ -19,10 +18,10 @@ bin/clang++
 @bin bin/llvm-dis
 @bin bin/llvm-dwarfdump
 @bin bin/llvm-extract
-@bin bin/llvm-ld
 @bin bin/llvm-link
 bin/llvm-lit
 @bin bin/llvm-mc
+@bin bin/llvm-mcmarkup
 @bin bin/llvm-nm
 @bin bin/llvm-objdump
 @bin bin/llvm-prof
@@ -31,14 +30,16 @@ bin/llvm-lit
 @bin bin/llvm-rtdyld
 @bin bin/llvm-size
 @bin bin/llvm-stress
-@bin bin/llvm-stub
 @bin bin/llvm-tblgen
 @bin bin/macho-dump
 @bin bin/opt
 bin/scan-build
 include/clang/
 include/clang-c/
+include/clang-c/CXCompilationDatabase.h
+include/clang-c/CXString.h
 include/clang-c/Index.h
+include/clang-c/Platform.h
 include/clang/ARCMigrate/
 include/clang/ARCMigrate/ARCMT.h
 include/clang/ARCMigrate/ARCMTActions.h
@@ -60,6 +61,18 @@ include/clang/AST/BuiltinTypes.def
 include/clang/AST/CXXInheritance.h
 include/clang/AST/CanonicalType.h
 include/clang/AST/CharUnits.h
+include/clang/AST/Comment.h
+include/clang/AST/CommentBriefParser.h
+include/clang/AST/CommentCommandInfo.inc
+include/clang/AST/CommentCommandTraits.h
+include/clang/AST/CommentDiagnostic.h
+include/clang/AST/CommentHTMLTags.inc
+include/clang/AST/CommentHTMLTagsProperties.inc
+include/clang/AST/CommentLexer.h
+include/clang/AST/CommentNodes.inc
+include/clang/AST/CommentParser.h
+include/clang/AST/CommentSema.h
+include/clang/AST/CommentVisitor.h
 include/clang/AST/Decl.h
 include/clang/AST/DeclAccessPair.h
 include/clang/AST/DeclBase.h
@@ -87,6 +100,7 @@ include/clang/AST/NestedNameSpecifier.h
 include/clang/AST/OperationKinds.h
 include/clang/AST/ParentMap.h
 include/clang/AST/PrettyPrinter.h
+include/clang/AST/RawCommentList.h
 include/clang/AST/RecordLayout.h
 include/clang/AST/RecursiveASTVisitor.h
 include/clang/AST/Redeclarable.h
@@ -110,6 +124,12 @@ include/clang/AST/TypeVisitor.h
 include/clang/AST/UnresolvedSet.h
 include/clang/AST/VTTBuilder.h
 include/clang/AST/VTableBuilder.h
+include/clang/ASTMatchers/
+include/clang/ASTMatchers/ASTMatchFinder.h
+include/clang/ASTMatchers/ASTMatchers.h
+include/clang/ASTMatchers/ASTMatchersInternal.h
+include/clang/ASTMatchers/ASTMatchersMacros.h
+include/clang/ASTMatchers/ASTTypeTraits.h
 include/clang/Analysis/
 include/clang/Analysis/Analyses/
 include/clang/Analysis/Analyses/CFGReachabilityAnalysis.h
@@ -128,6 +148,7 @@ include/clang/Analysis/CFGStmtMap.h
 include/clang/Analysis/CallGraph.h
 include/clang/Analysis/DomainSpecific/
 include/clang/Analysis/DomainSpecific/CocoaConventions.h
+include/clang/Analysis/DomainSpecific/ObjCNoReturn.h
 include/clang/Analysis/FlowSensitive/
 include/clang/Analysis/FlowSensitive/DataflowSolver.h
 include/clang/Analysis/FlowSensitive/DataflowValues.h
@@ -149,14 +170,16 @@ include/clang/Basic/Builtins.def
 include/clang/Basic/Builtins.h
 include/clang/Basic/BuiltinsARM.def
 include/clang/Basic/BuiltinsHexagon.def
+include/clang/Basic/BuiltinsMips.def
+include/clang/Basic/BuiltinsNVPTX.def
 include/clang/Basic/BuiltinsPPC.def
-include/clang/Basic/BuiltinsPTX.def
 include/clang/Basic/BuiltinsX86.def
 include/clang/Basic/ConvertUTF.h
 include/clang/Basic/Diagnostic.h
 include/clang/Basic/DiagnosticASTKinds.inc
 include/clang/Basic/DiagnosticAnalysisKinds.inc
 include/clang/Basic/DiagnosticCategories.h
+include/clang/Basic/DiagnosticCommentKinds.inc
 include/clang/Basic/DiagnosticCommonKinds.inc
 include/clang/Basic/DiagnosticDriverKinds.inc
 include/clang/Basic/DiagnosticFrontendKinds.inc
@@ -164,6 +187,8 @@ include/clang/Basic/DiagnosticGroups.inc
 include/clang/Basic/DiagnosticIDs.h
 include/clang/Basic/DiagnosticIndexName.inc
 include/clang/Basic/DiagnosticLexKinds.inc
+include/clang/Basic/DiagnosticOptions.def
+include/clang/Basic/DiagnosticOptions.h
 include/clang/Basic/DiagnosticParseKinds.inc
 include/clang/Basic/DiagnosticSemaKinds.inc
 include/clang/Basic/DiagnosticSerializationKinds.inc
@@ -180,6 +205,7 @@ include/clang/Basic/LangOptions.h
 include/clang/Basic/Linkage.h
 include/clang/Basic/MacroBuilder.h
 include/clang/Basic/Module.h
+include/clang/Basic/ObjCRuntime.h
 include/clang/Basic/OnDiskHashTable.h
 include/clang/Basic/OpenCL.h
 include/clang/Basic/OpenCLExtensions.def
@@ -187,6 +213,7 @@ include/clang/Basic/OperatorKinds.def
 include/clang/Basic/OperatorKinds.h
 include/clang/Basic/PartialDiagnostic.h
 include/clang/Basic/PrettyStackTrace.h
+include/clang/Basic/Sanitizers.def
 include/clang/Basic/SourceLocation.h
 include/clang/Basic/SourceManager.h
 include/clang/Basic/SourceManagerInternals.h
@@ -215,12 +242,10 @@ include/clang/Driver/ArgList.h
 include/clang/Driver/CC1AsOptions.h
 include/clang/Driver/CC1AsOptions.inc
 include/clang/Driver/CC1Options.h
-include/clang/Driver/CC1Options.inc
 include/clang/Driver/Compilation.h
 include/clang/Driver/Driver.h
 include/clang/Driver/DriverDiagnostic.h
 include/clang/Driver/Job.h
-include/clang/Driver/ObjCRuntime.h
 include/clang/Driver/OptSpecifier.h
 include/clang/Driver/OptTable.h
 include/clang/Driver/Option.h
@@ -241,30 +266,26 @@ include/clang/Edit/Rewriters.h
 include/clang/Frontend/
 include/clang/Frontend/ASTConsumers.h
 include/clang/Frontend/ASTUnit.h
-include/clang/Frontend/Analyses.def
-include/clang/Frontend/AnalyzerOptions.h
 include/clang/Frontend/ChainedDiagnosticConsumer.h
 include/clang/Frontend/ChainedIncludesSource.h
+include/clang/Frontend/CodeGenOptions.def
 include/clang/Frontend/CodeGenOptions.h
 include/clang/Frontend/CommandLineSourceLoc.h
 include/clang/Frontend/CompilerInstance.h
 include/clang/Frontend/CompilerInvocation.h
 include/clang/Frontend/DependencyOutputOptions.h
-include/clang/Frontend/DiagnosticOptions.h
 include/clang/Frontend/DiagnosticRenderer.h
 include/clang/Frontend/FrontendAction.h
 include/clang/Frontend/FrontendActions.h
 include/clang/Frontend/FrontendDiagnostic.h
 include/clang/Frontend/FrontendOptions.h
 include/clang/Frontend/FrontendPluginRegistry.h
-include/clang/Frontend/HeaderSearchOptions.h
 include/clang/Frontend/LangStandard.h
 include/clang/Frontend/LangStandards.def
 include/clang/Frontend/LayoutOverrideSource.h
 include/clang/Frontend/LogDiagnosticPrinter.h
 include/clang/Frontend/MigratorOptions.h
 include/clang/Frontend/MultiplexConsumer.h
-include/clang/Frontend/PreprocessorOptions.h
 include/clang/Frontend/PreprocessorOutputOptions.h
 include/clang/Frontend/SerializedDiagnosticPrinter.h
 include/clang/Frontend/TextDiagnostic.h
@@ -281,6 +302,7 @@ include/clang/Lex/DirectoryLookup.h
 include/clang/Lex/ExternalPreprocessorSource.h
 include/clang/Lex/HeaderMap.h
 include/clang/Lex/HeaderSearch.h
+include/clang/Lex/HeaderSearchOptions.h
 include/clang/Lex/LexDiagnostic.h
 include/clang/Lex/Lexer.h
 include/clang/Lex/LiteralSupport.h
@@ -289,12 +311,14 @@ include/clang/Lex/ModuleLoader.h
 include/clang/Lex/ModuleMap.h
 include/clang/Lex/MultipleIncludeOpt.h
 include/clang/Lex/PPCallbacks.h
+include/clang/Lex/PPMutationListener.h
 include/clang/Lex/PTHLexer.h
 include/clang/Lex/PTHManager.h
 include/clang/Lex/Pragma.h
 include/clang/Lex/PreprocessingRecord.h
 include/clang/Lex/Preprocessor.h
 include/clang/Lex/PreprocessorLexer.h
+include/clang/Lex/PreprocessorOptions.h
 include/clang/Lex/ScratchBuffer.h
 include/clang/Lex/Token.h
 include/clang/Lex/TokenConcatenation.h
@@ -305,15 +329,17 @@ include/clang/Parse/ParseAST.h
 include/clang/Parse/ParseDiagnostic.h
 include/clang/Parse/Parser.h
 include/clang/Rewrite/
-include/clang/Rewrite/ASTConsumers.h
-include/clang/Rewrite/DeltaTree.h
-include/clang/Rewrite/FixItRewriter.h
-include/clang/Rewrite/FrontendActions.h
-include/clang/Rewrite/HTMLRewrite.h
-include/clang/Rewrite/RewriteRope.h
-include/clang/Rewrite/Rewriter.h
-include/clang/Rewrite/Rewriters.h
-include/clang/Rewrite/TokenRewriter.h
+include/clang/Rewrite/Core/
+include/clang/Rewrite/Core/DeltaTree.h
+include/clang/Rewrite/Core/HTMLRewrite.h
+include/clang/Rewrite/Core/RewriteRope.h
+include/clang/Rewrite/Core/Rewriter.h
+include/clang/Rewrite/Core/TokenRewriter.h
+include/clang/Rewrite/Frontend/
+include/clang/Rewrite/Frontend/ASTConsumers.h
+include/clang/Rewrite/Frontend/FixItRewriter.h
+include/clang/Rewrite/Frontend/FrontendActions.h
+include/clang/Rewrite/Frontend/Rewriters.h
 include/clang/Sema/
 include/clang/Sema/AnalysisBasedWarnings.h
 include/clang/Sema/AttrParsedAttrKinds.inc
@@ -322,6 +348,7 @@ include/clang/Sema/AttrTemplateInstantia
 include/clang/Sema/AttributeList.h
 include/clang/Sema/CXXFieldCollector.h
 include/clang/Sema/CodeCompleteConsumer.h
+include/clang/Sema/CodeCompleteOptions.h
 include/clang/Sema/DeclSpec.h
 include/clang/Sema/DelayedDiagnostic.h
 include/clang/Sema/Designator.h
@@ -330,6 +357,7 @@ include/clang/Sema/IdentifierResolver.h
 include/clang/Sema/Initialization.h
 include/clang/Sema/LocInfoType.h
 include/clang/Sema/Lookup.h
+include/clang/Sema/MultiplexExternalSemaSource.h
 include/clang/Sema/ObjCMethodList.h
 include/clang/Sema/Overload.h
 include/clang/Sema/Ownership.h
@@ -361,9 +389,10 @@ include/clang/StaticAnalyzer/
 include/clang/StaticAnalyzer/Checkers/
 include/clang/StaticAnalyzer/Checkers/ClangCheckers.h
 include/clang/StaticAnalyzer/Checkers/CommonBugCategories.h
-include/clang/StaticAnalyzer/Checkers/DereferenceChecker.h
 include/clang/StaticAnalyzer/Checkers/LocalCheckers.h
 include/clang/StaticAnalyzer/Core/
+include/clang/StaticAnalyzer/Core/Analyses.def
+include/clang/StaticAnalyzer/Core/AnalyzerOptions.h
 include/clang/StaticAnalyzer/Core/BugReporter/
 include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
 include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitor.h
@@ -375,19 +404,21 @@ include/clang/StaticAnalyzer/Core/Checke
 include/clang/StaticAnalyzer/Core/CheckerRegistry.h
 include/clang/StaticAnalyzer/Core/PathDiagnosticConsumers.h
 include/clang/StaticAnalyzer/Core/PathSensitive/
+include/clang/StaticAnalyzer/Core/PathSensitive/APSIntType.h
 include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h
 include/clang/StaticAnalyzer/Core/PathSensitive/BasicValueFactory.h
 include/clang/StaticAnalyzer/Core/PathSensitive/BlockCounter.h
+include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h
 include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h
 include/clang/StaticAnalyzer/Core/PathSensitive/CheckerHelpers.h
 include/clang/StaticAnalyzer/Core/PathSensitive/ConstraintManager.h
 include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
+include/clang/StaticAnalyzer/Core/PathSensitive/DynamicTypeInfo.h
 include/clang/StaticAnalyzer/Core/PathSensitive/Environment.h
 include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
 include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
 include/clang/StaticAnalyzer/Core/PathSensitive/FunctionSummary.h
 include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h
-include/clang/StaticAnalyzer/Core/PathSensitive/ObjCMessage.h
 include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
 include/clang/StaticAnalyzer/Core/PathSensitive/ProgramStateTrait.h
 include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState_Fwd.h
@@ -405,7 +436,14 @@ include/clang/StaticAnalyzer/Frontend/
 include/clang/StaticAnalyzer/Frontend/CheckerRegistration.h
 include/clang/StaticAnalyzer/Frontend/FrontendActions.h
 include/clang/Tooling/
+include/clang/Tooling/ArgumentsAdjusters.h
+include/clang/Tooling/CommonOptionsParser.h
 include/clang/Tooling/CompilationDatabase.h
+include/clang/Tooling/CompilationDatabasePluginRegistry.h
+include/clang/Tooling/FileMatchTrie.h
+include/clang/Tooling/JSONCompilationDatabase.h
+include/clang/Tooling/Refactoring.h
+include/clang/Tooling/RefactoringCallbacks.h
 include/clang/Tooling/Tooling.h
 include/llvm/
 include/llvm-c/
@@ -418,6 +456,7 @@ include/llvm-c/EnhancedDisassembly.h
 include/llvm-c/ExecutionEngine.h
 include/llvm-c/Initialization.h
 include/llvm-c/LinkTimeOptimizer.h
+include/llvm-c/Linker.h
 include/llvm-c/Object.h
 include/llvm-c/Target.h
 include/llvm-c/TargetMachine.h
@@ -452,6 +491,7 @@ include/llvm/ADT/IndexedMap.h
 include/llvm/ADT/IntEqClasses.h
 include/llvm/ADT/IntervalMap.h
 include/llvm/ADT/IntrusiveRefCntPtr.h
+include/llvm/ADT/MapVector.h
 include/llvm/ADT/NullablePtr.h
 include/llvm/ADT/Optional.h
 include/llvm/ADT/OwningPtr.h
@@ -479,7 +519,6 @@ include/llvm/ADT/StringRef.h
 include/llvm/ADT/StringSet.h
 include/llvm/ADT/StringSwitch.h
 include/llvm/ADT/TinyPtrVector.h
-include/llvm/ADT/Trie.h
 include/llvm/ADT/Triple.h
 include/llvm/ADT/Twine.h
 include/llvm/ADT/UniqueVector.h
@@ -488,6 +527,7 @@ include/llvm/ADT/VariadicFunction.h
 include/llvm/ADT/edit_distance.h
 include/llvm/ADT/ilist.h
 include/llvm/ADT/ilist_node.h
+include/llvm/AddressingMode.h
 include/llvm/Analysis/
 include/llvm/Analysis/AliasAnalysis.h
 include/llvm/Analysis/AliasSetTracker.h
@@ -500,9 +540,8 @@ include/llvm/Analysis/CaptureTracking.h
 include/llvm/Analysis/CodeMetrics.h
 include/llvm/Analysis/ConstantFolding.h
 include/llvm/Analysis/ConstantsScanner.h
-include/llvm/Analysis/DIBuilder.h
 include/llvm/Analysis/DOTGraphTraitsPass.h
-include/llvm/Analysis/DebugInfo.h
+include/llvm/Analysis/DependenceAnalysis.h
 include/llvm/Analysis/DomPrinter.h
 include/llvm/Analysis/DominanceFrontier.h
 include/llvm/Analysis/DominatorInternals.h
@@ -519,8 +558,8 @@ include/llvm/Analysis/LibCallAliasAnalys
 include/llvm/Analysis/LibCallSemantics.h
 include/llvm/Analysis/Lint.h
 include/llvm/Analysis/Loads.h
-include/llvm/Analysis/LoopDependenceAnalysis.h
 include/llvm/Analysis/LoopInfo.h
+include/llvm/Analysis/LoopInfoImpl.h
 include/llvm/Analysis/LoopIterator.h
 include/llvm/Analysis/LoopPass.h
 include/llvm/Analysis/MemoryBuiltins.h
@@ -530,6 +569,8 @@ include/llvm/Analysis/Passes.h
 include/llvm/Analysis/PathNumbering.h
 include/llvm/Analysis/PathProfileInfo.h
 include/llvm/Analysis/PostDominators.h
+include/llvm/Analysis/ProfileDataLoader.h
+include/llvm/Analysis/ProfileDataTypes.h
 include/llvm/Analysis/ProfileInfo.h
 include/llvm/Analysis/ProfileInfoLoader.h
 include/llvm/Analysis/ProfileInfoTypes.h
@@ -568,6 +609,7 @@ include/llvm/CodeGen/Analysis.h
 include/llvm/CodeGen/AsmPrinter.h
 include/llvm/CodeGen/CalcSpillWeights.h
 include/llvm/CodeGen/CallingConvLower.h
+include/llvm/CodeGen/CommandFlags.h
 include/llvm/CodeGen/DFAPacketizer.h
 include/llvm/CodeGen/EdgeBundles.h
 include/llvm/CodeGen/FastISel.h
@@ -611,6 +653,7 @@ include/llvm/CodeGen/MachineModuleInfo.h
 include/llvm/CodeGen/MachineModuleInfoImpls.h
 include/llvm/CodeGen/MachineOperand.h
 include/llvm/CodeGen/MachinePassRegistry.h
+include/llvm/CodeGen/MachinePostDominators.h
 include/llvm/CodeGen/MachineRegisterInfo.h
 include/llvm/CodeGen/MachineRelocation.h
 include/llvm/CodeGen/MachineSSAUpdater.h
@@ -624,14 +667,16 @@ include/llvm/CodeGen/PBQP/Heuristics/Bri
 include/llvm/CodeGen/PBQP/Math.h
 include/llvm/CodeGen/PBQP/Solution.h
 include/llvm/CodeGen/Passes.h
-include/llvm/CodeGen/ProcessImplicitDefs.h
 include/llvm/CodeGen/PseudoSourceValue.h
 include/llvm/CodeGen/RegAllocPBQP.h
 include/llvm/CodeGen/RegAllocRegistry.h
+include/llvm/CodeGen/RegisterClassInfo.h
+include/llvm/CodeGen/RegisterPressure.h
 include/llvm/CodeGen/RegisterScavenging.h
 include/llvm/CodeGen/ResourcePriorityQueue.h
 include/llvm/CodeGen/RuntimeLibcalls.h
 include/llvm/CodeGen/ScheduleDAG.h
+include/llvm/CodeGen/ScheduleDAGILP.h
 include/llvm/CodeGen/ScheduleDAGInstrs.h
 include/llvm/CodeGen/ScheduleHazardRecognizer.h
 include/llvm/CodeGen/SchedulerRegistry.h
@@ -641,6 +686,7 @@ include/llvm/CodeGen/SelectionDAGISel.h
 include/llvm/CodeGen/SelectionDAGNodes.h
 include/llvm/CodeGen/SlotIndexes.h
 include/llvm/CodeGen/TargetLoweringObjectFileImpl.h
+include/llvm/CodeGen/TargetSchedule.h
 include/llvm/CodeGen/ValueTypes.h
 include/llvm/CodeGen/ValueTypes.td
 include/llvm/Config/
@@ -652,26 +698,31 @@ include/llvm/Config/config.h
 include/llvm/Config/llvm-config.h
 include/llvm/Constant.h
 include/llvm/Constants.h
+include/llvm/DIBuilder.h
+include/llvm/DataLayout.h
 include/llvm/DebugInfo/
+include/llvm/DebugInfo.h
 include/llvm/DebugInfo/DIContext.h
 include/llvm/DefaultPasses.h
 include/llvm/DerivedTypes.h
 include/llvm/ExecutionEngine/
 include/llvm/ExecutionEngine/ExecutionEngine.h
 include/llvm/ExecutionEngine/GenericValue.h
-include/llvm/ExecutionEngine/IntelJITEventsWrapper.h
 include/llvm/ExecutionEngine/Interpreter.h
 include/llvm/ExecutionEngine/JIT.h
 include/llvm/ExecutionEngine/JITEventListener.h
 include/llvm/ExecutionEngine/JITMemoryManager.h
 include/llvm/ExecutionEngine/MCJIT.h
 include/llvm/ExecutionEngine/OProfileWrapper.h
+include/llvm/ExecutionEngine/ObjectBuffer.h
+include/llvm/ExecutionEngine/ObjectImage.h
 include/llvm/ExecutionEngine/RuntimeDyld.h
 include/llvm/Function.h
 include/llvm/GVMaterializer.h
 include/llvm/GlobalAlias.h
 include/llvm/GlobalValue.h
 include/llvm/GlobalVariable.h
+include/llvm/IRBuilder.h
 include/llvm/InitializePasses.h
 include/llvm/InlineAsm.h
 include/llvm/InstrTypes.h
@@ -685,7 +736,8 @@ include/llvm/Intrinsics.td
 include/llvm/IntrinsicsARM.td
 include/llvm/IntrinsicsCellSPU.td
 include/llvm/IntrinsicsHexagon.td
-include/llvm/IntrinsicsPTX.td
+include/llvm/IntrinsicsMips.td
+include/llvm/IntrinsicsNVVM.td
 include/llvm/IntrinsicsPowerPC.td
 include/llvm/IntrinsicsX86.td
 include/llvm/IntrinsicsXCore.td
@@ -711,6 +763,7 @@ include/llvm/MC/MCDwarf.h
 include/llvm/MC/MCELFObjectWriter.h
 include/llvm/MC/MCELFSymbolFlags.h
 include/llvm/MC/MCExpr.h
+include/llvm/MC/MCFixedLenDisassembler.h
 include/llvm/MC/MCFixup.h
 include/llvm/MC/MCFixupKindInfo.h
 include/llvm/MC/MCInst.h
@@ -734,6 +787,7 @@ include/llvm/MC/MCParser/MCAsmParser.h
 include/llvm/MC/MCParser/MCAsmParserExtension.h
 include/llvm/MC/MCParser/MCParsedAsmOperand.h
 include/llvm/MC/MCRegisterInfo.h
+include/llvm/MC/MCSchedule.h
 include/llvm/MC/MCSection.h
 include/llvm/MC/MCSectionCOFF.h
 include/llvm/MC/MCSectionELF.h
@@ -749,6 +803,7 @@ include/llvm/MC/MCWinCOFFObjectWriter.h
 include/llvm/MC/MachineLocation.h
 include/llvm/MC/SectionKind.h
 include/llvm/MC/SubtargetFeature.h
+include/llvm/MDBuilder.h
 include/llvm/Metadata.h
 include/llvm/Module.h
 include/llvm/Object/
@@ -761,6 +816,7 @@ include/llvm/Object/MachO.h
 include/llvm/Object/MachOFormat.h
 include/llvm/Object/MachOObject.h
 include/llvm/Object/ObjectFile.h
+include/llvm/Object/RelocVisitor.h
 include/llvm/OperandTraits.h
 include/llvm/Operator.h
 include/llvm/Pass.h
@@ -802,6 +858,7 @@ include/llvm/Support/Endian.h
 include/llvm/Support/Errno.h
 include/llvm/Support/ErrorHandling.h
 include/llvm/Support/FEnv.h
+include/llvm/Support/FileOutputBuffer.h
 include/llvm/Support/FileSystem.h
 include/llvm/Support/FileUtilities.h
 include/llvm/Support/Format.h
@@ -810,16 +867,17 @@ include/llvm/Support/GCOV.h
 include/llvm/Support/GetElementPtrTypeIterator.h
 include/llvm/Support/GraphWriter.h
 include/llvm/Support/Host.h
-include/llvm/Support/IRBuilder.h
 include/llvm/Support/IRReader.h
 include/llvm/Support/IncludeFile.h
 include/llvm/Support/InstIterator.h
 include/llvm/Support/InstVisitor.h
+include/llvm/Support/IntegersSubset.h
+include/llvm/Support/IntegersSubsetMapping.h
+include/llvm/Support/LEB128.h
 include/llvm/Support/LICENSE.TXT
 include/llvm/Support/LeakDetector.h
 include/llvm/Support/Locale.h
 include/llvm/Support/LockFileManager.h
-include/llvm/Support/MDBuilder.h
 include/llvm/Support/MachO.h
 include/llvm/Support/ManagedStatic.h
 include/llvm/Support/MathExtras.h
@@ -864,7 +922,6 @@ include/llvm/Support/Threading.h
 include/llvm/Support/TimeValue.h
 include/llvm/Support/Timer.h
 include/llvm/Support/ToolOutputFile.h
-include/llvm/Support/TypeBuilder.h
 include/llvm/Support/Valgrind.h
 include/llvm/Support/ValueHandle.h
 include/llvm/Support/Win64EH.h
@@ -879,18 +936,17 @@ include/llvm/TableGen/
 include/llvm/TableGen/Error.h
 include/llvm/TableGen/Main.h
 include/llvm/TableGen/Record.h
-include/llvm/TableGen/TableGenAction.h
+include/llvm/TableGen/StringMatcher.h
 include/llvm/TableGen/TableGenBackend.h
 include/llvm/Target/
 include/llvm/Target/Mangler.h
 include/llvm/Target/Target.td
 include/llvm/Target/TargetCallingConv.h
 include/llvm/Target/TargetCallingConv.td
-include/llvm/Target/TargetData.h
-include/llvm/Target/TargetELFWriterInfo.h
 include/llvm/Target/TargetFrameLowering.h
 include/llvm/Target/TargetInstrInfo.h
 include/llvm/Target/TargetIntrinsicInfo.h
+include/llvm/Target/TargetItinerary.td
 include/llvm/Target/TargetJITInfo.h
 include/llvm/Target/TargetLibraryInfo.h
 include/llvm/Target/TargetLowering.h
@@ -903,6 +959,8 @@ include/llvm/Target/TargetSchedule.td
 include/llvm/Target/TargetSelectionDAG.td
 include/llvm/Target/TargetSelectionDAGInfo.h
 include/llvm/Target/TargetSubtargetInfo.h
+include/llvm/Target/TargetTransformImpl.h
+include/llvm/TargetTransformInfo.h
 include/llvm/Transforms/
 include/llvm/Transforms/IPO/
 include/llvm/Transforms/IPO.h
@@ -914,32 +972,38 @@ include/llvm/Transforms/Utils/
 include/llvm/Transforms/Utils/AddrModeMatcher.h
 include/llvm/Transforms/Utils/BasicBlockUtils.h
 include/llvm/Transforms/Utils/BuildLibCalls.h
+include/llvm/Transforms/Utils/BypassSlowDivision.h
 include/llvm/Transforms/Utils/Cloning.h
 include/llvm/Transforms/Utils/CmpInstAnalysis.h
-include/llvm/Transforms/Utils/FunctionUtils.h
+include/llvm/Transforms/Utils/CodeExtractor.h
+include/llvm/Transforms/Utils/IntegerDivision.h
 include/llvm/Transforms/Utils/Local.h
 include/llvm/Transforms/Utils/ModuleUtils.h
 include/llvm/Transforms/Utils/PromoteMemToReg.h
 include/llvm/Transforms/Utils/SSAUpdater.h
 include/llvm/Transforms/Utils/SSAUpdaterImpl.h
 include/llvm/Transforms/Utils/SimplifyIndVar.h
+include/llvm/Transforms/Utils/SimplifyLibCalls.h
 include/llvm/Transforms/Utils/UnifyFunctionExitNodes.h
 include/llvm/Transforms/Utils/UnrollLoop.h
 include/llvm/Transforms/Utils/ValueMapper.h
 include/llvm/Transforms/Vectorize.h
 include/llvm/Type.h
+include/llvm/TypeBuilder.h
+include/llvm/TypeFinder.h
 include/llvm/Use.h
 include/llvm/User.h
 include/llvm/Value.h
 include/llvm/ValueSymbolTable.h
 lib/BugpointPasses.so
 lib/LLVMHello.so
-lib/PrintFunctionNames.so
-lib/SampleAnalyzerPlugin.so
 lib/clang/
-lib/clang/3.1/
+lib/clang/3.2/
 ${CLANG_INCLUDE_PATH}/
+${CLANG_INCLUDE_PATH}/__wmmintrin_aes.h
+${CLANG_INCLUDE_PATH}/__wmmintrin_pclmul.h
 ${CLANG_INCLUDE_PATH}/altivec.h
+${CLANG_INCLUDE_PATH}/ammintrin.h
 ${CLANG_INCLUDE_PATH}/arm_neon.h
 ${CLANG_INCLUDE_PATH}/avx2intrin.h
 ${CLANG_INCLUDE_PATH}/avxintrin.h
@@ -947,8 +1011,10 @@ ${CLANG_INCLUDE_PATH}/bmi2intrin.h
 ${CLANG_INCLUDE_PATH}/bmiintrin.h
 ${CLANG_INCLUDE_PATH}/cpuid.h
 ${CLANG_INCLUDE_PATH}/emmintrin.h
+${CLANG_INCLUDE_PATH}/f16cintrin.h
 ${CLANG_INCLUDE_PATH}/float.h
 ${CLANG_INCLUDE_PATH}/fma4intrin.h
+${CLANG_INCLUDE_PATH}/fmaintrin.h
 ${CLANG_INCLUDE_PATH}/immintrin.h
 ${CLANG_INCLUDE_PATH}/iso646.h
 ${CLANG_INCLUDE_PATH}/limits.h
@@ -960,6 +1026,7 @@ ${CLANG_INCLUDE_PATH}/module.map
 ${CLANG_INCLUDE_PATH}/nmmintrin.h
 ${CLANG_INCLUDE_PATH}/pmmintrin.h
 ${CLANG_INCLUDE_PATH}/popcntintrin.h
+${CLANG_INCLUDE_PATH}/rtmintrin.h
 ${CLANG_INCLUDE_PATH}/smmintrin.h
 ${CLANG_INCLUDE_PATH}/stdalign.h
 ${CLANG_INCLUDE_PATH}/stdarg.h
@@ -973,6 +1040,7 @@ ${CLANG_INCLUDE_PATH}/varargs.h
 ${CLANG_INCLUDE_PATH}/wmmintrin.h
 ${CLANG_INCLUDE_PATH}/x86intrin.h
 ${CLANG_INCLUDE_PATH}/xmmintrin.h
+${CLANG_INCLUDE_PATH}/xopintrin.h
 lib/libLLVMARMAsmParser.a
 lib/libLLVMARMAsmPrinter.a
 lib/libLLVMARMCodeGen.a
@@ -1023,11 +1091,11 @@ lib/libLLVMMipsCodeGen.a
 lib/libLLVMMipsDesc.a
 lib/libLLVMMipsDisassembler.a
 lib/libLLVMMipsInfo.a
+lib/libLLVMNVPTXAsmPrinter.a
+lib/libLLVMNVPTXCodeGen.a
+lib/libLLVMNVPTXDesc.a
+lib/libLLVMNVPTXInfo.a
 lib/libLLVMObject.a
-lib/libLLVMPTXAsmPrinter.a
-lib/libLLVMPTXCodeGen.a
-lib/libLLVMPTXDesc.a
-lib/libLLVMPTXInfo.a
 lib/libLLVMPowerPCAsmPrinter.a
 lib/libLLVMPowerPCCodeGen.a
 lib/libLLVMPowerPCDesc.a
@@ -1057,8 +1125,11 @@ lib/libLLVMipa.a
 lib/libLLVMipo.a
 lib/libLTO.a
 lib/libLTO.so
+lib/libclang.a
+@lib lib/libclang.so.${LIBclang_VERSION}
 lib/libclangARCMigrate.a
 lib/libclangAST.a
+lib/libclangASTMatchers.a
 lib/libclangAnalysis.a
 lib/libclangBasic.a
 lib/libclangCodeGen.a
@@ -1068,7 +1139,8 @@ lib/libclangFrontend.a
 lib/libclangFrontendTool.a
 lib/libclangLex.a
 lib/libclangParse.a
-lib/libclangRewrite.a
+lib/libclangRewriteCore.a
+lib/libclangRewriteFrontend.a
 lib/libclangSema.a
 lib/libclangSerialization.a
 lib/libclangStaticAnalyzerCheckers.a
@@ -1077,32 +1149,25 @@ lib/libclangStaticAnalyzerFrontend.a
 lib/libclangTooling.a
 @comment lib/libgtest.a
 @comment lib/libgtest_main.a
-lib/liblibclang.a
-@lib lib/liblibclang.so.${LIBlibclang_VERSION}
 lib/libprofile_rt.a
-lib/profile_rt.so
-@comment @man man/man1/FileCheck.1
-@man man/man1/bugpoint.1
+lib/libprofile_rt.so
 @man man/man1/clang.1
+@man man/man1/index.1
 @man man/man1/lit.1
 @man man/man1/llc.1
-@man man/man1/lli.1
 @man man/man1/llvm-ar.1
 @man man/man1/llvm-as.1
 @man man/man1/llvm-bcanalyzer.1
 @man man/man1/llvm-build.1
-@man man/man1/llvm-config.1
 @man man/man1/llvm-cov.1
 @man man/man1/llvm-diff.1
 @man man/man1/llvm-dis.1
 @man man/man1/llvm-extract.1
-@man man/man1/llvm-ld.1
 @man man/man1/llvm-link.1
 @man man/man1/llvm-nm.1
 @man man/man1/llvm-prof.1
 @man man/man1/llvm-ranlib.1
 @man man/man1/llvm-stress.1
-@man man/man1/opt.1
 @man man/man1/tblgen.1
 share/llvm/
 share/llvm/cmake/

Reply via email to