module Data.LLVM.BitCode.IR.Blocks where
import Data.LLVM.BitCode.Bitstream
import Data.LLVM.BitCode.Match
import Data.LLVM.BitCode.Record
import Control.Monad ((<=<))
blockInfoBlockId :: Match Entry [Entry]
blockInfoBlockId = fmap blockEntries . hasBlockId 0 <=< block
moduleBlockId :: Match Entry [Entry]
moduleBlockId = fmap blockEntries . hasBlockId 8 <=< block
paramattrBlockId :: Match Entry [Entry]
paramattrBlockId = fmap blockEntries . hasBlockId 9 <=< block
paramattrGroupBlockId :: Match Entry [Entry]
paramattrGroupBlockId = fmap blockEntries . hasBlockId 10 <=< block
constantsBlockId :: Match Entry [Entry]
constantsBlockId = fmap blockEntries . hasBlockId 11 <=< block
functionBlockId :: Match Entry [Entry]
functionBlockId = fmap blockEntries . hasBlockId 12 <=< block
valueSymtabBlockId :: Match Entry [Entry]
valueSymtabBlockId = fmap blockEntries . hasBlockId 14 <=< block
metadataBlockId :: Match Entry [Entry]
metadataBlockId = fmap blockEntries . hasBlockId 15 <=< block
metadataAttachmentBlockId :: Match Entry [Entry]
metadataAttachmentBlockId = fmap blockEntries . hasBlockId 16 <=< block
typeBlockIdNew :: Match Entry [Entry]
typeBlockIdNew = fmap blockEntries . hasBlockId 17 <=< block
uselistBlockId :: Match Entry [Entry]
uselistBlockId = fmap blockEntries . hasBlockId 18 <=< block
moduleStrtabBlockId :: Match Entry [Entry]
moduleStrtabBlockId = fmap blockEntries . hasBlockId 19 <=< block
globalvalSummaryBlockId :: Match Entry [Entry]
globalvalSummaryBlockId = fmap blockEntries . hasBlockId 20 <=< block
operandBundleTagsBlockId :: Match Entry [Entry]
operandBundleTagsBlockId = fmap blockEntries . hasBlockId 21 <=< block
metadataKindBlockId :: Match Entry [Entry]
metadataKindBlockId = fmap blockEntries . hasBlockId 22 <=< block
moduleCodeVersion :: Match Entry Record
moduleCodeVersion = hasRecordCode 1 <=< fromEntry
moduleCodeTriple :: Match Entry Record
moduleCodeTriple = hasRecordCode 2 <=< fromEntry
moduleCodeDatalayout :: Match Entry Record
moduleCodeDatalayout = hasRecordCode 3 <=< fromEntry
moduleCodeAsm :: Match Entry Record
moduleCodeAsm = hasRecordCode 4 <=< fromEntry
moduleCodeSectionname :: Match Entry Record
moduleCodeSectionname = hasRecordCode 5 <=< fromEntry
moduleCodeDeplib :: Match Entry Record
moduleCodeDeplib = hasRecordCode 6 <=< fromEntry
moduleCodeGlobalvar :: Match Entry Record
moduleCodeGlobalvar = hasRecordCode 7 <=< fromEntry
moduleCodeFunction :: Match Entry Record
moduleCodeFunction = hasRecordCode 8 <=< fromEntry
moduleCodeAlias :: Match Entry Record
moduleCodeAlias = hasRecordCode 9 <=< fromEntry
moduleCodePurgevals :: Match Entry Record
moduleCodePurgevals = hasRecordCode 10 <=< fromEntry
moduleCodeGcname :: Match Entry Record
moduleCodeGcname = hasRecordCode 11 <=< fromEntry
moduleCodeComdat :: Match Entry Record
moduleCodeComdat = hasRecordCode 12 <=< fromEntry
moduleCodeVSTOffset :: Match Entry Record
moduleCodeVSTOffset = hasRecordCode 13 <=< fromEntry
moduleCodeAliasNew :: Match Entry Record
moduleCodeAliasNew = hasRecordCode 14 <=< fromEntry
moduleCodeMDValsUnused :: Match Entry Record
moduleCodeMDValsUnused = hasRecordCode 15 <=< fromEntry
moduleCodeSourceFilename :: Match Entry Record
moduleCodeSourceFilename = hasRecordCode 16 <=< fromEntry
moduleCodeHash :: Match Entry Record
moduleCodeHash = hasRecordCode 17 <=< fromEntry
moduleCodeIFunc :: Match Entry Record
moduleCodeIFunc = hasRecordCode 18 <=< fromEntry