diff --git a/cbits/extra.cpp b/cbits/extra.cpp
--- a/cbits/extra.cpp
+++ b/cbits/extra.cpp
@@ -515,7 +515,6 @@
 define_pass( AliasAnalysisCounter )
 define_pass( AlwaysInliner )
 define_pass( BasicAliasAnalysis )
-define_pass( BlockPlacement )
 define_pass( BreakCriticalEdges )
 define_pass( CodeGenPrepare )
 define_pass( DeadCodeElimination )
@@ -525,7 +524,6 @@
 define_pass( DomOnlyViewer )
 define_pass( DomPrinter )
 define_pass( DomViewer )
-define_pass( EdgeProfiler )
 define_pass( GlobalsModRef )
 define_pass( InstCount )
 define_pass( InstructionNamer )
@@ -537,16 +535,11 @@
 define_pass( LowerSwitch )
 define_pass( MergeFunctions )
 define_pass( NoAA )
-define_pass( NoProfileInfo )
-define_pass( OptimalEdgeProfiler )
 define_pass( PartialInlining )
 define_pass( PostDomOnlyPrinter )
 define_pass( PostDomOnlyViewer )
 define_pass( PostDomPrinter )
 define_pass( PostDomViewer )
-define_pass( ProfileEstimator )
-define_pass( ProfileLoader )
-define_pass( ProfileVerifier )
 define_pass( ScalarEvolutionAliasAnalysis )
 define_pass( SingleLoopExtractor )
 define_pass( StripNonDebugSymbols )
diff --git a/cbits/support.cpp b/cbits/support.cpp
--- a/cbits/support.cpp
+++ b/cbits/support.cpp
@@ -49,7 +49,9 @@
   Builder.OptLevel = OptLevel;
   Builder.SizeLevel = OptimizeSize;
   Builder.DisableUnrollLoops = !UnrollLoops;
+#if HS_LLVM_VERSION < 304
   Builder.DisableSimplifyLibCalls = !SimplifyLibCalls;
+#endif
   Builder.DisableUnitAtATime = !UnitAtATime;
     
   Pass *InliningPass = 0;
diff --git a/llvm-ffi.cabal b/llvm-ffi.cabal
--- a/llvm-ffi.cabal
+++ b/llvm-ffi.cabal
@@ -1,5 +1,5 @@
 Name:          llvm-ffi
-Version:       3.3.0
+Version:       3.4.0
 License:       BSD3
 License-File:  LICENSE
 Synopsis:      FFI bindings to the LLVM compiler toolkit.
@@ -15,7 +15,7 @@
   using the @llvm-pkg-config@ package.
   .
   We try to stay up to date with LLVM releases.
-  The current version of this package is compatible with LLVM 3.3.
+  The current version of this package is compatible with LLVM 3.4.
   Please understand that the package may or may not work
   against older LLVM releases.
   We don't have the time or resources to test across multiple releases.
@@ -44,7 +44,7 @@
   Default: False
 
 Flag specificPkgConfig
-  Description: use llvm-3.3.pc instead of llvm.pc
+  Description: use llvm-3.4.pc instead of llvm.pc
   Default: True
 
 Source-Repository head
@@ -52,7 +52,7 @@
   Location: http://hub.darcs.net/thielema/llvm-ffi/
 
 Source-Repository this
-  Tag:      3.3.0
+  Tag:      3.4.0
   Type:     darcs
   Location: http://hub.darcs.net/thielema/llvm-ffi/
 
@@ -91,11 +91,11 @@
       LLVM.Target.XCore
 
   If flag(specificPkgConfig)
-    PkgConfig-Depends: llvm-3.3 == 3.3
+    PkgConfig-Depends: llvm-3.4 == 3.4
   Else
-    PkgConfig-Depends: llvm == 3.3
-  CC-Options: -DHS_LLVM_VERSION=303 -DHAVE_LLVM_SUPPORT_DYNAMICLIBRARY_H=1
-  CPP-Options: -DHS_LLVM_VERSION=303
+    PkgConfig-Depends: llvm == 3.4
+  CC-Options: -DHS_LLVM_VERSION=304 -DHAVE_LLVM_SUPPORT_DYNAMICLIBRARY_H=1
+  CPP-Options: -DHS_LLVM_VERSION=304
   CPP-Options: -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS
   Include-Dirs: include
   C-Sources:
