diff -rupN llvm-3.0.src/CMakeLists.txt llvm-3.0.src.cotire/CMakeLists.txt
--- llvm-3.0.src/CMakeLists.txt	2011-10-06 03:51:51.000000000 +0200
+++ llvm-3.0.src.cotire/CMakeLists.txt	2012-03-26 20:59:22.000000000 +0200
@@ -15,6 +15,7 @@ set(PACKAGE_VERSION "3.0")
 set_property(GLOBAL PROPERTY USE_FOLDERS ON)
 
 include(VersionFromVCS)
+include(cotire)
 
 option(LLVM_APPEND_VC_REV
   "Append the version control system revision id to LLVM version" OFF)
diff -rupN llvm-3.0.src/cmake/modules/AddLLVM.cmake llvm-3.0.src.cotire/cmake/modules/AddLLVM.cmake
--- llvm-3.0.src/cmake/modules/AddLLVM.cmake	2011-07-30 10:47:05.000000000 +0200
+++ llvm-3.0.src.cotire/cmake/modules/AddLLVM.cmake	2012-03-26 20:59:22.000000000 +0200
@@ -25,6 +25,9 @@ macro(add_llvm_library name)
       ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
   endif()
   set_target_properties(${name} PROPERTIES FOLDER "Libraries")
+  if (COMMAND cotire)
+      cotire(${name})
+  endif()
 endmacro(add_llvm_library name)
 
 macro(add_llvm_library_dependencies name)
@@ -69,6 +72,9 @@ ${name} ignored.")
 	LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
 	ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
     endif()
+    if (COMMAND cotire)
+       cotire(${name})
+    endif()
   endif()
 
   set_target_properties(${name} PROPERTIES FOLDER "Loadable modules")
@@ -89,6 +95,9 @@ macro(add_llvm_executable name)
     add_dependencies( ${name} ${LLVM_COMMON_DEPENDS} )
   endif( LLVM_COMMON_DEPENDS )
   link_system_libs( ${name} )
+  if (COMMAND cotire)
+      cotire(${name})
+  endif()
 endmacro(add_llvm_executable name)
 
 
diff -rupN llvm-3.0.src/lib/Analysis/CMakeLists.txt llvm-3.0.src.cotire/lib/Analysis/CMakeLists.txt
--- llvm-3.0.src/lib/Analysis/CMakeLists.txt	2011-07-29 02:14:25.000000000 +0200
+++ llvm-3.0.src.cotire/lib/Analysis/CMakeLists.txt	2012-03-26 20:59:36.000000000 +0200
@@ -1,3 +1,7 @@
+if (COMMAND cotire)
+	set_source_files_properties (ConstantFolding.cpp PROPERTIES COTIRE_EXCLUDED TRUE)
+endif()
+
 add_llvm_library(LLVMAnalysis
   AliasAnalysis.cpp
   AliasAnalysisCounter.cpp
diff -rupN llvm-3.0.src/lib/Support/CMakeLists.txt llvm-3.0.src.cotire/lib/Support/CMakeLists.txt
--- llvm-3.0.src/lib/Support/CMakeLists.txt	2011-09-13 21:42:16.000000000 +0200
+++ llvm-3.0.src.cotire/lib/Support/CMakeLists.txt	2012-03-26 20:59:22.000000000 +0200
@@ -4,6 +4,10 @@ if( MINGW )
   set(LLVM_REQUIRES_EH 1)
 endif()
 
+if (COMMAND cotire)
+	set_source_files_properties (IsInf.cpp IsNAN.cpp PROPERTIES COTIRE_EXCLUDED TRUE)
+endif()
+
 add_llvm_library(LLVMSupport
   APFloat.cpp
   APInt.cpp