diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,6 @@
+### 3.8.5 [2020.02.28]
+* Import from `GHC.Exts`, not `GHC.Prim`.
+
 ### 3.8.4 [2020.01.28]
 * Update the `TextShow(1)` instances for `Down` and `ThreadId` to match their
   implementations in `base-4.14`.
diff --git a/src/TextShow/Control/Concurrent.hs b/src/TextShow/Control/Concurrent.hs
--- a/src/TextShow/Control/Concurrent.hs
+++ b/src/TextShow/Control/Concurrent.hs
@@ -24,7 +24,7 @@
 
 import GHC.Conc (BlockReason, ThreadStatus)
 import GHC.Conc.Sync (ThreadId(..))
-import GHC.Prim
+import GHC.Exts (Addr#, unsafeCoerce#)
 
 import Prelude ()
 import Prelude.Compat
diff --git a/src/TextShow/Data/Integral.hs b/src/TextShow/Data/Integral.hs
--- a/src/TextShow/Data/Integral.hs
+++ b/src/TextShow/Data/Integral.hs
@@ -28,12 +28,10 @@
 import           Data.Text.Lazy.Builder.Int (decimal)
 import           Data.Word (Word8, Word16, Word32, Word64)
 
-import           GHC.Exts (Int(I#))
+import           GHC.Exts (Int(I#), (<#), (>#))
 #if __GLASGOW_HASKELL__ >= 708
-import           GHC.Exts (isTrue#)
-import           GHC.Prim (Int#)
+import           GHC.Exts (Int#, isTrue#)
 #endif
-import           GHC.Prim ((<#), (>#))
 
 import           Prelude ()
 import           Prelude.Compat
diff --git a/src/TextShow/Data/Typeable.hs b/src/TextShow/Data/Typeable.hs
--- a/src/TextShow/Data/Typeable.hs
+++ b/src/TextShow/Data/Typeable.hs
@@ -37,8 +37,7 @@
 import           Data.Text.Lazy.Builder (Builder, fromString, singleton)
 import           Data.Type.Equality ((:~~:)(..))
 
-import           GHC.Exts (Char(..))
-import           GHC.Prim (Addr#, (+#), eqChar#, indexCharOffAddr#)
+import           GHC.Exts (Addr#, Char(..), (+#), eqChar#, indexCharOffAddr#)
 import           GHC.Types (Module(..), TrName(..), TyCon(..), isTrue#)
 
 import           TextShow.Classes (TextShow(..), TextShow1(..), showbParen, showbSpace)
@@ -65,8 +64,7 @@
 # endif
 
 # if MIN_VERSION_base(4,9,0)
-import           GHC.Exts (Char(..))
-import           GHC.Prim (Addr#, (+#), eqChar#, indexCharOffAddr#)
+import           GHC.Exts (Addr#, Char(..), (+#), eqChar#, indexCharOffAddr#)
 import           GHC.Types (TyCon(..), TrName(..), Module(..), isTrue#)
 # else
 import           Data.Typeable.Internal (TyCon)
diff --git a/src/TextShow/Foreign/Ptr.hs b/src/TextShow/Foreign/Ptr.hs
--- a/src/TextShow/Foreign/Ptr.hs
+++ b/src/TextShow/Foreign/Ptr.hs
@@ -22,10 +22,10 @@
 import Foreign.ForeignPtr (ForeignPtr)
 import Foreign.Ptr (FunPtr, IntPtr, WordPtr, castFunPtrToPtr)
 
+import GHC.Exts (addr2Int#, int2Word#)
 import GHC.ForeignPtr (unsafeForeignPtrToPtr)
 import GHC.Num (wordToInteger)
 import GHC.Ptr (Ptr(..))
-import GHC.Prim (addr2Int#, int2Word#)
 
 import Prelude ()
 import Prelude.Compat
diff --git a/src/TextShow/TH/Internal.hs b/src/TextShow/TH/Internal.hs
--- a/src/TextShow/TH/Internal.hs
+++ b/src/TextShow/TH/Internal.hs
@@ -75,12 +75,12 @@
 import qualified Data.Text.Lazy.IO as TL (putStrLn, hPutStrLn)
 
 import           GHC.Exts ( Char(..), Double(..), Float(..), Int(..), Word(..)
+                          , Char#, Double#, Float#, Int#, Word#
 #if MIN_VERSION_base(4,13,0)
                           , Int8#, Int16#, Word8#, Word16#
                           , extendInt8#, extendInt16#, extendWord8#, extendWord16#
 #endif
                           )
-import           GHC.Prim (Char#, Double#, Float#, Int#, Word#)
 import           GHC.Show (appPrec, appPrec1)
 
 import           Language.Haskell.TH.Datatype
diff --git a/src/TextShow/Utils.hs b/src/TextShow/Utils.hs
--- a/src/TextShow/Utils.hs
+++ b/src/TextShow/Utils.hs
@@ -29,8 +29,7 @@
 import           Data.Text.Lazy (length, toStrict, unpack)
 import           Data.Text.Lazy.Builder (Builder, singleton, toLazyText)
 
-import           GHC.Exts (Char(C#), Int(I#))
-import           GHC.Prim ((+#), chr#, ord#)
+import           GHC.Exts (Char(C#), Int(I#), (+#), chr#, ord#)
 
 import           Prelude ()
 import           Prelude.Compat hiding (length)
diff --git a/text-show.cabal b/text-show.cabal
--- a/text-show.cabal
+++ b/text-show.cabal
@@ -1,5 +1,5 @@
 name:                text-show
-version:             3.8.4
+version:             3.8.5
 synopsis:            Efficient conversion of values into Text
 description:         @text-show@ offers a replacement for the @Show@ typeclass intended
                      for use with @Text@ instead of @String@s. This package was created
@@ -51,7 +51,7 @@
                    , GHC == 8.2.2
                    , GHC == 8.4.4
                    , GHC == 8.6.5
-                   , GHC == 8.8.1
+                   , GHC == 8.8.2
 extra-source-files:  CHANGELOG.md, README.md, include/*.h
 cabal-version:       >=1.10
 
