module LLVM.Internal.Threading (
  isMultithreaded
  ) where

import LLVM.Prelude

import qualified LLVM.Internal.FFI.Threading as FFI

import LLVM.Internal.Coding

-- | Check if multithreading is enabled in LLVM
isMultithreaded :: IO Bool
isMultithreaded :: IO Bool
isMultithreaded = IO LLVMBool
FFI.isMultithreaded IO LLVMBool -> (LLVMBool -> IO Bool) -> IO Bool
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= LLVMBool -> IO Bool
forall (d :: * -> *) h c. DecodeM d h c => c -> d h
decodeM