diff --git a/splice.cabal b/splice.cabal
--- a/splice.cabal
+++ b/splice.cabal
@@ -1,57 +1,65 @@
 name:          splice
-version:       0.6
+version:       0.6.0.2
 stability:     stable on all operating systems
 synopsis:      Cross-platform Socket to Socket Data Splicing
 description:   A library that implements most efficient socket to socket
-               data transfer loops for proxy servers on each operating system.
+               data transfer loops for proxy servers on all operating systems.
                .
-               On GNU/Linux, it uses and exposes the zero-copy @splice()@ system
-               call: <http://kerneltrap.org/node/6505>.
+               On GNU/Linux, it uses the zero-copy @splice()@ system
+               call (<http://kerneltrap.org/node/6505>) and exports it as
+               @c_splice@ in @System.IO.Splice.Linux@.
                .
-               On other operating systems, it falls back to a portable Haskell
+               On other operating systems, it uses a portable Haskell
                implementation.
                .
-               [Framework]
-               This work is funded by Corsis Research
-               (<http://corsis.eu>) for the development of
-               PortFusion \]-\[ayabusa (はやぶさ) (Hayabusa) – German-Japanese
-               joint research project for building the simplest and most concise
+               [Legal]
+               This work is undertaken by Corsis Research for the development of
+               PortFusion \]-\[ayabusa (はやぶさ) (Hayabusa) 
+               (<https://fusion.corsis.eu>) – German-Japanese joint research
+               project for building the simplest and most concise
                high-performance distributed reverse / forward proxy application
-               possible on commodity hardware and operating systems
-               (<https://sourceforge.net/p/portfusion/wiki/RoadMap/>).
+               possible on commodity hardware and operating systems.
+copyright:     Copyright © 2012 Cetin Sert
 license:       BSD3
 license-file:  LICENSE
 author:        Cetin Sert <fusion@corsis.eu>
 maintainer:    Cetin Sert <fusion@corsis.eu>
 homepage:      http://corsis.github.com/splice/
+bug-reports:   http://github.com/corsis/splice/issues
 category:      System, Network
 build-type:    Simple
-cabal-version: >=1.2
-copyright:     Copyright © 2012 Cetin Sert
-tested-with:   GHC >= 7.0
+cabal-version: >=1.6
 
 
+source-repository head
+    type:      git
+    location:  git://github.com/corsis/splice.git
+
+
 flag portable
     description: force portable 'splice' implementation on GNU\/Linux
     default    : False
 
 
-library
+flag llvm
+    description: compile via LLVM
+    default    : False
 
-    hs-source-dirs:  src
 
-    exposed-modules: Network.Socket.Splice
-    other-modules:   Network.Socket.Splice.Internal
+library
+    hs-source-dirs:      src
+    exposed-modules:     Network.Socket.Splice
+    other-modules:       Network.Socket.Splice.Internal
+    build-depends:       base    >= 4 && <= 6,
+                         network >= 2 && <= 4
 
     if os(linux) && !flag(portable)
-      exposed-modules: System.IO.Splice.Linux
-      build-depends: base    >= 4 && <= 6,
-                     network >= 2 && <= 4,
-                     unix    >= 2 && <= 4
-      cpp-options: -DLINUX_SPLICE
-      ghc-options: -Wall -O2 -O3 -fllvm -optlo-O3
-    else
-      build-depends: base    >= 4 && <= 6,
-                     network >= 2 && <= 4
-      cpp-options: -ULINUX_SPLICE
-      ghc-options: -Wall -O2 -O3
+      exposed-modules:   System.IO.Splice.Linux
+      build-depends:     unix    >= 2 && <= 4
+      cpp-options:       -DLINUX_SPLICE
+
+
+    ghc-options:         -Wall -O2 -O3
+
+    if flag(llvm)
+      ghc-options:       -fllvm -optlo-O3 -msse4.2
diff --git a/src/Network/Socket/Splice/Internal.hsc b/src/Network/Socket/Splice/Internal.hsc
--- a/src/Network/Socket/Splice/Internal.hsc
+++ b/src/Network/Socket/Splice/Internal.hsc
@@ -39,9 +39,9 @@
 
        [Notes]
 
-         * 'c_splice', the Linux-only system call, is not a terminal infinite
-           loop and can be safely interleaved by other IO operations on sockets
-           or socket handles.
+         * 'System.IO.Splice.Linux.c_splice', the Linux-only system call, is not
+           a terminal infinite loop and can be safely interleaved by other IO
+           operations on sockets or socket handles.
   -}
 
     splice
