diff --git a/CHANGELOG b/CHANGELOG
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,5 +1,9 @@
 # Changelog
 
+- 0.3.1 (2025-12-28)
+  * Bumps some dependency lower bounds.
+  * Adds an 'llvm' build flag and tests with GHC 9.10.3.
+
 - 0.3.0 (2025-06-21)
   * The 'mnemonic' and 'seed' function families are now total, returning
     'Nothing' when supplied with bad inputs.
diff --git a/ppad-bip39.cabal b/ppad-bip39.cabal
--- a/ppad-bip39.cabal
+++ b/ppad-bip39.cabal
@@ -1,6 +1,6 @@
 cabal-version:      3.0
 name:               ppad-bip39
-version:            0.3.0
+version:            0.3.1
 synopsis:           BIP39 mnemonic codes.
 license:            MIT
 license-file:       LICENSE
@@ -8,7 +8,7 @@
 maintainer:         jared@ppad.tech
 category:           Cryptography
 build-type:         Simple
-tested-with:        GHC == 9.8.1
+tested-with:        GHC == 9.10.3
 extra-doc-files:    CHANGELOG
 extra-source-files:
   etc/english.txt
@@ -26,6 +26,11 @@
   [BIP39](https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki)
   mnemonic codes for deterministic key generation.
 
+flag llvm
+  description: Use GHC's LLVM backend.
+  default:     False
+  manual:      True
+
 source-repository head
   type:     git
   location: git.ppad.tech/bip39.git
@@ -35,14 +40,16 @@
   hs-source-dirs:   lib
   ghc-options:
       -Wall
+  if flag(llvm)
+    ghc-options: -fllvm -O2
   exposed-modules:
       Crypto.KDF.BIP39
   build-depends:
       base >= 4.9 && < 5
     , bytestring >= 0.9 && < 0.13
-    , ppad-pbkdf >= 0.2 && < 0.3
-    , ppad-sha256 >= 0.2.3 && < 0.3
-    , ppad-sha512 >= 0.1.3 && < 0.2
+    , ppad-pbkdf >= 0.2.1 && < 0.3
+    , ppad-sha256 >= 0.2.4 && < 0.3
+    , ppad-sha512 >= 0.1.4 && < 0.2
     , primitive >= 0.8 && < 0.10
     , text >= 2.1 && < 2.2
     , text-icu >= 0.8 && < 0.9
