<NME> CrucibleLLVM.hs
<BEF> {- |
Module      : SAWScript.Crucible.LLVM.CrucibleLLVM
Description : Re-exports from the crucible-llvm package
License     : BSD3
Maintainer  : huffman
Stability   : provisional

This module collects declarations from various modules in the
@crucible-llvm@ package into a single API.

-}
{-# LANGUAGE PatternSynonyms #-}

module SAWScript.Crucible.LLVM.CrucibleLLVM
  (
    -- * Re-exports from "Lang.Crucible.LLVM"
    llvmGlobals
  , llvmExtensionImpl
  , registerLazyModule
    -- * Re-exports from "Lang.Crucible.LLVM.Bytes"
  , Bytes
  , bytesToBits
  , bytesToInteger
  , toBytes
    -- * Re-exports from "Lang.Crucible.LLVM.DataLayout"
  , Alignment
  , noAlignment
  , padToAlignment
  , DataLayout
  , intWidthSize
  , ptrBitwidth
  , integerAlignment
  , floatAlignment
  , fromAlignment
  , EndianForm(..)
    -- * Re-exports from "Lang.Crucible.LLVM.Extension"
  , ArchWidth
  , LLVMArch
    -- * Re-exports from "Lang.Crucible.LLVM.Intrinsics"
  , LLVM
  , llvmTypeCtx
  , register_llvm_overrides
  , llvmIntrinsicTypes
    -- * Re-exports from "Lang.Crucible.LLVM.MemType"
  , SymType(MemType, Alias, VoidType)
  , MemType(..)
  , memTypeSize
  , memTypeAlign
  , fiOffset
  , fiType
  , siFields
  , siFieldInfo
  , siFieldOffset
  , siFieldTypes
  , siIsPacked
  , mkStructInfo
  , ppMemType
  , Ident -- re-exported from llvm-pretty package
    -- * Re-exports from "Lang.Crucible.LLVM.LLVMContext"
  , TyCtx.TypeContext
  , llvmMetadataMap
  , llvmDataLayout
  , asMemType
  , liftType
  , liftMemType
  , liftRetType
    -- * Re-exports from "Lang.Crucible.LLVM.Globals"
  , GlobalInitializerMap
  , initializeMemoryConstGlobals
  , makeGlobalMap
  , ModuleTranslation
  , llvmMemVar
  , toStorableType
  , symbolMap
  , LLVMHandleInfo(LLVMHandleInfo)
  , cfgMap
  , transContext
  , llvmPtrWidth
  , LLVMContext
  , translateModule
    -- * Re-exports from "Lang.Crucible.LLVM.MemModel"
  , doResolveGlobal
  , Mem
  , getTranslatedCFG
    -- * Re-exports from "Lang.Crucible.LLVM.MemModel"
  , doResolveGlobal
  , Mem
  , MemImpl
  , doMalloc
  , doLoad
  , doStore
  , loadRaw
  , storeRaw
  , storeConstRaw
  , mallocRaw
  , mallocConstRaw
  , assertSafe
  , isZero
  , testEqual
  , ppMem
  , packMemValue
  , unpackMemValue
  , buildDisjointRegionsAssertion
  , doPtrAddOffset
  , emptyMem
  , LLVMPointerType
  , pattern LLVMPointerRepr
  , AllocType(HeapAlloc, GlobalAlloc)
  , Mutability(..)
  , storageTypeF
  , StorageType
  , StorageTypeF(..)
  , storageTypeSize
  , fieldVal
  , bitvectorType
  , fieldPad
  , arrayType
  , mkStructType
  , mkStruct
  , LLVMVal(..)
  , LLVMPtr
  , HasPtrWidth
  , ptrToPtrVal
  , mkNullPointer
  , ptrIsNull
  , ptrEq
  , muxLLVMPtr
  , pattern PtrWidth
  , llvmPointerView
  , llvmPointer_bv
  , withPtrWidth
  , pattern LLVMPointer
  , pattern PtrRepr
  , ppPtr
  , projectLLVM_bv
  , mkMemVar
  ) where

import Lang.Crucible.LLVM
  (llvmGlobals, llvmExtensionImpl, registerLazyModule)

import Lang.Crucible.LLVM.Bytes
  (Bytes, bytesToBits, bytesToInteger, toBytes)
  (ArchWidth)

import Lang.Crucible.LLVM.Intrinsics
  (LLVM, llvmTypeCtx, register_llvm_overrides, llvmIntrinsicTypes)

import Lang.Crucible.LLVM.MemType
  (SymType(MemType, Alias, VoidType),

import Lang.Crucible.LLVM.Intrinsics
  (LLVM, register_llvm_overrides, llvmIntrinsicTypes)

import Lang.Crucible.LLVM.MemType
  (SymType(MemType, Alias, VoidType),
   MemType(..),
   Ident, memTypeSize, memTypeAlign, fiOffset, fiType,
   siFields, siFieldInfo, siFieldOffset, siFieldTypes, siIsPacked,
   mkStructInfo, ppMemType)

  (GlobalInitializerMap, initializeMemoryConstGlobals, makeGlobalMap, populateConstGlobals)

import Lang.Crucible.LLVM.Translation
  (llvmMemVar, symbolMap, LLVMHandleInfo(LLVMHandleInfo),
   cfgMap, transContext, llvmPtrWidth,
   ModuleTranslation, LLVMContext, translateModule)

import Lang.Crucible.LLVM.MemModel
  (Mem, MemImpl, doResolveGlobal, storeRaw, storeConstRaw, mallocRaw, mallocConstRaw,
import Lang.Crucible.LLVM.Translation
  (llvmMemVar, transContext, llvmPtrWidth, llvmTypeCtx,
   ModuleTranslation, LLVMContext, translateModule, llvmDeclToFunHandleRepr',
   TranslationOptions(..), defaultTranslationOptions, getTranslatedCFG )

import Lang.Crucible.LLVM.MemModel
  (Mem, MemImpl, doResolveGlobal, storeRaw, storeConstRaw, mallocRaw, mallocConstRaw,
   ppMem, packMemValue, unpackMemValue, buildDisjointRegionsAssertion,
   doLoad, doStore, loadRaw, doPtrAddOffset, assertSafe, isZero, testEqual,
   emptyMem, doMalloc, mkMemVar,
   LLVMVal(..),
   LLVMPtr, HasPtrWidth, ptrToPtrVal, mkNullPointer, ptrIsNull, ppPtr, ptrEq,
   pattern LLVMPointerRepr, LLVMPointerType,
   pattern PtrWidth, llvmPointer_bv, withPtrWidth, pattern LLVMPointer, pattern PtrRepr,
   llvmPointerView, projectLLVM_bv,
   muxLLVMPtr,
   storageTypeF, StorageType, StorageTypeF(..),
   storageTypeSize, toStorableType, fieldVal, bitvectorType, fieldPad, arrayType,
   mkStructType, AllocType(HeapAlloc, GlobalAlloc), Mutability(..))

import Lang.Crucible.Syntax (mkStruct)

<MSG> Merge pull request #618 from GaloisInc/varargs

Track crucible `varargs` branch
<DFF> @@ -71,13 +71,12 @@ module SAWScript.Crucible.LLVM.CrucibleLLVM
   , ModuleTranslation
   , llvmMemVar
   , toStorableType
-  , symbolMap
-  , LLVMHandleInfo(LLVMHandleInfo)
   , cfgMap
   , transContext
   , llvmPtrWidth
   , LLVMContext
   , translateModule
+  , llvmDeclToFunHandleRepr'
     -- * Re-exports from "Lang.Crucible.LLVM.MemModel"
   , doResolveGlobal
   , Mem
@@ -144,7 +143,7 @@ import Lang.Crucible.LLVM.Extension
   (ArchWidth)
 
 import Lang.Crucible.LLVM.Intrinsics
-  (LLVM, llvmTypeCtx, register_llvm_overrides, llvmIntrinsicTypes)
+  (LLVM, register_llvm_overrides, llvmIntrinsicTypes)
 
 import Lang.Crucible.LLVM.MemType
   (SymType(MemType, Alias, VoidType),
@@ -162,9 +161,8 @@ import Lang.Crucible.LLVM.Globals
   (GlobalInitializerMap, initializeMemoryConstGlobals, makeGlobalMap, populateConstGlobals)
 
 import Lang.Crucible.LLVM.Translation
-  (llvmMemVar, symbolMap, LLVMHandleInfo(LLVMHandleInfo),
-   cfgMap, transContext, llvmPtrWidth,
-   ModuleTranslation, LLVMContext, translateModule)
+  (llvmMemVar, cfgMap, transContext, llvmPtrWidth, llvmTypeCtx,
+   ModuleTranslation, LLVMContext, translateModule, llvmDeclToFunHandleRepr')
 
 import Lang.Crucible.LLVM.MemModel
   (Mem, MemImpl, doResolveGlobal, storeRaw, storeConstRaw, mallocRaw, mallocConstRaw,

{'addition_count': 4, 'commit_subject': 'Merge pull request #618 from GaloisInc/varargs', 'deletion_count': 6, 'file_extension': '.hs', 'lang': 'hs', 'license': 'bsd-3-clause', 'repo_name': 'GaloisInc/saw-script'}