Safe Haskell | None |
---|---|
Language | Haskell2010 |
Text.LLVM.AST
Contents
- Modules
- Named Metadata
- Unnamed Metadata
- Aliases
- Data Layout
- Inline Assembly
- Comdat
- Identifiers
- Symbols
- Types
- Null values
- Type Elimination
- Top-level Type Aliases
- Globals
- Declarations
- Function Definitions
- Function Attributes and attribute groups
- Basic Block Labels
- Basic Blocks
- Attributes
- Typed Things
- Instructions
- Values
- Value Elimination
- Statements
- Constant Expressions
- DWARF Debug Info
- Aggregate Utilities
Description
Because this library supports many LLVM versions, it is possible to construct
an AST with the types in this module that only some LLVM versions will accept.
These cases are usually documented in the Haddocks for the relevant data types.
When trying to pretty-print constructions that are unsupported by the current
LLVM version, pretty-printing may error
.
At the same time, while the AST coverage is fairly extensive, it is also incomplete: there are some values that new LLVM versions would accept but are not yet represented here.
Synopsis
- data Module = Module {
- modSourceName :: Maybe String
- modTriple :: TargetTriple
- modDataLayout :: DataLayout
- modTypes :: [TypeDecl]
- modNamedMd :: [NamedMd]
- modUnnamedMd :: [UnnamedMd]
- modComdat :: Map String SelectionKind
- modGlobals :: [Global]
- modDeclares :: [Declare]
- modDefines :: [Define]
- modInlineAsm :: InlineAsm
- modAliases :: [GlobalAlias]
- emptyModule :: Module
- data NamedMd = NamedMd {}
- data UnnamedMd = UnnamedMd {
- umIndex :: !Int
- umValues :: ValMd
- umDistinct :: Bool
- data GlobalAlias = GlobalAlias {
- aliasLinkage :: Maybe Linkage
- aliasVisibility :: Maybe Visibility
- aliasName :: Symbol
- aliasType :: Type
- aliasTarget :: Value
- type DataLayout = [LayoutSpec]
- data LayoutSpec
- = BigEndian
- | LittleEndian
- | PointerSize !Int !Int !Int (Maybe Int)
- | IntegerSize !Int !Int (Maybe Int)
- | VectorSize !Int !Int (Maybe Int)
- | FloatSize !Int !Int (Maybe Int)
- | StackObjSize !Int !Int (Maybe Int)
- | AggregateSize !Int !Int (Maybe Int)
- | NativeIntSize [Int]
- | StackAlign !Int
- | Mangling Mangling
- data Mangling
- parseDataLayout :: MonadPlus m => String -> m DataLayout
- type InlineAsm = [String]
- data SelectionKind
- newtype Ident = Ident String
- newtype Symbol = Symbol String
- data PrimType
- data FloatType
- type Type = Type' Ident
- data Type' ident
- updateAliasesA :: Applicative f => (a -> f (Type' b)) -> Type' a -> f (Type' b)
- updateAliases :: (a -> Type' b) -> Type' a -> Type' b
- isFloatingPoint :: PrimType -> Bool
- isAlias :: Type -> Bool
- isPrimTypeOf :: (PrimType -> Bool) -> Type -> Bool
- isLabel :: PrimType -> Bool
- isInteger :: PrimType -> Bool
- isVector :: Type -> Bool
- isVectorOf :: (Type -> Bool) -> Type -> Bool
- isArray :: Type -> Bool
- isPointer :: Type -> Bool
- eqTypeModuloOpaquePtrs :: Eq ident => Type' ident -> Type' ident -> Bool
- cmpTypeModuloOpaquePtrs :: Ord ident => Type' ident -> Type' ident -> Ordering
- fixupOpaquePtrs :: Data a => a -> a
- data NullResult lab
- = HasNull (Value' lab)
- | ResolveNull Ident
- primTypeNull :: PrimType -> Value' lab
- floatTypeNull :: FloatType -> Value' lab
- typeNull :: Type -> NullResult lab
- elimFunTy :: MonadPlus m => Type -> m (Type, [Type], Bool)
- elimAlias :: MonadPlus m => Type -> m Ident
- elimPtrTo :: MonadPlus m => Type -> m Type
- elimVector :: MonadPlus m => Type -> m (Word64, Type)
- elimArray :: MonadPlus m => Type -> m (Word64, Type)
- elimFunPtr :: MonadPlus m => Type -> m (Type, [Type], Bool)
- elimPrimType :: MonadPlus m => Type -> m PrimType
- elimFloatType :: MonadPlus m => PrimType -> m FloatType
- elimSequentialType :: MonadPlus m => Type -> m Type
- data TypeDecl = TypeDecl {}
- data Global = Global {
- globalSym :: Symbol
- globalAttrs :: GlobalAttrs
- globalType :: Type
- globalValue :: Maybe Value
- globalAlign :: Maybe Align
- globalMetadata :: GlobalMdAttachments
- addGlobal :: Global -> Module -> Module
- data GlobalAttrs = GlobalAttrs {
- gaLinkage :: Maybe Linkage
- gaVisibility :: Maybe Visibility
- gaConstant :: Bool
- emptyGlobalAttrs :: GlobalAttrs
- data Declare = Declare {
- decLinkage :: Maybe Linkage
- decVisibility :: Maybe Visibility
- decRetType :: Type
- decName :: Symbol
- decArgs :: [Type]
- decVarArgs :: Bool
- decAttrs :: [FunAttr]
- decComdat :: Maybe String
- decFunType :: Declare -> Type
- data Define = Define {
- defLinkage :: Maybe Linkage
- defVisibility :: Maybe Visibility
- defRetType :: Type
- defName :: Symbol
- defArgs :: [Typed Ident]
- defVarArgs :: Bool
- defAttrs :: [FunAttr]
- defSection :: Maybe String
- defGC :: Maybe GC
- defBody :: [BasicBlock]
- defMetadata :: FnMdAttachments
- defComdat :: Maybe String
- defFunType :: Define -> Type
- addDefine :: Define -> Module -> Module
- data FunAttr
- = AlignStack Int
- | Alwaysinline
- | Builtin
- | Cold
- | Inlinehint
- | Jumptable
- | Minsize
- | Naked
- | Nobuiltin
- | Noduplicate
- | Noimplicitfloat
- | Noinline
- | Nonlazybind
- | Noredzone
- | Noreturn
- | Nounwind
- | Optnone
- | Optsize
- | Readnone
- | Readonly
- | ReturnsTwice
- | SanitizeAddress
- | SanitizeMemory
- | SanitizeThread
- | SSP
- | SSPreq
- | SSPstrong
- | UWTable
- data BlockLabel
- data BasicBlock' lab = BasicBlock {}
- type BasicBlock = BasicBlock' BlockLabel
- brTargets :: BasicBlock' lab -> [lab]
- data Linkage
- data Visibility
- newtype GC = GC {
- getGC :: String
- data Typed a = Typed {
- typedType :: Type
- typedValue :: a
- mapMTyped :: Monad m => (a -> m b) -> Typed a -> m (Typed b)
- data ArithOp
- isIArith :: ArithOp -> Bool
- isFArith :: ArithOp -> Bool
- data UnaryArithOp = FNeg
- data BitOp
- data ConvOp
- data AtomicRWOp
- data AtomicOrdering
- type Align = Int
- data Instr' lab
- = Ret (Typed (Value' lab))
- | RetVoid
- | Arith ArithOp (Typed (Value' lab)) (Value' lab)
- | UnaryArith UnaryArithOp (Typed (Value' lab))
- | Bit BitOp (Typed (Value' lab)) (Value' lab)
- | Conv ConvOp (Typed (Value' lab)) Type
- | Call Bool Type (Value' lab) [Typed (Value' lab)]
- | CallBr Type (Value' lab) [Typed (Value' lab)] lab [lab]
- | Alloca Type (Maybe (Typed (Value' lab))) (Maybe Int)
- | Load Type (Typed (Value' lab)) (Maybe AtomicOrdering) (Maybe Align)
- | Store (Typed (Value' lab)) (Typed (Value' lab)) (Maybe AtomicOrdering) (Maybe Align)
- | Fence (Maybe String) AtomicOrdering
- | CmpXchg Bool Bool (Typed (Value' lab)) (Typed (Value' lab)) (Typed (Value' lab)) (Maybe String) AtomicOrdering AtomicOrdering
- | AtomicRW Bool AtomicRWOp (Typed (Value' lab)) (Typed (Value' lab)) (Maybe String) AtomicOrdering
- | ICmp ICmpOp (Typed (Value' lab)) (Value' lab)
- | FCmp FCmpOp (Typed (Value' lab)) (Value' lab)
- | Phi Type [(Value' lab, lab)]
- | GEP Bool Type (Typed (Value' lab)) [Typed (Value' lab)]
- | Select (Typed (Value' lab)) (Typed (Value' lab)) (Value' lab)
- | ExtractValue (Typed (Value' lab)) [Int32]
- | InsertValue (Typed (Value' lab)) (Typed (Value' lab)) [Int32]
- | ExtractElt (Typed (Value' lab)) (Value' lab)
- | InsertElt (Typed (Value' lab)) (Typed (Value' lab)) (Value' lab)
- | ShuffleVector (Typed (Value' lab)) (Value' lab) (Typed (Value' lab))
- | Jump lab
- | Br (Typed (Value' lab)) lab lab
- | Invoke Type (Value' lab) [Typed (Value' lab)] lab lab
- | Comment String
- | Unreachable
- | Unwind
- | VaArg (Typed (Value' lab)) Type
- | IndirectBr (Typed (Value' lab)) [lab]
- | Switch (Typed (Value' lab)) lab [(Integer, lab)]
- | LandingPad Type (Maybe (Typed (Value' lab))) Bool [Clause' lab]
- | Resume (Typed (Value' lab))
- | Freeze (Typed (Value' lab))
- type Instr = Instr' BlockLabel
- data Clause' lab
- type Clause = Clause' BlockLabel
- isTerminator :: Instr' lab -> Bool
- isComment :: Instr' lab -> Bool
- isPhi :: Instr' lab -> Bool
- data ICmpOp
- data FCmpOp
- data Value' lab
- = ValInteger Integer
- | ValBool Bool
- | ValFloat Float
- | ValDouble Double
- | ValFP80 FP80Value
- | ValIdent Ident
- | ValSymbol Symbol
- | ValNull
- | ValArray Type [Value' lab]
- | ValVector Type [Value' lab]
- | ValStruct [Typed (Value' lab)]
- | ValPackedStruct [Typed (Value' lab)]
- | ValString [Word8]
- | ValConstExpr (ConstExpr' lab)
- | ValUndef
- | ValLabel lab
- | ValZeroInit
- | ValAsm Bool Bool String String
- | ValMd (ValMd' lab)
- | ValPoison
- type Value = Value' BlockLabel
- data FP80Value = FP80_LongDouble Word16 Word64
- data ValMd' lab
- = ValMdString String
- | ValMdValue (Typed (Value' lab))
- | ValMdRef Int
- | ValMdNode [Maybe (ValMd' lab)]
- | ValMdLoc (DebugLoc' lab)
- | ValMdDebugInfo (DebugInfo' lab)
- type ValMd = ValMd' BlockLabel
- type KindMd = String
- type FnMdAttachments = Map KindMd ValMd
- type GlobalMdAttachments = Map KindMd ValMd
- data DebugLoc' lab = DebugLoc {}
- type DebugLoc = DebugLoc' BlockLabel
- isConst :: Value' lab -> Bool
- elimValSymbol :: MonadPlus m => Value' lab -> m Symbol
- elimValInteger :: MonadPlus m => Value' lab -> m Integer
- data Stmt' lab
- type Stmt = Stmt' BlockLabel
- stmtInstr :: Stmt' lab -> Instr' lab
- stmtMetadata :: Stmt' lab -> [(String, ValMd' lab)]
- extendMetadata :: (String, ValMd' lab) -> Stmt' lab -> Stmt' lab
- data ConstExpr' lab
- = ConstGEP Bool (Maybe Word64) Type (Typed (Value' lab)) [Typed (Value' lab)]
- | ConstConv ConvOp (Typed (Value' lab)) Type
- | ConstSelect (Typed (Value' lab)) (Typed (Value' lab)) (Typed (Value' lab))
- | ConstBlockAddr (Typed (Value' lab)) lab
- | ConstFCmp FCmpOp (Typed (Value' lab)) (Typed (Value' lab))
- | ConstICmp ICmpOp (Typed (Value' lab)) (Typed (Value' lab))
- | ConstArith ArithOp (Typed (Value' lab)) (Value' lab)
- | ConstUnaryArith UnaryArithOp (Typed (Value' lab))
- | ConstBit BitOp (Typed (Value' lab)) (Value' lab)
- type ConstExpr = ConstExpr' BlockLabel
- data DebugInfo' lab
- = DebugInfoBasicType DIBasicType
- | DebugInfoCompileUnit (DICompileUnit' lab)
- | DebugInfoCompositeType (DICompositeType' lab)
- | DebugInfoDerivedType (DIDerivedType' lab)
- | DebugInfoEnumerator String !Integer Bool
- | DebugInfoExpression DIExpression
- | DebugInfoFile DIFile
- | DebugInfoGlobalVariable (DIGlobalVariable' lab)
- | DebugInfoGlobalVariableExpression (DIGlobalVariableExpression' lab)
- | DebugInfoLexicalBlock (DILexicalBlock' lab)
- | DebugInfoLexicalBlockFile (DILexicalBlockFile' lab)
- | DebugInfoLocalVariable (DILocalVariable' lab)
- | DebugInfoSubprogram (DISubprogram' lab)
- | DebugInfoSubrange (DISubrange' lab)
- | DebugInfoSubroutineType (DISubroutineType' lab)
- | DebugInfoNameSpace (DINameSpace' lab)
- | DebugInfoTemplateTypeParameter (DITemplateTypeParameter' lab)
- | DebugInfoTemplateValueParameter (DITemplateValueParameter' lab)
- | DebugInfoImportedEntity (DIImportedEntity' lab)
- | DebugInfoLabel (DILabel' lab)
- | DebugInfoArgList (DIArgList' lab)
- | DebugInfoAssignID
- type DebugInfo = DebugInfo' BlockLabel
- type DILabel = DILabel' BlockLabel
- data DILabel' lab = DILabel {}
- type DIImportedEntity = DIImportedEntity' BlockLabel
- data DIImportedEntity' lab = DIImportedEntity {}
- type DITemplateTypeParameter = DITemplateTypeParameter' BlockLabel
- data DITemplateTypeParameter' lab = DITemplateTypeParameter {
- dittpName :: Maybe String
- dittpType :: Maybe (ValMd' lab)
- dittpIsDefault :: Maybe Bool
- type DITemplateValueParameter = DITemplateValueParameter' BlockLabel
- data DITemplateValueParameter' lab = DITemplateValueParameter {
- ditvpTag :: DwarfTag
- ditvpName :: Maybe String
- ditvpType :: Maybe (ValMd' lab)
- ditvpIsDefault :: Maybe Bool
- ditvpValue :: ValMd' lab
- type DINameSpace = DINameSpace' BlockLabel
- data DINameSpace' lab = DINameSpace {}
- type DwarfAttrEncoding = Word16
- type DwarfLang = Word16
- type DwarfTag = Word16
- type DwarfVirtuality = Word8
- type DIFlags = Word32
- type DIEmissionKind = Word8
- data DIBasicType = DIBasicType {
- dibtTag :: DwarfTag
- dibtName :: String
- dibtSize :: Word64
- dibtAlign :: Word64
- dibtEncoding :: DwarfAttrEncoding
- dibtFlags :: Maybe DIFlags
- data DICompileUnit' lab = DICompileUnit {
- dicuLanguage :: DwarfLang
- dicuFile :: Maybe (ValMd' lab)
- dicuProducer :: Maybe String
- dicuIsOptimized :: Bool
- dicuFlags :: Maybe String
- dicuRuntimeVersion :: Word16
- dicuSplitDebugFilename :: Maybe FilePath
- dicuEmissionKind :: DIEmissionKind
- dicuEnums :: Maybe (ValMd' lab)
- dicuRetainedTypes :: Maybe (ValMd' lab)
- dicuSubprograms :: Maybe (ValMd' lab)
- dicuGlobals :: Maybe (ValMd' lab)
- dicuImports :: Maybe (ValMd' lab)
- dicuMacros :: Maybe (ValMd' lab)
- dicuDWOId :: Word64
- dicuSplitDebugInlining :: Bool
- dicuDebugInfoForProf :: Bool
- dicuNameTableKind :: Word64
- dicuRangesBaseAddress :: Bool
- dicuSysRoot :: Maybe String
- dicuSDK :: Maybe String
- type DICompileUnit = DICompileUnit' BlockLabel
- data DICompositeType' lab = DICompositeType {
- dictTag :: DwarfTag
- dictName :: Maybe String
- dictFile :: Maybe (ValMd' lab)
- dictLine :: Word32
- dictScope :: Maybe (ValMd' lab)
- dictBaseType :: Maybe (ValMd' lab)
- dictSize :: Word64
- dictAlign :: Word64
- dictOffset :: Word64
- dictFlags :: DIFlags
- dictElements :: Maybe (ValMd' lab)
- dictRuntimeLang :: DwarfLang
- dictVTableHolder :: Maybe (ValMd' lab)
- dictTemplateParams :: Maybe (ValMd' lab)
- dictIdentifier :: Maybe String
- dictDiscriminator :: Maybe (ValMd' lab)
- dictDataLocation :: Maybe (ValMd' lab)
- dictAssociated :: Maybe (ValMd' lab)
- dictAllocated :: Maybe (ValMd' lab)
- dictRank :: Maybe (ValMd' lab)
- dictAnnotations :: Maybe (ValMd' lab)
- type DICompositeType = DICompositeType' BlockLabel
- data DIDerivedType' lab = DIDerivedType {
- didtTag :: DwarfTag
- didtName :: Maybe String
- didtFile :: Maybe (ValMd' lab)
- didtLine :: Word32
- didtScope :: Maybe (ValMd' lab)
- didtBaseType :: Maybe (ValMd' lab)
- didtSize :: Word64
- didtAlign :: Word64
- didtOffset :: Word64
- didtFlags :: DIFlags
- didtExtraData :: Maybe (ValMd' lab)
- didtDwarfAddressSpace :: Maybe Word32
- didtAnnotations :: Maybe (ValMd' lab)
- type DIDerivedType = DIDerivedType' BlockLabel
- data DIExpression = DIExpression {
- dieElements :: [Word64]
- data DIFile = DIFile {
- difFilename :: FilePath
- difDirectory :: FilePath
- data DIGlobalVariable' lab = DIGlobalVariable {
- digvScope :: Maybe (ValMd' lab)
- digvName :: Maybe String
- digvLinkageName :: Maybe String
- digvFile :: Maybe (ValMd' lab)
- digvLine :: Word32
- digvType :: Maybe (ValMd' lab)
- digvIsLocal :: Bool
- digvIsDefinition :: Bool
- digvVariable :: Maybe (ValMd' lab)
- digvDeclaration :: Maybe (ValMd' lab)
- digvAlignment :: Maybe Word32
- digvAnnotations :: Maybe (ValMd' lab)
- type DIGlobalVariable = DIGlobalVariable' BlockLabel
- data DIGlobalVariableExpression' lab = DIGlobalVariableExpression {
- digveVariable :: Maybe (ValMd' lab)
- digveExpression :: Maybe (ValMd' lab)
- type DIGlobalVariableExpression = DIGlobalVariableExpression' BlockLabel
- data DILexicalBlock' lab = DILexicalBlock {}
- type DILexicalBlock = DILexicalBlock' BlockLabel
- data DILexicalBlockFile' lab = DILexicalBlockFile {
- dilbfScope :: ValMd' lab
- dilbfFile :: Maybe (ValMd' lab)
- dilbfDiscriminator :: Word32
- type DILexicalBlockFile = DILexicalBlockFile' BlockLabel
- data DILocalVariable' lab = DILocalVariable {}
- type DILocalVariable = DILocalVariable' BlockLabel
- data DISubprogram' lab = DISubprogram {
- dispScope :: Maybe (ValMd' lab)
- dispName :: Maybe String
- dispLinkageName :: Maybe String
- dispFile :: Maybe (ValMd' lab)
- dispLine :: Word32
- dispType :: Maybe (ValMd' lab)
- dispIsLocal :: Bool
- dispIsDefinition :: Bool
- dispScopeLine :: Word32
- dispContainingType :: Maybe (ValMd' lab)
- dispVirtuality :: DwarfVirtuality
- dispVirtualIndex :: Word32
- dispThisAdjustment :: Int64
- dispFlags :: DIFlags
- dispIsOptimized :: Bool
- dispUnit :: Maybe (ValMd' lab)
- dispTemplateParams :: Maybe (ValMd' lab)
- dispDeclaration :: Maybe (ValMd' lab)
- dispRetainedNodes :: Maybe (ValMd' lab)
- dispThrownTypes :: Maybe (ValMd' lab)
- dispAnnotations :: Maybe (ValMd' lab)
- type DISubprogram = DISubprogram' BlockLabel
- data DISubrange' lab = DISubrange {
- disrCount :: Maybe (ValMd' lab)
- disrLowerBound :: Maybe (ValMd' lab)
- disrUpperBound :: Maybe (ValMd' lab)
- disrStride :: Maybe (ValMd' lab)
- type DISubrange = DISubrange' BlockLabel
- data DISubroutineType' lab = DISubroutineType {
- distFlags :: DIFlags
- distTypeArray :: Maybe (ValMd' lab)
- type DISubroutineType = DISubroutineType' BlockLabel
- newtype DIArgList' lab = DIArgList {}
- type DIArgList = DIArgList' BlockLabel
- data IndexResult
- isInvalid :: IndexResult -> Bool
- resolveGepFull :: (Ident -> Maybe Type) -> Type -> Typed (Value' lab) -> [Typed (Value' lab)] -> Maybe Type
- resolveGep :: Type -> Typed (Value' lab) -> [Typed (Value' lab)] -> IndexResult
- resolveGepBody :: Type -> [Typed (Value' lab)] -> IndexResult
- isGepIndex :: Typed (Value' lab) -> Bool
- isGepStructIndex :: Typed (Value' lab) -> Maybe Integer
- resolveValueIndex :: Type -> [Int32] -> IndexResult
Modules
Constructors
Module | |
Fields
|
Instances
Data Module Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Module -> c Module gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Module dataTypeOf :: Module -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Module) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Module) gmapT :: (forall b. Data b => b -> b) -> Module -> Module gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Module -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Module -> r gmapQ :: (forall d. Data d => d -> u) -> Module -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Module -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Module -> m Module gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Module -> m Module gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Module -> m Module | |||||
Monoid Module Source # | |||||
Semigroup Module Source # | Combines fields pointwise. | ||||
Generic Module Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show Module Source # | |||||
Eq Module Source # | |||||
Ord Module Source # | |||||
LLVMPretty Module Source # | |||||
type Rep Module Source # | |||||
Defined in Text.LLVM.AST type Rep Module = D1 ('MetaData "Module" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "Module" 'PrefixI 'True) (((S1 ('MetaSel ('Just "modSourceName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)) :*: (S1 ('MetaSel ('Just "modTriple") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 TargetTriple) :*: S1 ('MetaSel ('Just "modDataLayout") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DataLayout))) :*: (S1 ('MetaSel ('Just "modTypes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [TypeDecl]) :*: (S1 ('MetaSel ('Just "modNamedMd") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [NamedMd]) :*: S1 ('MetaSel ('Just "modUnnamedMd") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [UnnamedMd])))) :*: ((S1 ('MetaSel ('Just "modComdat") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Map String SelectionKind)) :*: (S1 ('MetaSel ('Just "modGlobals") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Global]) :*: S1 ('MetaSel ('Just "modDeclares") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Declare]))) :*: (S1 ('MetaSel ('Just "modDefines") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Define]) :*: (S1 ('MetaSel ('Just "modInlineAsm") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 InlineAsm) :*: S1 ('MetaSel ('Just "modAliases") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [GlobalAlias])))))) |
emptyModule :: Module Source #
Named Metadata
Instances
Data NamedMd Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> NamedMd -> c NamedMd gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c NamedMd dataTypeOf :: NamedMd -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c NamedMd) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c NamedMd) gmapT :: (forall b. Data b => b -> b) -> NamedMd -> NamedMd gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> NamedMd -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> NamedMd -> r gmapQ :: (forall d. Data d => d -> u) -> NamedMd -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> NamedMd -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> NamedMd -> m NamedMd gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> NamedMd -> m NamedMd gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> NamedMd -> m NamedMd | |||||
Generic NamedMd Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show NamedMd Source # | |||||
Eq NamedMd Source # | |||||
Ord NamedMd Source # | |||||
type Rep NamedMd Source # | |||||
Defined in Text.LLVM.AST type Rep NamedMd = D1 ('MetaData "NamedMd" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "NamedMd" 'PrefixI 'True) (S1 ('MetaSel ('Just "nmName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: S1 ('MetaSel ('Just "nmValues") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Int]))) |
Unnamed Metadata
Constructors
UnnamedMd | |
Fields
|
Instances
Data UnnamedMd Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> UnnamedMd -> c UnnamedMd gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c UnnamedMd toConstr :: UnnamedMd -> Constr dataTypeOf :: UnnamedMd -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c UnnamedMd) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c UnnamedMd) gmapT :: (forall b. Data b => b -> b) -> UnnamedMd -> UnnamedMd gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> UnnamedMd -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> UnnamedMd -> r gmapQ :: (forall d. Data d => d -> u) -> UnnamedMd -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> UnnamedMd -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> UnnamedMd -> m UnnamedMd gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> UnnamedMd -> m UnnamedMd gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> UnnamedMd -> m UnnamedMd | |||||
Generic UnnamedMd Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show UnnamedMd Source # | |||||
Eq UnnamedMd Source # | |||||
Ord UnnamedMd Source # | |||||
Defined in Text.LLVM.AST | |||||
type Rep UnnamedMd Source # | |||||
Defined in Text.LLVM.AST type Rep UnnamedMd = D1 ('MetaData "UnnamedMd" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "UnnamedMd" 'PrefixI 'True) (S1 ('MetaSel ('Just "umIndex") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int) :*: (S1 ('MetaSel ('Just "umValues") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ValMd) :*: S1 ('MetaSel ('Just "umDistinct") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)))) |
Aliases
data GlobalAlias Source #
Constructors
GlobalAlias | |
Fields
|
Instances
Data GlobalAlias Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> GlobalAlias -> c GlobalAlias gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c GlobalAlias toConstr :: GlobalAlias -> Constr dataTypeOf :: GlobalAlias -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c GlobalAlias) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c GlobalAlias) gmapT :: (forall b. Data b => b -> b) -> GlobalAlias -> GlobalAlias gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> GlobalAlias -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> GlobalAlias -> r gmapQ :: (forall d. Data d => d -> u) -> GlobalAlias -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> GlobalAlias -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> GlobalAlias -> m GlobalAlias gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> GlobalAlias -> m GlobalAlias gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> GlobalAlias -> m GlobalAlias | |||||
Generic GlobalAlias Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show GlobalAlias Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> GlobalAlias -> ShowS show :: GlobalAlias -> String showList :: [GlobalAlias] -> ShowS | |||||
Eq GlobalAlias Source # | |||||
Defined in Text.LLVM.AST | |||||
Ord GlobalAlias Source # | |||||
Defined in Text.LLVM.AST Methods compare :: GlobalAlias -> GlobalAlias -> Ordering (<) :: GlobalAlias -> GlobalAlias -> Bool (<=) :: GlobalAlias -> GlobalAlias -> Bool (>) :: GlobalAlias -> GlobalAlias -> Bool (>=) :: GlobalAlias -> GlobalAlias -> Bool max :: GlobalAlias -> GlobalAlias -> GlobalAlias min :: GlobalAlias -> GlobalAlias -> GlobalAlias | |||||
type Rep GlobalAlias Source # | |||||
Defined in Text.LLVM.AST type Rep GlobalAlias = D1 ('MetaData "GlobalAlias" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "GlobalAlias" 'PrefixI 'True) ((S1 ('MetaSel ('Just "aliasLinkage") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Linkage)) :*: S1 ('MetaSel ('Just "aliasVisibility") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Visibility))) :*: (S1 ('MetaSel ('Just "aliasName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Symbol) :*: (S1 ('MetaSel ('Just "aliasType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type) :*: S1 ('MetaSel ('Just "aliasTarget") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Value))))) |
Data Layout
type DataLayout = [LayoutSpec] Source #
data LayoutSpec Source #
Constructors
BigEndian | |
LittleEndian | |
PointerSize !Int !Int !Int (Maybe Int) | address space, size, abi, pref |
IntegerSize !Int !Int (Maybe Int) | size, abi, pref |
VectorSize !Int !Int (Maybe Int) | size, abi, pref |
FloatSize !Int !Int (Maybe Int) | size, abi, pref |
StackObjSize !Int !Int (Maybe Int) | size, abi, pref |
AggregateSize !Int !Int (Maybe Int) | size, abi, pref |
NativeIntSize [Int] | |
StackAlign !Int | size |
Mangling Mangling |
Instances
Data LayoutSpec Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> LayoutSpec -> c LayoutSpec gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c LayoutSpec toConstr :: LayoutSpec -> Constr dataTypeOf :: LayoutSpec -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c LayoutSpec) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c LayoutSpec) gmapT :: (forall b. Data b => b -> b) -> LayoutSpec -> LayoutSpec gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> LayoutSpec -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> LayoutSpec -> r gmapQ :: (forall d. Data d => d -> u) -> LayoutSpec -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> LayoutSpec -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> LayoutSpec -> m LayoutSpec gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> LayoutSpec -> m LayoutSpec gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> LayoutSpec -> m LayoutSpec | |||||
Generic LayoutSpec Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show LayoutSpec Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> LayoutSpec -> ShowS show :: LayoutSpec -> String showList :: [LayoutSpec] -> ShowS | |||||
Eq LayoutSpec Source # | |||||
Defined in Text.LLVM.AST | |||||
Ord LayoutSpec Source # | |||||
Defined in Text.LLVM.AST Methods compare :: LayoutSpec -> LayoutSpec -> Ordering (<) :: LayoutSpec -> LayoutSpec -> Bool (<=) :: LayoutSpec -> LayoutSpec -> Bool (>) :: LayoutSpec -> LayoutSpec -> Bool (>=) :: LayoutSpec -> LayoutSpec -> Bool max :: LayoutSpec -> LayoutSpec -> LayoutSpec min :: LayoutSpec -> LayoutSpec -> LayoutSpec | |||||
type Rep LayoutSpec Source # | |||||
Defined in Text.LLVM.AST type Rep LayoutSpec = D1 ('MetaData "LayoutSpec" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (((C1 ('MetaCons "BigEndian" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LittleEndian" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "PointerSize" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Int)))) :+: (C1 ('MetaCons "IntegerSize" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Int)))) :+: C1 ('MetaCons "VectorSize" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Int))))))) :+: ((C1 ('MetaCons "FloatSize" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Int)))) :+: (C1 ('MetaCons "StackObjSize" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Int)))) :+: C1 ('MetaCons "AggregateSize" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Int)))))) :+: (C1 ('MetaCons "NativeIntSize" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Int])) :+: (C1 ('MetaCons "StackAlign" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int)) :+: C1 ('MetaCons "Mangling" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Mangling)))))) |
Constructors
ElfMangling | |
MipsMangling | |
MachOMangling | |
WindowsCoffMangling |
Instances
Data Mangling Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Mangling -> c Mangling gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Mangling toConstr :: Mangling -> Constr dataTypeOf :: Mangling -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Mangling) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Mangling) gmapT :: (forall b. Data b => b -> b) -> Mangling -> Mangling gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Mangling -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Mangling -> r gmapQ :: (forall d. Data d => d -> u) -> Mangling -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Mangling -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Mangling -> m Mangling gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Mangling -> m Mangling gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Mangling -> m Mangling | |||||
Enum Mangling Source # | |||||
Defined in Text.LLVM.AST | |||||
Generic Mangling Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show Mangling Source # | |||||
Eq Mangling Source # | |||||
Ord Mangling Source # | |||||
type Rep Mangling Source # | |||||
Defined in Text.LLVM.AST type Rep Mangling = D1 ('MetaData "Mangling" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) ((C1 ('MetaCons "ElfMangling" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "MipsMangling" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "MachOMangling" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "WindowsCoffMangling" 'PrefixI 'False) (U1 :: Type -> Type))) |
parseDataLayout :: MonadPlus m => String -> m DataLayout Source #
Parse the data layout string.
Inline Assembly
Comdat
data SelectionKind Source #
Instances
Data SelectionKind Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SelectionKind -> c SelectionKind gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SelectionKind toConstr :: SelectionKind -> Constr dataTypeOf :: SelectionKind -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SelectionKind) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SelectionKind) gmapT :: (forall b. Data b => b -> b) -> SelectionKind -> SelectionKind gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SelectionKind -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SelectionKind -> r gmapQ :: (forall d. Data d => d -> u) -> SelectionKind -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> SelectionKind -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> SelectionKind -> m SelectionKind gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SelectionKind -> m SelectionKind gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SelectionKind -> m SelectionKind | |||||
Enum SelectionKind Source # | |||||
Defined in Text.LLVM.AST Methods succ :: SelectionKind -> SelectionKind pred :: SelectionKind -> SelectionKind toEnum :: Int -> SelectionKind fromEnum :: SelectionKind -> Int enumFrom :: SelectionKind -> [SelectionKind] enumFromThen :: SelectionKind -> SelectionKind -> [SelectionKind] enumFromTo :: SelectionKind -> SelectionKind -> [SelectionKind] enumFromThenTo :: SelectionKind -> SelectionKind -> SelectionKind -> [SelectionKind] | |||||
Generic SelectionKind Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show SelectionKind Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> SelectionKind -> ShowS show :: SelectionKind -> String showList :: [SelectionKind] -> ShowS | |||||
Eq SelectionKind Source # | |||||
Defined in Text.LLVM.AST | |||||
Ord SelectionKind Source # | |||||
Defined in Text.LLVM.AST Methods compare :: SelectionKind -> SelectionKind -> Ordering (<) :: SelectionKind -> SelectionKind -> Bool (<=) :: SelectionKind -> SelectionKind -> Bool (>) :: SelectionKind -> SelectionKind -> Bool (>=) :: SelectionKind -> SelectionKind -> Bool max :: SelectionKind -> SelectionKind -> SelectionKind min :: SelectionKind -> SelectionKind -> SelectionKind | |||||
type Rep SelectionKind Source # | |||||
Defined in Text.LLVM.AST type Rep SelectionKind = D1 ('MetaData "SelectionKind" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) ((C1 ('MetaCons "ComdatAny" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ComdatExactMatch" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "ComdatLargest" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "ComdatNoDuplicates" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ComdatSameSize" 'PrefixI 'False) (U1 :: Type -> Type)))) |
Identifiers
Constructors
Ident String |
Instances
Data Ident Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Ident -> c Ident gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Ident dataTypeOf :: Ident -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Ident) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Ident) gmapT :: (forall b. Data b => b -> b) -> Ident -> Ident gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Ident -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Ident -> r gmapQ :: (forall d. Data d => d -> u) -> Ident -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Ident -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Ident -> m Ident gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Ident -> m Ident gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Ident -> m Ident | |||||
IsString Ident Source # | |||||
Defined in Text.LLVM.AST Methods fromString :: String -> Ident | |||||
Generic Ident Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show Ident Source # | |||||
Eq Ident Source # | |||||
Ord Ident Source # | |||||
IsValue Ident Source # | |||||
LLVMPretty Ident Source # | |||||
Lift Ident Source # | |||||
DefineArgs Type (Typed Value -> BB ()) Source # | |||||
DefineArgs as k => DefineArgs (Type :> as) (Typed Value -> k) Source # | |||||
DefineArgs (Type, Type) (Typed Value -> Typed Value -> BB ()) Source # | |||||
DefineArgs (Type, Type, Type) (Typed Value -> Typed Value -> Typed Value -> BB ()) Source # | |||||
type Rep Ident Source # | |||||
Defined in Text.LLVM.AST type Rep Ident = D1 ('MetaData "Ident" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'True) (C1 ('MetaCons "Ident" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String))) |
Symbols
Constructors
Symbol String |
Instances
Data Symbol Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Symbol -> c Symbol gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Symbol dataTypeOf :: Symbol -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Symbol) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Symbol) gmapT :: (forall b. Data b => b -> b) -> Symbol -> Symbol gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Symbol -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Symbol -> r gmapQ :: (forall d. Data d => d -> u) -> Symbol -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Symbol -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Symbol -> m Symbol gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Symbol -> m Symbol gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Symbol -> m Symbol | |||||
IsString Symbol Source # | |||||
Defined in Text.LLVM.AST Methods fromString :: String -> Symbol | |||||
Monoid Symbol Source # | |||||
Semigroup Symbol Source # | |||||
Generic Symbol Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show Symbol Source # | |||||
Eq Symbol Source # | |||||
Ord Symbol Source # | |||||
IsValue Symbol Source # | |||||
LLVMPretty Symbol Source # | |||||
Lift Symbol Source # | |||||
type Rep Symbol Source # | |||||
Defined in Text.LLVM.AST type Rep Symbol = D1 ('MetaData "Symbol" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'True) (C1 ('MetaCons "Symbol" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String))) |
Types
Instances
Data PrimType Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> PrimType -> c PrimType gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c PrimType toConstr :: PrimType -> Constr dataTypeOf :: PrimType -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c PrimType) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c PrimType) gmapT :: (forall b. Data b => b -> b) -> PrimType -> PrimType gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> PrimType -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> PrimType -> r gmapQ :: (forall d. Data d => d -> u) -> PrimType -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> PrimType -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> PrimType -> m PrimType gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> PrimType -> m PrimType gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> PrimType -> m PrimType | |||||
Generic PrimType Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show PrimType Source # | |||||
Eq PrimType Source # | |||||
Ord PrimType Source # | |||||
Lift PrimType Source # | |||||
type Rep PrimType Source # | |||||
Defined in Text.LLVM.AST type Rep PrimType = D1 ('MetaData "PrimType" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) ((C1 ('MetaCons "Label" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Void" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Integer" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32)))) :+: (C1 ('MetaCons "FloatType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FloatType)) :+: (C1 ('MetaCons "X86mmx" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Metadata" 'PrefixI 'False) (U1 :: Type -> Type)))) |
Instances
Data FloatType Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> FloatType -> c FloatType gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c FloatType toConstr :: FloatType -> Constr dataTypeOf :: FloatType -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c FloatType) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c FloatType) gmapT :: (forall b. Data b => b -> b) -> FloatType -> FloatType gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> FloatType -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> FloatType -> r gmapQ :: (forall d. Data d => d -> u) -> FloatType -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> FloatType -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> FloatType -> m FloatType gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> FloatType -> m FloatType gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> FloatType -> m FloatType | |||||
Enum FloatType Source # | |||||
Defined in Text.LLVM.AST | |||||
Generic FloatType Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show FloatType Source # | |||||
Eq FloatType Source # | |||||
Ord FloatType Source # | |||||
Defined in Text.LLVM.AST | |||||
Lift FloatType Source # | |||||
type Rep FloatType Source # | |||||
Defined in Text.LLVM.AST type Rep FloatType = D1 ('MetaData "FloatType" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) ((C1 ('MetaCons "Half" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Float" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Double" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Fp128" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "X86_fp80" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "PPC_fp128" 'PrefixI 'False) (U1 :: Type -> Type)))) |
Constructors
PrimType PrimType | |
Alias ident | |
Array Word64 (Type' ident) | |
FunTy (Type' ident) [Type' ident] Bool | |
PtrTo (Type' ident) | A pointer to a memory location of a particular type. See also
LLVM pointers can also have an optional address space attribute, but this
is not currently represented in the |
PtrOpaque | A pointer to a memory location. Unlike LLVM pointers can also have an optional address space attribute, but this
is not currently represented in the
|
Struct [Type' ident] | |
PackedStruct [Type' ident] | |
Vector Word64 (Type' ident) | |
Opaque | An opaque structure type, used to represent structure types that do not have a body specified. This is similar to C's notion of a forward-declared structure.
|
Instances
Functor Type' Source # | |||||
Generic1 Type' Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
DefineArgs Type (Typed Value -> BB ()) Source # | |||||
Data ident => Data (Type' ident) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Type' ident -> c (Type' ident) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Type' ident) toConstr :: Type' ident -> Constr dataTypeOf :: Type' ident -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Type' ident)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Type' ident)) gmapT :: (forall b. Data b => b -> b) -> Type' ident -> Type' ident gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Type' ident -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Type' ident -> r gmapQ :: (forall d. Data d => d -> u) -> Type' ident -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Type' ident -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Type' ident -> m (Type' ident) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Type' ident -> m (Type' ident) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Type' ident -> m (Type' ident) | |||||
Generic (Type' ident) Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show ident => Show (Type' ident) Source # | |||||
Eq ident => Eq (Type' ident) Source # | |||||
Ord ident => Ord (Type' ident) Source # | |||||
DefineArgs as k => DefineArgs (Type :> as) (Typed Value -> k) Source # | |||||
DefineArgs (Type, Type) (Typed Value -> Typed Value -> BB ()) Source # | |||||
DefineArgs (Type, Type, Type) (Typed Value -> Typed Value -> Typed Value -> BB ()) Source # | |||||
type Rep1 Type' Source # | |||||
Defined in Text.LLVM.AST type Rep1 Type' = D1 ('MetaData "Type'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (((C1 ('MetaCons "PrimType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 PrimType)) :+: C1 ('MetaCons "Alias" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) Par1)) :+: (C1 ('MetaCons "Array" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 Type')) :+: (C1 ('MetaCons "FunTy" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 Type') :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) ([] :.: Rec1 Type') :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool))) :+: C1 ('MetaCons "PtrTo" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 Type'))))) :+: ((C1 ('MetaCons "PtrOpaque" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Struct" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) ([] :.: Rec1 Type'))) :+: (C1 ('MetaCons "PackedStruct" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) ([] :.: Rec1 Type')) :+: (C1 ('MetaCons "Vector" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 Type')) :+: C1 ('MetaCons "Opaque" 'PrefixI 'False) (U1 :: Type -> Type))))) | |||||
type Rep (Type' ident) Source # | |||||
Defined in Text.LLVM.AST type Rep (Type' ident) = D1 ('MetaData "Type'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (((C1 ('MetaCons "PrimType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 PrimType)) :+: C1 ('MetaCons "Alias" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ident))) :+: (C1 ('MetaCons "Array" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Type' ident))) :+: (C1 ('MetaCons "FunTy" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Type' ident)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Type' ident]) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool))) :+: C1 ('MetaCons "PtrTo" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Type' ident)))))) :+: ((C1 ('MetaCons "PtrOpaque" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Struct" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Type' ident]))) :+: (C1 ('MetaCons "PackedStruct" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Type' ident])) :+: (C1 ('MetaCons "Vector" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Type' ident))) :+: C1 ('MetaCons "Opaque" 'PrefixI 'False) (U1 :: Type -> Type))))) |
updateAliasesA :: Applicative f => (a -> f (Type' b)) -> Type' a -> f (Type' b) Source #
Applicatively traverse a type, updating or removing aliases.
updateAliases :: (a -> Type' b) -> Type' a -> Type' b Source #
Traverse a type, updating or removing aliases.
isFloatingPoint :: PrimType -> Bool Source #
isPrimTypeOf :: (PrimType -> Bool) -> Type -> Bool Source #
isVectorOf :: (Type -> Bool) -> Type -> Bool Source #
eqTypeModuloOpaquePtrs :: Eq ident => Type' ident -> Type' ident -> Bool Source #
cmpTypeModuloOpaquePtrs :: Ord ident => Type' ident -> Type' ident -> Ordering Source #
fixupOpaquePtrs :: Data a => a -> a Source #
Ensure that if there are any occurrences of opaque pointers, then all non-opaque pointers are converted to opaque ones.
This is useful because LLVM tools like llvm-as
are stricter than
llvm-pretty
in that the former forbids mixing opaque and non-opaque
pointers, whereas the latter allows this. As a result, the result of
pretty-printing an llvm-pretty
AST might not be suitable for llvm-as
's
needs unless you first call this function to ensure that the two types of
pointers are not intermixed.
This is implemented using Data.Data combinators under the hood, which could
potentially require a full traversal of the AST. Because of the performance
implications of this, we do not call fixupOpaquePtrs
in llvm-pretty
's
pretty-printer. If you wish to combine opaque and non-opaque pointers in your
AST, the burden is on you to call this function before pretty-printing.
Null values
data NullResult lab Source #
Constructors
HasNull (Value' lab) | |
ResolveNull Ident |
Instances
Functor NullResult Source # | |||||
Defined in Text.LLVM.AST | |||||
Generic1 NullResult Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Data lab => Data (NullResult lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> NullResult lab -> c (NullResult lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (NullResult lab) toConstr :: NullResult lab -> Constr dataTypeOf :: NullResult lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (NullResult lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (NullResult lab)) gmapT :: (forall b. Data b => b -> b) -> NullResult lab -> NullResult lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> NullResult lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> NullResult lab -> r gmapQ :: (forall d. Data d => d -> u) -> NullResult lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> NullResult lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> NullResult lab -> m (NullResult lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> NullResult lab -> m (NullResult lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> NullResult lab -> m (NullResult lab) | |||||
Generic (NullResult lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from :: NullResult lab -> Rep (NullResult lab) x to :: Rep (NullResult lab) x -> NullResult lab | |||||
Show lab => Show (NullResult lab) Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> NullResult lab -> ShowS show :: NullResult lab -> String showList :: [NullResult lab] -> ShowS | |||||
Eq lab => Eq (NullResult lab) Source # | |||||
Defined in Text.LLVM.AST Methods (==) :: NullResult lab -> NullResult lab -> Bool (/=) :: NullResult lab -> NullResult lab -> Bool | |||||
Ord lab => Ord (NullResult lab) Source # | |||||
Defined in Text.LLVM.AST Methods compare :: NullResult lab -> NullResult lab -> Ordering (<) :: NullResult lab -> NullResult lab -> Bool (<=) :: NullResult lab -> NullResult lab -> Bool (>) :: NullResult lab -> NullResult lab -> Bool (>=) :: NullResult lab -> NullResult lab -> Bool max :: NullResult lab -> NullResult lab -> NullResult lab min :: NullResult lab -> NullResult lab -> NullResult lab | |||||
type Rep1 NullResult Source # | |||||
Defined in Text.LLVM.AST type Rep1 NullResult = D1 ('MetaData "NullResult" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "HasNull" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 Value')) :+: C1 ('MetaCons "ResolveNull" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Ident))) | |||||
type Rep (NullResult lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (NullResult lab) = D1 ('MetaData "NullResult" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "HasNull" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Value' lab))) :+: C1 ('MetaCons "ResolveNull" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Ident))) |
primTypeNull :: PrimType -> Value' lab Source #
floatTypeNull :: FloatType -> Value' lab Source #
typeNull :: Type -> NullResult lab Source #
Type Elimination
elimVector :: MonadPlus m => Type -> m (Word64, Type) Source #
elimPrimType :: MonadPlus m => Type -> m PrimType Source #
elimFloatType :: MonadPlus m => PrimType -> m FloatType Source #
elimSequentialType :: MonadPlus m => Type -> m Type Source #
Eliminator for array, pointer and vector types.
Top-level Type Aliases
Instances
Data TypeDecl Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> TypeDecl -> c TypeDecl gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c TypeDecl toConstr :: TypeDecl -> Constr dataTypeOf :: TypeDecl -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c TypeDecl) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c TypeDecl) gmapT :: (forall b. Data b => b -> b) -> TypeDecl -> TypeDecl gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> TypeDecl -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> TypeDecl -> r gmapQ :: (forall d. Data d => d -> u) -> TypeDecl -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> TypeDecl -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> TypeDecl -> m TypeDecl gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> TypeDecl -> m TypeDecl gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> TypeDecl -> m TypeDecl | |||||
Generic TypeDecl Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show TypeDecl Source # | |||||
Eq TypeDecl Source # | |||||
Ord TypeDecl Source # | |||||
type Rep TypeDecl Source # | |||||
Defined in Text.LLVM.AST type Rep TypeDecl = D1 ('MetaData "TypeDecl" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "TypeDecl" 'PrefixI 'True) (S1 ('MetaSel ('Just "typeName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Ident) :*: S1 ('MetaSel ('Just "typeValue") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type))) |
Globals
Constructors
Global | |
Fields
|
Instances
Data Global Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Global -> c Global gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Global dataTypeOf :: Global -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Global) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Global) gmapT :: (forall b. Data b => b -> b) -> Global -> Global gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Global -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Global -> r gmapQ :: (forall d. Data d => d -> u) -> Global -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Global -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Global -> m Global gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Global -> m Global gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Global -> m Global | |||||
Generic Global Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show Global Source # | |||||
Eq Global Source # | |||||
Ord Global Source # | |||||
type Rep Global Source # | |||||
Defined in Text.LLVM.AST type Rep Global = D1 ('MetaData "Global" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "Global" 'PrefixI 'True) ((S1 ('MetaSel ('Just "globalSym") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Symbol) :*: (S1 ('MetaSel ('Just "globalAttrs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 GlobalAttrs) :*: S1 ('MetaSel ('Just "globalType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type))) :*: (S1 ('MetaSel ('Just "globalValue") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Value)) :*: (S1 ('MetaSel ('Just "globalAlign") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Align)) :*: S1 ('MetaSel ('Just "globalMetadata") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 GlobalMdAttachments))))) |
data GlobalAttrs Source #
Constructors
GlobalAttrs | |
Fields
|
Instances
Data GlobalAttrs Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> GlobalAttrs -> c GlobalAttrs gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c GlobalAttrs toConstr :: GlobalAttrs -> Constr dataTypeOf :: GlobalAttrs -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c GlobalAttrs) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c GlobalAttrs) gmapT :: (forall b. Data b => b -> b) -> GlobalAttrs -> GlobalAttrs gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> GlobalAttrs -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> GlobalAttrs -> r gmapQ :: (forall d. Data d => d -> u) -> GlobalAttrs -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> GlobalAttrs -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> GlobalAttrs -> m GlobalAttrs gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> GlobalAttrs -> m GlobalAttrs gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> GlobalAttrs -> m GlobalAttrs | |||||
Generic GlobalAttrs Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show GlobalAttrs Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> GlobalAttrs -> ShowS show :: GlobalAttrs -> String showList :: [GlobalAttrs] -> ShowS | |||||
Eq GlobalAttrs Source # | |||||
Defined in Text.LLVM.AST | |||||
Ord GlobalAttrs Source # | |||||
Defined in Text.LLVM.AST Methods compare :: GlobalAttrs -> GlobalAttrs -> Ordering (<) :: GlobalAttrs -> GlobalAttrs -> Bool (<=) :: GlobalAttrs -> GlobalAttrs -> Bool (>) :: GlobalAttrs -> GlobalAttrs -> Bool (>=) :: GlobalAttrs -> GlobalAttrs -> Bool max :: GlobalAttrs -> GlobalAttrs -> GlobalAttrs min :: GlobalAttrs -> GlobalAttrs -> GlobalAttrs | |||||
type Rep GlobalAttrs Source # | |||||
Defined in Text.LLVM.AST type Rep GlobalAttrs = D1 ('MetaData "GlobalAttrs" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "GlobalAttrs" 'PrefixI 'True) (S1 ('MetaSel ('Just "gaLinkage") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Linkage)) :*: (S1 ('MetaSel ('Just "gaVisibility") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Visibility)) :*: S1 ('MetaSel ('Just "gaConstant") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)))) |
Declarations
Constructors
Declare | |
Fields
|
Instances
Data Declare Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Declare -> c Declare gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Declare dataTypeOf :: Declare -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Declare) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Declare) gmapT :: (forall b. Data b => b -> b) -> Declare -> Declare gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Declare -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Declare -> r gmapQ :: (forall d. Data d => d -> u) -> Declare -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Declare -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Declare -> m Declare gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Declare -> m Declare gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Declare -> m Declare | |||||
Generic Declare Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show Declare Source # | |||||
Eq Declare Source # | |||||
Ord Declare Source # | |||||
type Rep Declare Source # | |||||
Defined in Text.LLVM.AST type Rep Declare = D1 ('MetaData "Declare" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "Declare" 'PrefixI 'True) (((S1 ('MetaSel ('Just "decLinkage") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Linkage)) :*: S1 ('MetaSel ('Just "decVisibility") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Visibility))) :*: (S1 ('MetaSel ('Just "decRetType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type) :*: S1 ('MetaSel ('Just "decName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Symbol))) :*: ((S1 ('MetaSel ('Just "decArgs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Type]) :*: S1 ('MetaSel ('Just "decVarArgs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)) :*: (S1 ('MetaSel ('Just "decAttrs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [FunAttr]) :*: S1 ('MetaSel ('Just "decComdat") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)))))) |
decFunType :: Declare -> Type Source #
The function type of this declaration
Function Definitions
Constructors
Define | |
Fields
|
Instances
Data Define Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Define -> c Define gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Define dataTypeOf :: Define -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Define) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Define) gmapT :: (forall b. Data b => b -> b) -> Define -> Define gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Define -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Define -> r gmapQ :: (forall d. Data d => d -> u) -> Define -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Define -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Define -> m Define gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Define -> m Define gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Define -> m Define | |||||
Generic Define Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show Define Source # | |||||
Eq Define Source # | |||||
Ord Define Source # | |||||
type Rep Define Source # | |||||
Defined in Text.LLVM.AST type Rep Define = D1 ('MetaData "Define" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "Define" 'PrefixI 'True) (((S1 ('MetaSel ('Just "defLinkage") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Linkage)) :*: (S1 ('MetaSel ('Just "defVisibility") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Visibility)) :*: S1 ('MetaSel ('Just "defRetType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type))) :*: (S1 ('MetaSel ('Just "defName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Symbol) :*: (S1 ('MetaSel ('Just "defArgs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Typed Ident]) :*: S1 ('MetaSel ('Just "defVarArgs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)))) :*: ((S1 ('MetaSel ('Just "defAttrs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [FunAttr]) :*: (S1 ('MetaSel ('Just "defSection") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)) :*: S1 ('MetaSel ('Just "defGC") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe GC)))) :*: (S1 ('MetaSel ('Just "defBody") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [BasicBlock]) :*: (S1 ('MetaSel ('Just "defMetadata") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FnMdAttachments) :*: S1 ('MetaSel ('Just "defComdat") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String))))))) |
defFunType :: Define -> Type Source #
Function Attributes and attribute groups
Constructors
Instances
Data FunAttr Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> FunAttr -> c FunAttr gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c FunAttr dataTypeOf :: FunAttr -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c FunAttr) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c FunAttr) gmapT :: (forall b. Data b => b -> b) -> FunAttr -> FunAttr gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> FunAttr -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> FunAttr -> r gmapQ :: (forall d. Data d => d -> u) -> FunAttr -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> FunAttr -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> FunAttr -> m FunAttr gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> FunAttr -> m FunAttr gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> FunAttr -> m FunAttr | |||||
Generic FunAttr Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show FunAttr Source # | |||||
Eq FunAttr Source # | |||||
Ord FunAttr Source # | |||||
type Rep FunAttr Source # | |||||
Defined in Text.LLVM.AST type Rep FunAttr = D1 ('MetaData "FunAttr" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) ((((C1 ('MetaCons "AlignStack" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)) :+: (C1 ('MetaCons "Alwaysinline" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Builtin" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "Cold" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Inlinehint" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Jumptable" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Minsize" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Naked" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Nobuiltin" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Noduplicate" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "Noimplicitfloat" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Noinline" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Nonlazybind" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Noredzone" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "Noreturn" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Nounwind" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Optnone" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "Optsize" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Readnone" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Readonly" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ReturnsTwice" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "SanitizeAddress" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "SanitizeMemory" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SanitizeThread" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "SSP" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SSPreq" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "SSPstrong" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "UWTable" 'PrefixI 'False) (U1 :: Type -> Type)))))) |
Basic Block Labels
data BlockLabel Source #
Instances
Data BlockLabel Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> BlockLabel -> c BlockLabel gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c BlockLabel toConstr :: BlockLabel -> Constr dataTypeOf :: BlockLabel -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c BlockLabel) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c BlockLabel) gmapT :: (forall b. Data b => b -> b) -> BlockLabel -> BlockLabel gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> BlockLabel -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> BlockLabel -> r gmapQ :: (forall d. Data d => d -> u) -> BlockLabel -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> BlockLabel -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> BlockLabel -> m BlockLabel gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> BlockLabel -> m BlockLabel gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> BlockLabel -> m BlockLabel | |||||
IsString BlockLabel Source # | |||||
Defined in Text.LLVM.AST Methods fromString :: String -> BlockLabel | |||||
Generic BlockLabel Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show BlockLabel Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> BlockLabel -> ShowS show :: BlockLabel -> String showList :: [BlockLabel] -> ShowS | |||||
Eq BlockLabel Source # | |||||
Defined in Text.LLVM.AST | |||||
Ord BlockLabel Source # | |||||
Defined in Text.LLVM.AST Methods compare :: BlockLabel -> BlockLabel -> Ordering (<) :: BlockLabel -> BlockLabel -> Bool (<=) :: BlockLabel -> BlockLabel -> Bool (>) :: BlockLabel -> BlockLabel -> Bool (>=) :: BlockLabel -> BlockLabel -> Bool max :: BlockLabel -> BlockLabel -> BlockLabel min :: BlockLabel -> BlockLabel -> BlockLabel | |||||
IsValue Value Source # | |||||
DefineArgs Type (Typed Value -> BB ()) Source # | |||||
DefineArgs as k => DefineArgs (Type :> as) (Typed Value -> k) Source # | |||||
DefineArgs (Type, Type) (Typed Value -> Typed Value -> BB ()) Source # | |||||
DefineArgs (Type, Type, Type) (Typed Value -> Typed Value -> Typed Value -> BB ()) Source # | |||||
type Rep BlockLabel Source # | |||||
Defined in Text.LLVM.AST type Rep BlockLabel = D1 ('MetaData "BlockLabel" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "Named" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Ident)) :+: C1 ('MetaCons "Anon" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int))) |
Basic Blocks
data BasicBlock' lab Source #
Constructors
BasicBlock | |
Instances
Functor BasicBlock' Source # | |||||
Defined in Text.LLVM.AST Methods fmap :: (a -> b) -> BasicBlock' a -> BasicBlock' b (<$) :: a -> BasicBlock' b -> BasicBlock' a | |||||
Generic1 BasicBlock' Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Data lab => Data (BasicBlock' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> BasicBlock' lab -> c (BasicBlock' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (BasicBlock' lab) toConstr :: BasicBlock' lab -> Constr dataTypeOf :: BasicBlock' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (BasicBlock' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (BasicBlock' lab)) gmapT :: (forall b. Data b => b -> b) -> BasicBlock' lab -> BasicBlock' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> BasicBlock' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> BasicBlock' lab -> r gmapQ :: (forall d. Data d => d -> u) -> BasicBlock' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> BasicBlock' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> BasicBlock' lab -> m (BasicBlock' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> BasicBlock' lab -> m (BasicBlock' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> BasicBlock' lab -> m (BasicBlock' lab) | |||||
Generic (BasicBlock' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from :: BasicBlock' lab -> Rep (BasicBlock' lab) x to :: Rep (BasicBlock' lab) x -> BasicBlock' lab | |||||
Show lab => Show (BasicBlock' lab) Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> BasicBlock' lab -> ShowS show :: BasicBlock' lab -> String showList :: [BasicBlock' lab] -> ShowS | |||||
Eq lab => Eq (BasicBlock' lab) Source # | |||||
Defined in Text.LLVM.AST Methods (==) :: BasicBlock' lab -> BasicBlock' lab -> Bool (/=) :: BasicBlock' lab -> BasicBlock' lab -> Bool | |||||
Ord lab => Ord (BasicBlock' lab) Source # | |||||
Defined in Text.LLVM.AST Methods compare :: BasicBlock' lab -> BasicBlock' lab -> Ordering (<) :: BasicBlock' lab -> BasicBlock' lab -> Bool (<=) :: BasicBlock' lab -> BasicBlock' lab -> Bool (>) :: BasicBlock' lab -> BasicBlock' lab -> Bool (>=) :: BasicBlock' lab -> BasicBlock' lab -> Bool max :: BasicBlock' lab -> BasicBlock' lab -> BasicBlock' lab min :: BasicBlock' lab -> BasicBlock' lab -> BasicBlock' lab | |||||
type Rep1 BasicBlock' Source # | |||||
Defined in Text.LLVM.AST type Rep1 BasicBlock' = D1 ('MetaData "BasicBlock'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "BasicBlock" 'PrefixI 'True) (S1 ('MetaSel ('Just "bbLabel") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 Maybe) :*: S1 ('MetaSel ('Just "bbStmts") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) ([] :.: Rec1 Stmt'))) | |||||
type Rep (BasicBlock' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (BasicBlock' lab) = D1 ('MetaData "BasicBlock'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "BasicBlock" 'PrefixI 'True) (S1 ('MetaSel ('Just "bbLabel") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe lab)) :*: S1 ('MetaSel ('Just "bbStmts") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Stmt' lab]))) |
type BasicBlock = BasicBlock' BlockLabel Source #
brTargets :: BasicBlock' lab -> [lab] Source #
Attributes
Symbol Linkage
Constructors
Private | |
LinkerPrivate | |
LinkerPrivateWeak | |
LinkerPrivateWeakDefAuto | |
Internal | |
AvailableExternally | |
Linkonce | |
Weak | |
Common | |
Appending | |
ExternWeak | |
LinkonceODR | |
WeakODR | |
External | |
DLLImport | |
DLLExport |
Instances
Data Linkage Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Linkage -> c Linkage gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Linkage dataTypeOf :: Linkage -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Linkage) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Linkage) gmapT :: (forall b. Data b => b -> b) -> Linkage -> Linkage gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Linkage -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Linkage -> r gmapQ :: (forall d. Data d => d -> u) -> Linkage -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Linkage -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Linkage -> m Linkage gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Linkage -> m Linkage gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Linkage -> m Linkage | |||||
Enum Linkage Source # | |||||
Defined in Text.LLVM.AST | |||||
Generic Linkage Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show Linkage Source # | |||||
Eq Linkage Source # | |||||
Ord Linkage Source # | |||||
type Rep Linkage Source # | |||||
Defined in Text.LLVM.AST type Rep Linkage = D1 ('MetaData "Linkage" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) ((((C1 ('MetaCons "Private" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LinkerPrivate" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "LinkerPrivateWeak" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LinkerPrivateWeakDefAuto" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "Internal" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "AvailableExternally" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Linkonce" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Weak" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: (((C1 ('MetaCons "Common" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Appending" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "ExternWeak" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LinkonceODR" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "WeakODR" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "External" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "DLLImport" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DLLExport" 'PrefixI 'False) (U1 :: Type -> Type))))) |
data Visibility Source #
Constructors
DefaultVisibility | |
HiddenVisibility | |
ProtectedVisibility |
Instances
Data Visibility Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Visibility -> c Visibility gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Visibility toConstr :: Visibility -> Constr dataTypeOf :: Visibility -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Visibility) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Visibility) gmapT :: (forall b. Data b => b -> b) -> Visibility -> Visibility gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Visibility -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Visibility -> r gmapQ :: (forall d. Data d => d -> u) -> Visibility -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Visibility -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Visibility -> m Visibility gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Visibility -> m Visibility gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Visibility -> m Visibility | |||||
Generic Visibility Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show Visibility Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> Visibility -> ShowS show :: Visibility -> String showList :: [Visibility] -> ShowS | |||||
Eq Visibility Source # | |||||
Defined in Text.LLVM.AST | |||||
Ord Visibility Source # | |||||
Defined in Text.LLVM.AST Methods compare :: Visibility -> Visibility -> Ordering (<) :: Visibility -> Visibility -> Bool (<=) :: Visibility -> Visibility -> Bool (>) :: Visibility -> Visibility -> Bool (>=) :: Visibility -> Visibility -> Bool max :: Visibility -> Visibility -> Visibility min :: Visibility -> Visibility -> Visibility | |||||
type Rep Visibility Source # | |||||
Defined in Text.LLVM.AST type Rep Visibility = D1 ('MetaData "Visibility" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DefaultVisibility" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "HiddenVisibility" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ProtectedVisibility" 'PrefixI 'False) (U1 :: Type -> Type))) |
Instances
Data GC Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> GC -> c GC gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c GC dataTypeOf :: GC -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c GC) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c GC) gmapT :: (forall b. Data b => b -> b) -> GC -> GC gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> GC -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> GC -> r gmapQ :: (forall d. Data d => d -> u) -> GC -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> GC -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> GC -> m GC gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> GC -> m GC gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> GC -> m GC | |||||
Generic GC Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show GC Source # | |||||
Eq GC Source # | |||||
Ord GC Source # | |||||
type Rep GC Source # | |||||
Defined in Text.LLVM.AST type Rep GC = D1 ('MetaData "GC" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'True) (C1 ('MetaCons "GC" 'PrefixI 'True) (S1 ('MetaSel ('Just "getGC") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String))) |
Typed Things
Constructors
Typed | |
Fields
|
Instances
Foldable Typed Source # | |||||
Defined in Text.LLVM.AST Methods fold :: Monoid m => Typed m -> m foldMap :: Monoid m => (a -> m) -> Typed a -> m foldMap' :: Monoid m => (a -> m) -> Typed a -> m foldr :: (a -> b -> b) -> b -> Typed a -> b foldr' :: (a -> b -> b) -> b -> Typed a -> b foldl :: (b -> a -> b) -> b -> Typed a -> b foldl' :: (b -> a -> b) -> b -> Typed a -> b foldr1 :: (a -> a -> a) -> Typed a -> a foldl1 :: (a -> a -> a) -> Typed a -> a elem :: Eq a => a -> Typed a -> Bool maximum :: Ord a => Typed a -> a | |||||
Traversable Typed Source # | |||||
Functor Typed Source # | |||||
Generic1 Typed Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
DefineArgs Type (Typed Value -> BB ()) Source # | |||||
Data a => Data (Typed a) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Typed a -> c (Typed a) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Typed a) dataTypeOf :: Typed a -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Typed a)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Typed a)) gmapT :: (forall b. Data b => b -> b) -> Typed a -> Typed a gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Typed a -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Typed a -> r gmapQ :: (forall d. Data d => d -> u) -> Typed a -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Typed a -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Typed a -> m (Typed a) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Typed a -> m (Typed a) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Typed a -> m (Typed a) | |||||
Generic (Typed a) Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show a => Show (Typed a) Source # | |||||
Eq a => Eq (Typed a) Source # | |||||
Ord a => Ord (Typed a) Source # | |||||
IsValue a => IsValue (Typed a) Source # | |||||
DefineArgs as k => DefineArgs (Type :> as) (Typed Value -> k) Source # | |||||
DefineArgs (Type, Type) (Typed Value -> Typed Value -> BB ()) Source # | |||||
DefineArgs (Type, Type, Type) (Typed Value -> Typed Value -> Typed Value -> BB ()) Source # | |||||
type Rep1 Typed Source # | |||||
Defined in Text.LLVM.AST type Rep1 Typed = D1 ('MetaData "Typed" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "Typed" 'PrefixI 'True) (S1 ('MetaSel ('Just "typedType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type) :*: S1 ('MetaSel ('Just "typedValue") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) Par1)) | |||||
type Rep (Typed a) Source # | |||||
Defined in Text.LLVM.AST type Rep (Typed a) = D1 ('MetaData "Typed" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "Typed" 'PrefixI 'True) (S1 ('MetaSel ('Just "typedType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type) :*: S1 ('MetaSel ('Just "typedValue") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a))) |
Instructions
Constructors
Add Bool Bool |
|
FAdd | Floating point addition. |
Sub Bool Bool |
|
FSub | Floating point subtraction. |
Mul Bool Bool |
|
FMul | Floating point multiplication. |
UDiv Bool |
|
SDiv Bool |
|
FDiv | Floating point division. |
URem | Integral unsigned reminder resulting from unsigned division. Division by 0 is undefined. |
SRem |
|
FRem |
|
Instances
Data ArithOp Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ArithOp -> c ArithOp gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ArithOp dataTypeOf :: ArithOp -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ArithOp) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ArithOp) gmapT :: (forall b. Data b => b -> b) -> ArithOp -> ArithOp gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ArithOp -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ArithOp -> r gmapQ :: (forall d. Data d => d -> u) -> ArithOp -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> ArithOp -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> ArithOp -> m ArithOp gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ArithOp -> m ArithOp gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ArithOp -> m ArithOp | |||||
Generic ArithOp Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show ArithOp Source # | |||||
Eq ArithOp Source # | |||||
Ord ArithOp Source # | |||||
type Rep ArithOp Source # | |||||
Defined in Text.LLVM.AST type Rep ArithOp = D1 ('MetaData "ArithOp" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (((C1 ('MetaCons "Add" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)) :+: (C1 ('MetaCons "FAdd" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Sub" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)))) :+: (C1 ('MetaCons "FSub" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Mul" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)) :+: C1 ('MetaCons "FMul" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "UDiv" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)) :+: (C1 ('MetaCons "SDiv" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)) :+: C1 ('MetaCons "FDiv" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "URem" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "SRem" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "FRem" 'PrefixI 'False) (U1 :: Type -> Type))))) |
data UnaryArithOp Source #
Constructors
FNeg | Floating point negation. |
Instances
Data UnaryArithOp Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> UnaryArithOp -> c UnaryArithOp gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c UnaryArithOp toConstr :: UnaryArithOp -> Constr dataTypeOf :: UnaryArithOp -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c UnaryArithOp) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c UnaryArithOp) gmapT :: (forall b. Data b => b -> b) -> UnaryArithOp -> UnaryArithOp gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> UnaryArithOp -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> UnaryArithOp -> r gmapQ :: (forall d. Data d => d -> u) -> UnaryArithOp -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> UnaryArithOp -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> UnaryArithOp -> m UnaryArithOp gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> UnaryArithOp -> m UnaryArithOp gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> UnaryArithOp -> m UnaryArithOp | |||||
Generic UnaryArithOp Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show UnaryArithOp Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> UnaryArithOp -> ShowS show :: UnaryArithOp -> String showList :: [UnaryArithOp] -> ShowS | |||||
Eq UnaryArithOp Source # | |||||
Defined in Text.LLVM.AST | |||||
Ord UnaryArithOp Source # | |||||
Defined in Text.LLVM.AST Methods compare :: UnaryArithOp -> UnaryArithOp -> Ordering (<) :: UnaryArithOp -> UnaryArithOp -> Bool (<=) :: UnaryArithOp -> UnaryArithOp -> Bool (>) :: UnaryArithOp -> UnaryArithOp -> Bool (>=) :: UnaryArithOp -> UnaryArithOp -> Bool max :: UnaryArithOp -> UnaryArithOp -> UnaryArithOp min :: UnaryArithOp -> UnaryArithOp -> UnaryArithOp | |||||
type Rep UnaryArithOp Source # | |||||
Defined in Text.LLVM.AST type Rep UnaryArithOp = D1 ('MetaData "UnaryArithOp" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "FNeg" 'PrefixI 'False) (U1 :: Type -> Type)) |
Binary bitwise operators.
Constructors
Shl Bool Bool |
|
Lshr Bool |
The value of the second parameter must be strictly less than the number of bits in the first parameter, otherwise the result is undefined. |
Ashr Bool |
The value of the second parameter must be strictly less than the number of bits in the first parameter, otherwise the result is undefined. |
And | |
Or | |
Xor |
Instances
Data BitOp Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> BitOp -> c BitOp gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c BitOp dataTypeOf :: BitOp -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c BitOp) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c BitOp) gmapT :: (forall b. Data b => b -> b) -> BitOp -> BitOp gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> BitOp -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> BitOp -> r gmapQ :: (forall d. Data d => d -> u) -> BitOp -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> BitOp -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> BitOp -> m BitOp gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> BitOp -> m BitOp gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> BitOp -> m BitOp | |||||
Generic BitOp Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show BitOp Source # | |||||
Eq BitOp Source # | |||||
Ord BitOp Source # | |||||
type Rep BitOp Source # | |||||
Defined in Text.LLVM.AST type Rep BitOp = D1 ('MetaData "BitOp" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) ((C1 ('MetaCons "Shl" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)) :+: (C1 ('MetaCons "Lshr" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)) :+: C1 ('MetaCons "Ashr" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)))) :+: (C1 ('MetaCons "And" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Or" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Xor" 'PrefixI 'False) (U1 :: Type -> Type)))) |
Conversions from one type to another.
Instances
Data ConvOp Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ConvOp -> c ConvOp gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ConvOp dataTypeOf :: ConvOp -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ConvOp) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ConvOp) gmapT :: (forall b. Data b => b -> b) -> ConvOp -> ConvOp gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ConvOp -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ConvOp -> r gmapQ :: (forall d. Data d => d -> u) -> ConvOp -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> ConvOp -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> ConvOp -> m ConvOp gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ConvOp -> m ConvOp gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ConvOp -> m ConvOp | |||||
Enum ConvOp Source # | |||||
Defined in Text.LLVM.AST | |||||
Generic ConvOp Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show ConvOp Source # | |||||
Eq ConvOp Source # | |||||
Ord ConvOp Source # | |||||
type Rep ConvOp Source # | |||||
Defined in Text.LLVM.AST type Rep ConvOp = D1 ('MetaData "ConvOp" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (((C1 ('MetaCons "Trunc" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "ZExt" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SExt" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "FpTrunc" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "FpExt" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "FpToUi" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "FpToSi" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "UiToFp" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SiToFp" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "PtrToInt" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "IntToPtr" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BitCast" 'PrefixI 'False) (U1 :: Type -> Type))))) |
data AtomicRWOp Source #
Constructors
AtomicXchg | |
AtomicAdd | |
AtomicSub | |
AtomicAnd | |
AtomicNand | |
AtomicOr | |
AtomicXor | |
AtomicMax | |
AtomicMin | |
AtomicUMax | |
AtomicUMin | |
AtomicFAdd | Introduced in LLVM 9 |
AtomicFSub | Introduced in LLVM 9 |
AtomicFMax | Introduced in LLVM 15 |
AtomicFMin | Introduced in LLVM 15 |
AtomicUIncWrap | Introduced in LLVM 16 |
AtomicUDecWrap | Introduced in LLVM 16 |
Instances
Data AtomicRWOp Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> AtomicRWOp -> c AtomicRWOp gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c AtomicRWOp toConstr :: AtomicRWOp -> Constr dataTypeOf :: AtomicRWOp -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c AtomicRWOp) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c AtomicRWOp) gmapT :: (forall b. Data b => b -> b) -> AtomicRWOp -> AtomicRWOp gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> AtomicRWOp -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> AtomicRWOp -> r gmapQ :: (forall d. Data d => d -> u) -> AtomicRWOp -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> AtomicRWOp -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> AtomicRWOp -> m AtomicRWOp gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> AtomicRWOp -> m AtomicRWOp gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> AtomicRWOp -> m AtomicRWOp | |||||
Enum AtomicRWOp Source # | |||||
Defined in Text.LLVM.AST Methods succ :: AtomicRWOp -> AtomicRWOp pred :: AtomicRWOp -> AtomicRWOp toEnum :: Int -> AtomicRWOp fromEnum :: AtomicRWOp -> Int enumFrom :: AtomicRWOp -> [AtomicRWOp] enumFromThen :: AtomicRWOp -> AtomicRWOp -> [AtomicRWOp] enumFromTo :: AtomicRWOp -> AtomicRWOp -> [AtomicRWOp] enumFromThenTo :: AtomicRWOp -> AtomicRWOp -> AtomicRWOp -> [AtomicRWOp] | |||||
Generic AtomicRWOp Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show AtomicRWOp Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> AtomicRWOp -> ShowS show :: AtomicRWOp -> String showList :: [AtomicRWOp] -> ShowS | |||||
Eq AtomicRWOp Source # | |||||
Defined in Text.LLVM.AST | |||||
Ord AtomicRWOp Source # | |||||
Defined in Text.LLVM.AST Methods compare :: AtomicRWOp -> AtomicRWOp -> Ordering (<) :: AtomicRWOp -> AtomicRWOp -> Bool (<=) :: AtomicRWOp -> AtomicRWOp -> Bool (>) :: AtomicRWOp -> AtomicRWOp -> Bool (>=) :: AtomicRWOp -> AtomicRWOp -> Bool max :: AtomicRWOp -> AtomicRWOp -> AtomicRWOp min :: AtomicRWOp -> AtomicRWOp -> AtomicRWOp | |||||
type Rep AtomicRWOp Source # | |||||
Defined in Text.LLVM.AST type Rep AtomicRWOp = D1 ('MetaData "AtomicRWOp" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) ((((C1 ('MetaCons "AtomicXchg" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "AtomicAdd" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "AtomicSub" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "AtomicAnd" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "AtomicNand" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "AtomicOr" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "AtomicXor" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "AtomicMax" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: (((C1 ('MetaCons "AtomicMin" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "AtomicUMax" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "AtomicUMin" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "AtomicFAdd" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "AtomicFSub" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "AtomicFMax" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "AtomicFMin" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "AtomicUIncWrap" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "AtomicUDecWrap" 'PrefixI 'False) (U1 :: Type -> Type)))))) |
data AtomicOrdering Source #
Instances
Data AtomicOrdering Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> AtomicOrdering -> c AtomicOrdering gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c AtomicOrdering toConstr :: AtomicOrdering -> Constr dataTypeOf :: AtomicOrdering -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c AtomicOrdering) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c AtomicOrdering) gmapT :: (forall b. Data b => b -> b) -> AtomicOrdering -> AtomicOrdering gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> AtomicOrdering -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> AtomicOrdering -> r gmapQ :: (forall d. Data d => d -> u) -> AtomicOrdering -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> AtomicOrdering -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> AtomicOrdering -> m AtomicOrdering gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> AtomicOrdering -> m AtomicOrdering gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> AtomicOrdering -> m AtomicOrdering | |||||
Enum AtomicOrdering Source # | |||||
Defined in Text.LLVM.AST Methods succ :: AtomicOrdering -> AtomicOrdering pred :: AtomicOrdering -> AtomicOrdering toEnum :: Int -> AtomicOrdering fromEnum :: AtomicOrdering -> Int enumFrom :: AtomicOrdering -> [AtomicOrdering] enumFromThen :: AtomicOrdering -> AtomicOrdering -> [AtomicOrdering] enumFromTo :: AtomicOrdering -> AtomicOrdering -> [AtomicOrdering] enumFromThenTo :: AtomicOrdering -> AtomicOrdering -> AtomicOrdering -> [AtomicOrdering] | |||||
Generic AtomicOrdering Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show AtomicOrdering Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> AtomicOrdering -> ShowS show :: AtomicOrdering -> String showList :: [AtomicOrdering] -> ShowS | |||||
Eq AtomicOrdering Source # | |||||
Defined in Text.LLVM.AST Methods (==) :: AtomicOrdering -> AtomicOrdering -> Bool (/=) :: AtomicOrdering -> AtomicOrdering -> Bool | |||||
Ord AtomicOrdering Source # | |||||
Defined in Text.LLVM.AST Methods compare :: AtomicOrdering -> AtomicOrdering -> Ordering (<) :: AtomicOrdering -> AtomicOrdering -> Bool (<=) :: AtomicOrdering -> AtomicOrdering -> Bool (>) :: AtomicOrdering -> AtomicOrdering -> Bool (>=) :: AtomicOrdering -> AtomicOrdering -> Bool max :: AtomicOrdering -> AtomicOrdering -> AtomicOrdering min :: AtomicOrdering -> AtomicOrdering -> AtomicOrdering | |||||
type Rep AtomicOrdering Source # | |||||
Defined in Text.LLVM.AST type Rep AtomicOrdering = D1 ('MetaData "AtomicOrdering" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) ((C1 ('MetaCons "Unordered" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Monotonic" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Acquire" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Release" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "AcqRel" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SeqCst" 'PrefixI 'False) (U1 :: Type -> Type)))) |
Constructors
Ret (Typed (Value' lab)) |
|
RetVoid |
|
Arith ArithOp (Typed (Value' lab)) (Value' lab) |
|
UnaryArith UnaryArithOp (Typed (Value' lab)) |
|
Bit BitOp (Typed (Value' lab)) (Value' lab) |
|
Conv ConvOp (Typed (Value' lab)) Type |
|
Call Bool Type (Value' lab) [Typed (Value' lab)] |
|
CallBr Type (Value' lab) [Typed (Value' lab)] lab [lab] |
|
Alloca Type (Maybe (Typed (Value' lab))) (Maybe Int) |
|
Load Type (Typed (Value' lab)) (Maybe AtomicOrdering) (Maybe Align) |
|
Store (Typed (Value' lab)) (Typed (Value' lab)) (Maybe AtomicOrdering) (Maybe Align) |
|
Fence (Maybe String) AtomicOrdering |
|
CmpXchg Bool Bool (Typed (Value' lab)) (Typed (Value' lab)) (Typed (Value' lab)) (Maybe String) AtomicOrdering AtomicOrdering |
|
AtomicRW Bool AtomicRWOp (Typed (Value' lab)) (Typed (Value' lab)) (Maybe String) AtomicOrdering |
|
ICmp ICmpOp (Typed (Value' lab)) (Value' lab) |
|
FCmp FCmpOp (Typed (Value' lab)) (Value' lab) |
|
Phi Type [(Value' lab, lab)] |
|
GEP Bool Type (Typed (Value' lab)) [Typed (Value' lab)] |
The types in path are the types of the index, not the fields. The indexes are in units of fields (i.e., the first element in a struct is field 0, the next one is 1, etc., regardless of the size of the fields in bytes). |
Select (Typed (Value' lab)) (Typed (Value' lab)) (Value' lab) |
|
ExtractValue (Typed (Value' lab)) [Int32] |
|
InsertValue (Typed (Value' lab)) (Typed (Value' lab)) [Int32] |
|
ExtractElt (Typed (Value' lab)) (Value' lab) |
|
InsertElt (Typed (Value' lab)) (Typed (Value' lab)) (Value' lab) |
|
ShuffleVector (Typed (Value' lab)) (Value' lab) (Typed (Value' lab)) | |
Jump lab |
|
Br (Typed (Value' lab)) lab lab |
|
Invoke Type (Value' lab) [Typed (Value' lab)] lab lab | |
Comment String | Comment |
Unreachable | No defined sematics, we should not get to here. |
Unwind | |
VaArg (Typed (Value' lab)) Type | |
IndirectBr (Typed (Value' lab)) [lab] | |
Switch (Typed (Value' lab)) lab [(Integer, lab)] |
|
LandingPad Type (Maybe (Typed (Value' lab))) Bool [Clause' lab] | |
Resume (Typed (Value' lab)) | |
Freeze (Typed (Value' lab)) |
|
Instances
Functor Instr' Source # | |||||
HasLabel Instr' Source # | |||||
Data lab => Data (Instr' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Instr' lab -> c (Instr' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Instr' lab) toConstr :: Instr' lab -> Constr dataTypeOf :: Instr' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Instr' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Instr' lab)) gmapT :: (forall b. Data b => b -> b) -> Instr' lab -> Instr' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Instr' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Instr' lab -> r gmapQ :: (forall d. Data d => d -> u) -> Instr' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Instr' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Instr' lab -> m (Instr' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Instr' lab -> m (Instr' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Instr' lab -> m (Instr' lab) | |||||
Generic (Instr' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show lab => Show (Instr' lab) Source # | |||||
Eq lab => Eq (Instr' lab) Source # | |||||
Ord lab => Ord (Instr' lab) Source # | |||||
type Rep (Instr' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (Instr' lab) = D1 ('MetaData "Instr'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (((((C1 ('MetaCons "Ret" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab)))) :+: C1 ('MetaCons "RetVoid" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Arith" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ArithOp) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Value' lab)))) :+: C1 ('MetaCons "UnaryArith" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UnaryArithOp) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab)))))) :+: ((C1 ('MetaCons "Bit" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BitOp) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Value' lab)))) :+: C1 ('MetaCons "Conv" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ConvOp) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type)))) :+: (C1 ('MetaCons "Call" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Value' lab)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Typed (Value' lab)]))) :+: (C1 ('MetaCons "CallBr" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Value' lab))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Typed (Value' lab)]) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 lab) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [lab])))) :+: C1 ('MetaCons "Alloca" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (Typed (Value' lab)))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Int)))))))) :+: (((C1 ('MetaCons "Load" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab)))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe AtomicOrdering)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Align)))) :+: C1 ('MetaCons "Store" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab)))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe AtomicOrdering)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Align))))) :+: (C1 ('MetaCons "Fence" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AtomicOrdering)) :+: C1 ('MetaCons "CmpXchg" 'PrefixI 'False) (((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))))) :*: ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AtomicOrdering) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AtomicOrdering)))))) :+: ((C1 ('MetaCons "AtomicRW" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AtomicRWOp) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AtomicOrdering)))) :+: C1 ('MetaCons "ICmp" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ICmpOp) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Value' lab))))) :+: (C1 ('MetaCons "FCmp" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FCmpOp) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Value' lab)))) :+: (C1 ('MetaCons "Phi" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [(Value' lab, lab)])) :+: C1 ('MetaCons "GEP" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Typed (Value' lab)])))))))) :+: ((((C1 ('MetaCons "Select" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Value' lab)))) :+: C1 ('MetaCons "ExtractValue" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Int32]))) :+: (C1 ('MetaCons "InsertValue" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Int32]))) :+: C1 ('MetaCons "ExtractElt" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Value' lab))))) :+: ((C1 ('MetaCons "InsertElt" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Value' lab)))) :+: C1 ('MetaCons "ShuffleVector" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Value' lab)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab)))))) :+: (C1 ('MetaCons "Jump" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 lab)) :+: (C1 ('MetaCons "Br" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 lab) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 lab))) :+: C1 ('MetaCons "Invoke" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Value' lab))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Typed (Value' lab)]) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 lab) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 lab)))))))) :+: (((C1 ('MetaCons "Comment" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String)) :+: C1 ('MetaCons "Unreachable" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Unwind" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "VaArg" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type)))) :+: ((C1 ('MetaCons "IndirectBr" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [lab])) :+: C1 ('MetaCons "Switch" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 lab) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [(Integer, lab)])))) :+: (C1 ('MetaCons "LandingPad" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (Typed (Value' lab))))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Clause' lab]))) :+: (C1 ('MetaCons "Resume" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab)))) :+: C1 ('MetaCons "Freeze" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab)))))))))) |
type Instr = Instr' BlockLabel Source #
Instances
Functor Clause' Source # | |||||
HasLabel Clause' Source # | |||||
Generic1 Clause' Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Data lab => Data (Clause' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Clause' lab -> c (Clause' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Clause' lab) toConstr :: Clause' lab -> Constr dataTypeOf :: Clause' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Clause' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Clause' lab)) gmapT :: (forall b. Data b => b -> b) -> Clause' lab -> Clause' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Clause' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Clause' lab -> r gmapQ :: (forall d. Data d => d -> u) -> Clause' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Clause' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Clause' lab -> m (Clause' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Clause' lab -> m (Clause' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Clause' lab -> m (Clause' lab) | |||||
Generic (Clause' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show lab => Show (Clause' lab) Source # | |||||
Eq lab => Eq (Clause' lab) Source # | |||||
Ord lab => Ord (Clause' lab) Source # | |||||
type Rep1 Clause' Source # | |||||
Defined in Text.LLVM.AST type Rep1 Clause' = D1 ('MetaData "Clause'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "Catch" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Typed :.: Rec1 Value')) :+: C1 ('MetaCons "Filter" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Typed :.: Rec1 Value'))) | |||||
type Rep (Clause' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (Clause' lab) = D1 ('MetaData "Clause'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "Catch" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab)))) :+: C1 ('MetaCons "Filter" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))))) |
type Clause = Clause' BlockLabel Source #
isTerminator :: Instr' lab -> Bool Source #
Integer comparison operators.
Instances
Data ICmpOp Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ICmpOp -> c ICmpOp gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ICmpOp dataTypeOf :: ICmpOp -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ICmpOp) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ICmpOp) gmapT :: (forall b. Data b => b -> b) -> ICmpOp -> ICmpOp gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ICmpOp -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ICmpOp -> r gmapQ :: (forall d. Data d => d -> u) -> ICmpOp -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> ICmpOp -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> ICmpOp -> m ICmpOp gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ICmpOp -> m ICmpOp gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ICmpOp -> m ICmpOp | |||||
Enum ICmpOp Source # | |||||
Defined in Text.LLVM.AST | |||||
Generic ICmpOp Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show ICmpOp Source # | |||||
Eq ICmpOp Source # | |||||
Ord ICmpOp Source # | |||||
type Rep ICmpOp Source # | |||||
Defined in Text.LLVM.AST type Rep ICmpOp = D1 ('MetaData "ICmpOp" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (((C1 ('MetaCons "Ieq" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Ine" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Iugt" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Iuge" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Iult" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Iule" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Isgt" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Isge" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Islt" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Isle" 'PrefixI 'False) (U1 :: Type -> Type))))) |
Floating-point comparison operators.
Instances
Data FCmpOp Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> FCmpOp -> c FCmpOp gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c FCmpOp dataTypeOf :: FCmpOp -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c FCmpOp) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c FCmpOp) gmapT :: (forall b. Data b => b -> b) -> FCmpOp -> FCmpOp gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> FCmpOp -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> FCmpOp -> r gmapQ :: (forall d. Data d => d -> u) -> FCmpOp -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> FCmpOp -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> FCmpOp -> m FCmpOp gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> FCmpOp -> m FCmpOp gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> FCmpOp -> m FCmpOp | |||||
Enum FCmpOp Source # | |||||
Defined in Text.LLVM.AST | |||||
Generic FCmpOp Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show FCmpOp Source # | |||||
Eq FCmpOp Source # | |||||
Ord FCmpOp Source # | |||||
type Rep FCmpOp Source # | |||||
Defined in Text.LLVM.AST type Rep FCmpOp = D1 ('MetaData "FCmpOp" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) ((((C1 ('MetaCons "Ffalse" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Foeq" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Fogt" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Foge" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "Folt" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Fole" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Fone" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Ford" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: (((C1 ('MetaCons "Fueq" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Fugt" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Fuge" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Fult" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "Fule" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Fune" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Funo" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Ftrue" 'PrefixI 'False) (U1 :: Type -> Type))))) |
Values
Constructors
ValInteger Integer | |
ValBool Bool | |
ValFloat Float | |
ValDouble Double | |
ValFP80 FP80Value | |
ValIdent Ident | |
ValSymbol Symbol | |
ValNull | |
ValArray Type [Value' lab] | |
ValVector Type [Value' lab] | |
ValStruct [Typed (Value' lab)] | |
ValPackedStruct [Typed (Value' lab)] | |
ValString [Word8] | |
ValConstExpr (ConstExpr' lab) | |
ValUndef | |
ValLabel lab | |
ValZeroInit | |
ValAsm Bool Bool String String | |
ValMd (ValMd' lab) | |
ValPoison |
Instances
Functor Value' Source # | |||||
IsValue Value Source # | |||||
HasLabel Value' Source # | |||||
Generic1 Value' Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
DefineArgs Type (Typed Value -> BB ()) Source # | |||||
Data lab => Data (Value' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Value' lab -> c (Value' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Value' lab) toConstr :: Value' lab -> Constr dataTypeOf :: Value' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Value' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Value' lab)) gmapT :: (forall b. Data b => b -> b) -> Value' lab -> Value' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Value' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Value' lab -> r gmapQ :: (forall d. Data d => d -> u) -> Value' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Value' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Value' lab -> m (Value' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Value' lab -> m (Value' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Value' lab -> m (Value' lab) | |||||
Generic (Value' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show lab => Show (Value' lab) Source # | |||||
Eq lab => Eq (Value' lab) Source # | |||||
Ord lab => Ord (Value' lab) Source # | |||||
DefineArgs as k => DefineArgs (Type :> as) (Typed Value -> k) Source # | |||||
DefineArgs (Type, Type) (Typed Value -> Typed Value -> BB ()) Source # | |||||
DefineArgs (Type, Type, Type) (Typed Value -> Typed Value -> Typed Value -> BB ()) Source # | |||||
type Rep1 Value' Source # | |||||
Defined in Text.LLVM.AST type Rep1 Value' = D1 ('MetaData "Value'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) ((((C1 ('MetaCons "ValInteger" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Integer)) :+: C1 ('MetaCons "ValBool" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool))) :+: (C1 ('MetaCons "ValFloat" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Float)) :+: (C1 ('MetaCons "ValDouble" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Double)) :+: C1 ('MetaCons "ValFP80" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FP80Value))))) :+: ((C1 ('MetaCons "ValIdent" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Ident)) :+: C1 ('MetaCons "ValSymbol" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Symbol))) :+: (C1 ('MetaCons "ValNull" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "ValArray" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) ([] :.: Rec1 Value')) :+: C1 ('MetaCons "ValVector" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) ([] :.: Rec1 Value')))))) :+: (((C1 ('MetaCons "ValStruct" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) ([] :.: (Typed :.: Rec1 Value'))) :+: C1 ('MetaCons "ValPackedStruct" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) ([] :.: (Typed :.: Rec1 Value')))) :+: (C1 ('MetaCons "ValString" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Word8])) :+: (C1 ('MetaCons "ValConstExpr" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 ConstExpr')) :+: C1 ('MetaCons "ValUndef" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "ValLabel" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) Par1) :+: C1 ('MetaCons "ValZeroInit" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "ValAsm" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String))) :+: (C1 ('MetaCons "ValMd" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 ValMd')) :+: C1 ('MetaCons "ValPoison" 'PrefixI 'False) (U1 :: Type -> Type)))))) | |||||
type Rep (Value' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (Value' lab) = D1 ('MetaData "Value'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) ((((C1 ('MetaCons "ValInteger" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Integer)) :+: C1 ('MetaCons "ValBool" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool))) :+: (C1 ('MetaCons "ValFloat" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Float)) :+: (C1 ('MetaCons "ValDouble" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Double)) :+: C1 ('MetaCons "ValFP80" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FP80Value))))) :+: ((C1 ('MetaCons "ValIdent" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Ident)) :+: C1 ('MetaCons "ValSymbol" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Symbol))) :+: (C1 ('MetaCons "ValNull" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "ValArray" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Value' lab])) :+: C1 ('MetaCons "ValVector" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Value' lab])))))) :+: (((C1 ('MetaCons "ValStruct" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Typed (Value' lab)])) :+: C1 ('MetaCons "ValPackedStruct" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Typed (Value' lab)]))) :+: (C1 ('MetaCons "ValString" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Word8])) :+: (C1 ('MetaCons "ValConstExpr" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (ConstExpr' lab))) :+: C1 ('MetaCons "ValUndef" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "ValLabel" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 lab)) :+: C1 ('MetaCons "ValZeroInit" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "ValAsm" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String))) :+: (C1 ('MetaCons "ValMd" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (ValMd' lab))) :+: C1 ('MetaCons "ValPoison" 'PrefixI 'False) (U1 :: Type -> Type)))))) |
type Value = Value' BlockLabel Source #
Constructors
FP80_LongDouble Word16 Word64 |
Instances
Data FP80Value Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> FP80Value -> c FP80Value gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c FP80Value toConstr :: FP80Value -> Constr dataTypeOf :: FP80Value -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c FP80Value) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c FP80Value) gmapT :: (forall b. Data b => b -> b) -> FP80Value -> FP80Value gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> FP80Value -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> FP80Value -> r gmapQ :: (forall d. Data d => d -> u) -> FP80Value -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> FP80Value -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> FP80Value -> m FP80Value gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> FP80Value -> m FP80Value gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> FP80Value -> m FP80Value | |||||
Generic FP80Value Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show FP80Value Source # | |||||
Eq FP80Value Source # | |||||
Ord FP80Value Source # | |||||
Defined in Text.LLVM.AST | |||||
type Rep FP80Value Source # | |||||
Defined in Text.LLVM.AST type Rep FP80Value = D1 ('MetaData "FP80Value" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "FP80_LongDouble" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word16) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64))) |
Constructors
ValMdString String | |
ValMdValue (Typed (Value' lab)) | |
ValMdRef Int | |
ValMdNode [Maybe (ValMd' lab)] | |
ValMdLoc (DebugLoc' lab) | |
ValMdDebugInfo (DebugInfo' lab) |
Instances
Functor ValMd' Source # | |||||
HasLabel ValMd' Source # | |||||
Generic1 ValMd' Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Data lab => Data (ValMd' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ValMd' lab -> c (ValMd' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (ValMd' lab) toConstr :: ValMd' lab -> Constr dataTypeOf :: ValMd' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (ValMd' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (ValMd' lab)) gmapT :: (forall b. Data b => b -> b) -> ValMd' lab -> ValMd' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ValMd' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ValMd' lab -> r gmapQ :: (forall d. Data d => d -> u) -> ValMd' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> ValMd' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> ValMd' lab -> m (ValMd' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ValMd' lab -> m (ValMd' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ValMd' lab -> m (ValMd' lab) | |||||
Generic (ValMd' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show lab => Show (ValMd' lab) Source # | |||||
Eq lab => Eq (ValMd' lab) Source # | |||||
Ord lab => Ord (ValMd' lab) Source # | |||||
type Rep1 ValMd' Source # | |||||
Defined in Text.LLVM.AST type Rep1 ValMd' = D1 ('MetaData "ValMd'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) ((C1 ('MetaCons "ValMdString" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String)) :+: (C1 ('MetaCons "ValMdValue" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Typed :.: Rec1 Value')) :+: C1 ('MetaCons "ValMdRef" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)))) :+: (C1 ('MetaCons "ValMdNode" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) ([] :.: (Maybe :.: Rec1 ValMd'))) :+: (C1 ('MetaCons "ValMdLoc" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 DebugLoc')) :+: C1 ('MetaCons "ValMdDebugInfo" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 DebugInfo'))))) | |||||
type Rep (ValMd' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (ValMd' lab) = D1 ('MetaData "ValMd'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) ((C1 ('MetaCons "ValMdString" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String)) :+: (C1 ('MetaCons "ValMdValue" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab)))) :+: C1 ('MetaCons "ValMdRef" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)))) :+: (C1 ('MetaCons "ValMdNode" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Maybe (ValMd' lab)])) :+: (C1 ('MetaCons "ValMdLoc" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (DebugLoc' lab))) :+: C1 ('MetaCons "ValMdDebugInfo" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (DebugInfo' lab)))))) |
type ValMd = ValMd' BlockLabel Source #
type FnMdAttachments = Map KindMd ValMd Source #
type GlobalMdAttachments = Map KindMd ValMd Source #
Constructors
DebugLoc | |
Instances
Functor DebugLoc' Source # | |||||
HasLabel DebugLoc' Source # | |||||
Generic1 DebugLoc' Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Data lab => Data (DebugLoc' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DebugLoc' lab -> c (DebugLoc' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (DebugLoc' lab) toConstr :: DebugLoc' lab -> Constr dataTypeOf :: DebugLoc' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (DebugLoc' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (DebugLoc' lab)) gmapT :: (forall b. Data b => b -> b) -> DebugLoc' lab -> DebugLoc' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DebugLoc' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DebugLoc' lab -> r gmapQ :: (forall d. Data d => d -> u) -> DebugLoc' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DebugLoc' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DebugLoc' lab -> m (DebugLoc' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DebugLoc' lab -> m (DebugLoc' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DebugLoc' lab -> m (DebugLoc' lab) | |||||
Generic (DebugLoc' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show lab => Show (DebugLoc' lab) Source # | |||||
Eq lab => Eq (DebugLoc' lab) Source # | |||||
Ord lab => Ord (DebugLoc' lab) Source # | |||||
Defined in Text.LLVM.AST | |||||
type Rep1 DebugLoc' Source # | |||||
Defined in Text.LLVM.AST type Rep1 DebugLoc' = D1 ('MetaData "DebugLoc'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DebugLoc" 'PrefixI 'True) ((S1 ('MetaSel ('Just "dlLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: S1 ('MetaSel ('Just "dlCol") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32)) :*: (S1 ('MetaSel ('Just "dlScope") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 ValMd') :*: (S1 ('MetaSel ('Just "dlIA") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "dlImplicit") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool))))) | |||||
type Rep (DebugLoc' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (DebugLoc' lab) = D1 ('MetaData "DebugLoc'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DebugLoc" 'PrefixI 'True) ((S1 ('MetaSel ('Just "dlLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: S1 ('MetaSel ('Just "dlCol") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32)) :*: (S1 ('MetaSel ('Just "dlScope") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (ValMd' lab)) :*: (S1 ('MetaSel ('Just "dlIA") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "dlImplicit") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool))))) |
type DebugLoc = DebugLoc' BlockLabel Source #
Value Elimination
elimValSymbol :: MonadPlus m => Value' lab -> m Symbol Source #
elimValInteger :: MonadPlus m => Value' lab -> m Integer Source #
Statements
Constructors
Result Ident (Instr' lab) [(String, ValMd' lab)] | |
Effect (Instr' lab) [(String, ValMd' lab)] |
Instances
Functor Stmt' Source # | |||||
HasLabel Stmt' Source # | |||||
Generic1 Stmt' Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Data lab => Data (Stmt' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Stmt' lab -> c (Stmt' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Stmt' lab) toConstr :: Stmt' lab -> Constr dataTypeOf :: Stmt' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Stmt' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Stmt' lab)) gmapT :: (forall b. Data b => b -> b) -> Stmt' lab -> Stmt' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Stmt' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Stmt' lab -> r gmapQ :: (forall d. Data d => d -> u) -> Stmt' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Stmt' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Stmt' lab -> m (Stmt' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Stmt' lab -> m (Stmt' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Stmt' lab -> m (Stmt' lab) | |||||
Generic (Stmt' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show lab => Show (Stmt' lab) Source # | |||||
Eq lab => Eq (Stmt' lab) Source # | |||||
Ord lab => Ord (Stmt' lab) Source # | |||||
Defined in Text.LLVM.AST | |||||
type Rep1 Stmt' Source # | |||||
Defined in Text.LLVM.AST type Rep1 Stmt' = D1 ('MetaData "Stmt'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "Result" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Ident) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 Instr') :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) ([] :.: ((,) String :.: Rec1 ValMd')))) :+: C1 ('MetaCons "Effect" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 Instr') :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) ([] :.: ((,) String :.: Rec1 ValMd')))) | |||||
type Rep (Stmt' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (Stmt' lab) = D1 ('MetaData "Stmt'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "Result" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Ident) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Instr' lab)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [(String, ValMd' lab)]))) :+: C1 ('MetaCons "Effect" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Instr' lab)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [(String, ValMd' lab)]))) |
type Stmt = Stmt' BlockLabel Source #
stmtMetadata :: Stmt' lab -> [(String, ValMd' lab)] Source #
Constant Expressions
data ConstExpr' lab Source #
Constructors
ConstGEP Bool (Maybe Word64) Type (Typed (Value' lab)) [Typed (Value' lab)] | Since LLVM 3.7, constant |
ConstConv ConvOp (Typed (Value' lab)) Type | |
ConstSelect (Typed (Value' lab)) (Typed (Value' lab)) (Typed (Value' lab)) | |
ConstBlockAddr (Typed (Value' lab)) lab | |
ConstFCmp FCmpOp (Typed (Value' lab)) (Typed (Value' lab)) | |
ConstICmp ICmpOp (Typed (Value' lab)) (Typed (Value' lab)) | |
ConstArith ArithOp (Typed (Value' lab)) (Value' lab) | |
ConstUnaryArith UnaryArithOp (Typed (Value' lab)) | |
ConstBit BitOp (Typed (Value' lab)) (Value' lab) |
Instances
Functor ConstExpr' Source # | |||||
Defined in Text.LLVM.AST | |||||
HasLabel ConstExpr' Source # | Clever instance that actually uses the block name | ||||
Defined in Text.LLVM.Labels Methods relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> ConstExpr' a -> m (ConstExpr' b) Source # | |||||
Generic1 ConstExpr' Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Data lab => Data (ConstExpr' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ConstExpr' lab -> c (ConstExpr' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (ConstExpr' lab) toConstr :: ConstExpr' lab -> Constr dataTypeOf :: ConstExpr' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (ConstExpr' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (ConstExpr' lab)) gmapT :: (forall b. Data b => b -> b) -> ConstExpr' lab -> ConstExpr' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ConstExpr' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ConstExpr' lab -> r gmapQ :: (forall d. Data d => d -> u) -> ConstExpr' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> ConstExpr' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> ConstExpr' lab -> m (ConstExpr' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ConstExpr' lab -> m (ConstExpr' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ConstExpr' lab -> m (ConstExpr' lab) | |||||
Generic (ConstExpr' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from :: ConstExpr' lab -> Rep (ConstExpr' lab) x to :: Rep (ConstExpr' lab) x -> ConstExpr' lab | |||||
Show lab => Show (ConstExpr' lab) Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> ConstExpr' lab -> ShowS show :: ConstExpr' lab -> String showList :: [ConstExpr' lab] -> ShowS | |||||
Eq lab => Eq (ConstExpr' lab) Source # | |||||
Defined in Text.LLVM.AST Methods (==) :: ConstExpr' lab -> ConstExpr' lab -> Bool (/=) :: ConstExpr' lab -> ConstExpr' lab -> Bool | |||||
Ord lab => Ord (ConstExpr' lab) Source # | |||||
Defined in Text.LLVM.AST Methods compare :: ConstExpr' lab -> ConstExpr' lab -> Ordering (<) :: ConstExpr' lab -> ConstExpr' lab -> Bool (<=) :: ConstExpr' lab -> ConstExpr' lab -> Bool (>) :: ConstExpr' lab -> ConstExpr' lab -> Bool (>=) :: ConstExpr' lab -> ConstExpr' lab -> Bool max :: ConstExpr' lab -> ConstExpr' lab -> ConstExpr' lab min :: ConstExpr' lab -> ConstExpr' lab -> ConstExpr' lab | |||||
type Rep1 ConstExpr' Source # | |||||
Defined in Text.LLVM.AST type Rep1 ConstExpr' = D1 ('MetaData "ConstExpr'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (((C1 ('MetaCons "ConstGEP" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Word64))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Typed :.: Rec1 Value') :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) ([] :.: (Typed :.: Rec1 Value'))))) :+: C1 ('MetaCons "ConstConv" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ConvOp) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Typed :.: Rec1 Value') :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type)))) :+: (C1 ('MetaCons "ConstSelect" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Typed :.: Rec1 Value') :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Typed :.: Rec1 Value') :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Typed :.: Rec1 Value'))) :+: C1 ('MetaCons "ConstBlockAddr" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Typed :.: Rec1 Value') :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) Par1))) :+: ((C1 ('MetaCons "ConstFCmp" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FCmpOp) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Typed :.: Rec1 Value') :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Typed :.: Rec1 Value'))) :+: C1 ('MetaCons "ConstICmp" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ICmpOp) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Typed :.: Rec1 Value') :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Typed :.: Rec1 Value')))) :+: (C1 ('MetaCons "ConstArith" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ArithOp) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Typed :.: Rec1 Value') :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 Value'))) :+: (C1 ('MetaCons "ConstUnaryArith" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UnaryArithOp) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Typed :.: Rec1 Value')) :+: C1 ('MetaCons "ConstBit" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BitOp) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Typed :.: Rec1 Value') :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 Value'))))))) | |||||
type Rep (ConstExpr' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (ConstExpr' lab) = D1 ('MetaData "ConstExpr'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (((C1 ('MetaCons "ConstGEP" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Word64))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Typed (Value' lab)])))) :+: C1 ('MetaCons "ConstConv" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ConvOp) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type)))) :+: (C1 ('MetaCons "ConstSelect" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))))) :+: C1 ('MetaCons "ConstBlockAddr" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 lab)))) :+: ((C1 ('MetaCons "ConstFCmp" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FCmpOp) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))))) :+: C1 ('MetaCons "ConstICmp" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ICmpOp) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab)))))) :+: (C1 ('MetaCons "ConstArith" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ArithOp) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Value' lab)))) :+: (C1 ('MetaCons "ConstUnaryArith" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UnaryArithOp) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab)))) :+: C1 ('MetaCons "ConstBit" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BitOp) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Typed (Value' lab))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Value' lab)))))))) |
type ConstExpr = ConstExpr' BlockLabel Source #
DWARF Debug Info
data DebugInfo' lab Source #
Constructors
Instances
Functor DebugInfo' Source # | |||||
Defined in Text.LLVM.AST | |||||
HasLabel DebugInfo' Source # | |||||
Defined in Text.LLVM.Labels Methods relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DebugInfo' a -> m (DebugInfo' b) Source # | |||||
Generic1 DebugInfo' Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Data lab => Data (DebugInfo' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DebugInfo' lab -> c (DebugInfo' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (DebugInfo' lab) toConstr :: DebugInfo' lab -> Constr dataTypeOf :: DebugInfo' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (DebugInfo' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (DebugInfo' lab)) gmapT :: (forall b. Data b => b -> b) -> DebugInfo' lab -> DebugInfo' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DebugInfo' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DebugInfo' lab -> r gmapQ :: (forall d. Data d => d -> u) -> DebugInfo' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DebugInfo' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DebugInfo' lab -> m (DebugInfo' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DebugInfo' lab -> m (DebugInfo' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DebugInfo' lab -> m (DebugInfo' lab) | |||||
Generic (DebugInfo' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from :: DebugInfo' lab -> Rep (DebugInfo' lab) x to :: Rep (DebugInfo' lab) x -> DebugInfo' lab | |||||
Show lab => Show (DebugInfo' lab) Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> DebugInfo' lab -> ShowS show :: DebugInfo' lab -> String showList :: [DebugInfo' lab] -> ShowS | |||||
Eq lab => Eq (DebugInfo' lab) Source # | |||||
Defined in Text.LLVM.AST Methods (==) :: DebugInfo' lab -> DebugInfo' lab -> Bool (/=) :: DebugInfo' lab -> DebugInfo' lab -> Bool | |||||
Ord lab => Ord (DebugInfo' lab) Source # | |||||
Defined in Text.LLVM.AST Methods compare :: DebugInfo' lab -> DebugInfo' lab -> Ordering (<) :: DebugInfo' lab -> DebugInfo' lab -> Bool (<=) :: DebugInfo' lab -> DebugInfo' lab -> Bool (>) :: DebugInfo' lab -> DebugInfo' lab -> Bool (>=) :: DebugInfo' lab -> DebugInfo' lab -> Bool max :: DebugInfo' lab -> DebugInfo' lab -> DebugInfo' lab min :: DebugInfo' lab -> DebugInfo' lab -> DebugInfo' lab | |||||
type Rep1 DebugInfo' Source # | |||||
Defined in Text.LLVM.AST type Rep1 DebugInfo' = D1 ('MetaData "DebugInfo'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) ((((C1 ('MetaCons "DebugInfoBasicType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DIBasicType)) :+: C1 ('MetaCons "DebugInfoCompileUnit" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 DICompileUnit'))) :+: (C1 ('MetaCons "DebugInfoCompositeType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 DICompositeType')) :+: (C1 ('MetaCons "DebugInfoDerivedType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 DIDerivedType')) :+: C1 ('MetaCons "DebugInfoEnumerator" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Integer) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)))))) :+: ((C1 ('MetaCons "DebugInfoExpression" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DIExpression)) :+: (C1 ('MetaCons "DebugInfoFile" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DIFile)) :+: C1 ('MetaCons "DebugInfoGlobalVariable" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 DIGlobalVariable')))) :+: (C1 ('MetaCons "DebugInfoGlobalVariableExpression" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 DIGlobalVariableExpression')) :+: (C1 ('MetaCons "DebugInfoLexicalBlock" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 DILexicalBlock')) :+: C1 ('MetaCons "DebugInfoLexicalBlockFile" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 DILexicalBlockFile')))))) :+: (((C1 ('MetaCons "DebugInfoLocalVariable" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 DILocalVariable')) :+: C1 ('MetaCons "DebugInfoSubprogram" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 DISubprogram'))) :+: (C1 ('MetaCons "DebugInfoSubrange" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 DISubrange')) :+: (C1 ('MetaCons "DebugInfoSubroutineType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 DISubroutineType')) :+: C1 ('MetaCons "DebugInfoNameSpace" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 DINameSpace'))))) :+: ((C1 ('MetaCons "DebugInfoTemplateTypeParameter" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 DITemplateTypeParameter')) :+: (C1 ('MetaCons "DebugInfoTemplateValueParameter" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 DITemplateValueParameter')) :+: C1 ('MetaCons "DebugInfoImportedEntity" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 DIImportedEntity')))) :+: (C1 ('MetaCons "DebugInfoLabel" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 DILabel')) :+: (C1 ('MetaCons "DebugInfoArgList" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 DIArgList')) :+: C1 ('MetaCons "DebugInfoAssignID" 'PrefixI 'False) (U1 :: Type -> Type)))))) | |||||
type Rep (DebugInfo' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (DebugInfo' lab) = D1 ('MetaData "DebugInfo'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) ((((C1 ('MetaCons "DebugInfoBasicType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DIBasicType)) :+: C1 ('MetaCons "DebugInfoCompileUnit" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (DICompileUnit' lab)))) :+: (C1 ('MetaCons "DebugInfoCompositeType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (DICompositeType' lab))) :+: (C1 ('MetaCons "DebugInfoDerivedType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (DIDerivedType' lab))) :+: C1 ('MetaCons "DebugInfoEnumerator" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Integer) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)))))) :+: ((C1 ('MetaCons "DebugInfoExpression" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DIExpression)) :+: (C1 ('MetaCons "DebugInfoFile" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DIFile)) :+: C1 ('MetaCons "DebugInfoGlobalVariable" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (DIGlobalVariable' lab))))) :+: (C1 ('MetaCons "DebugInfoGlobalVariableExpression" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (DIGlobalVariableExpression' lab))) :+: (C1 ('MetaCons "DebugInfoLexicalBlock" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (DILexicalBlock' lab))) :+: C1 ('MetaCons "DebugInfoLexicalBlockFile" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (DILexicalBlockFile' lab))))))) :+: (((C1 ('MetaCons "DebugInfoLocalVariable" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (DILocalVariable' lab))) :+: C1 ('MetaCons "DebugInfoSubprogram" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (DISubprogram' lab)))) :+: (C1 ('MetaCons "DebugInfoSubrange" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (DISubrange' lab))) :+: (C1 ('MetaCons "DebugInfoSubroutineType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (DISubroutineType' lab))) :+: C1 ('MetaCons "DebugInfoNameSpace" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (DINameSpace' lab)))))) :+: ((C1 ('MetaCons "DebugInfoTemplateTypeParameter" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (DITemplateTypeParameter' lab))) :+: (C1 ('MetaCons "DebugInfoTemplateValueParameter" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (DITemplateValueParameter' lab))) :+: C1 ('MetaCons "DebugInfoImportedEntity" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (DIImportedEntity' lab))))) :+: (C1 ('MetaCons "DebugInfoLabel" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (DILabel' lab))) :+: (C1 ('MetaCons "DebugInfoArgList" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (DIArgList' lab))) :+: C1 ('MetaCons "DebugInfoAssignID" 'PrefixI 'False) (U1 :: Type -> Type)))))) |
type DebugInfo = DebugInfo' BlockLabel Source #
type DILabel = DILabel' BlockLabel Source #
Constructors
DILabel | |
Instances
Functor DILabel' Source # | |||||
HasLabel DILabel' Source # | |||||
Generic1 DILabel' Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Data lab => Data (DILabel' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DILabel' lab -> c (DILabel' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (DILabel' lab) toConstr :: DILabel' lab -> Constr dataTypeOf :: DILabel' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (DILabel' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (DILabel' lab)) gmapT :: (forall b. Data b => b -> b) -> DILabel' lab -> DILabel' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DILabel' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DILabel' lab -> r gmapQ :: (forall d. Data d => d -> u) -> DILabel' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DILabel' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DILabel' lab -> m (DILabel' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DILabel' lab -> m (DILabel' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DILabel' lab -> m (DILabel' lab) | |||||
Generic (DILabel' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show lab => Show (DILabel' lab) Source # | |||||
Eq lab => Eq (DILabel' lab) Source # | |||||
Ord lab => Ord (DILabel' lab) Source # | |||||
Defined in Text.LLVM.AST | |||||
type Rep1 DILabel' Source # | |||||
Defined in Text.LLVM.AST type Rep1 DILabel' = D1 ('MetaData "DILabel'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DILabel" 'PrefixI 'True) ((S1 ('MetaSel ('Just "dilScope") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "dilName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String)) :*: (S1 ('MetaSel ('Just "dilFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "dilLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32)))) | |||||
type Rep (DILabel' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (DILabel' lab) = D1 ('MetaData "DILabel'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DILabel" 'PrefixI 'True) ((S1 ('MetaSel ('Just "dilScope") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "dilName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String)) :*: (S1 ('MetaSel ('Just "dilFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "dilLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32)))) |
data DIImportedEntity' lab Source #
Constructors
DIImportedEntity | |
Instances
Functor DIImportedEntity' Source # | |||||
Defined in Text.LLVM.AST Methods fmap :: (a -> b) -> DIImportedEntity' a -> DIImportedEntity' b (<$) :: a -> DIImportedEntity' b -> DIImportedEntity' a | |||||
HasLabel DIImportedEntity' Source # | |||||
Defined in Text.LLVM.Labels Methods relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DIImportedEntity' a -> m (DIImportedEntity' b) Source # | |||||
Generic1 DIImportedEntity' Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from1 :: DIImportedEntity' a -> Rep1 DIImportedEntity' a to1 :: Rep1 DIImportedEntity' a -> DIImportedEntity' a | |||||
Data lab => Data (DIImportedEntity' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DIImportedEntity' lab -> c (DIImportedEntity' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (DIImportedEntity' lab) toConstr :: DIImportedEntity' lab -> Constr dataTypeOf :: DIImportedEntity' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (DIImportedEntity' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (DIImportedEntity' lab)) gmapT :: (forall b. Data b => b -> b) -> DIImportedEntity' lab -> DIImportedEntity' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DIImportedEntity' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DIImportedEntity' lab -> r gmapQ :: (forall d. Data d => d -> u) -> DIImportedEntity' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DIImportedEntity' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DIImportedEntity' lab -> m (DIImportedEntity' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DIImportedEntity' lab -> m (DIImportedEntity' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DIImportedEntity' lab -> m (DIImportedEntity' lab) | |||||
Generic (DIImportedEntity' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from :: DIImportedEntity' lab -> Rep (DIImportedEntity' lab) x to :: Rep (DIImportedEntity' lab) x -> DIImportedEntity' lab | |||||
Show lab => Show (DIImportedEntity' lab) Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> DIImportedEntity' lab -> ShowS show :: DIImportedEntity' lab -> String showList :: [DIImportedEntity' lab] -> ShowS | |||||
Eq lab => Eq (DIImportedEntity' lab) Source # | |||||
Defined in Text.LLVM.AST Methods (==) :: DIImportedEntity' lab -> DIImportedEntity' lab -> Bool (/=) :: DIImportedEntity' lab -> DIImportedEntity' lab -> Bool | |||||
Ord lab => Ord (DIImportedEntity' lab) Source # | |||||
Defined in Text.LLVM.AST Methods compare :: DIImportedEntity' lab -> DIImportedEntity' lab -> Ordering (<) :: DIImportedEntity' lab -> DIImportedEntity' lab -> Bool (<=) :: DIImportedEntity' lab -> DIImportedEntity' lab -> Bool (>) :: DIImportedEntity' lab -> DIImportedEntity' lab -> Bool (>=) :: DIImportedEntity' lab -> DIImportedEntity' lab -> Bool max :: DIImportedEntity' lab -> DIImportedEntity' lab -> DIImportedEntity' lab min :: DIImportedEntity' lab -> DIImportedEntity' lab -> DIImportedEntity' lab | |||||
type Rep1 DIImportedEntity' Source # | |||||
Defined in Text.LLVM.AST type Rep1 DIImportedEntity' = D1 ('MetaData "DIImportedEntity'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DIImportedEntity" 'PrefixI 'True) ((S1 ('MetaSel ('Just "diieTag") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DwarfTag) :*: (S1 ('MetaSel ('Just "diieScope") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "diieEntity") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd'))) :*: (S1 ('MetaSel ('Just "diieFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: (S1 ('MetaSel ('Just "diieLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: S1 ('MetaSel ('Just "diieName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)))))) | |||||
type Rep (DIImportedEntity' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (DIImportedEntity' lab) = D1 ('MetaData "DIImportedEntity'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DIImportedEntity" 'PrefixI 'True) ((S1 ('MetaSel ('Just "diieTag") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DwarfTag) :*: (S1 ('MetaSel ('Just "diieScope") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "diieEntity") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))))) :*: (S1 ('MetaSel ('Just "diieFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: (S1 ('MetaSel ('Just "diieLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: S1 ('MetaSel ('Just "diieName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)))))) |
data DITemplateTypeParameter' lab Source #
Constructors
DITemplateTypeParameter | |
Fields
|
Instances
Functor DITemplateTypeParameter' Source # | |||||
Defined in Text.LLVM.AST Methods fmap :: (a -> b) -> DITemplateTypeParameter' a -> DITemplateTypeParameter' b (<$) :: a -> DITemplateTypeParameter' b -> DITemplateTypeParameter' a | |||||
HasLabel DITemplateTypeParameter' Source # | |||||
Defined in Text.LLVM.Labels Methods relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DITemplateTypeParameter' a -> m (DITemplateTypeParameter' b) Source # | |||||
Generic1 DITemplateTypeParameter' Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from1 :: DITemplateTypeParameter' a -> Rep1 DITemplateTypeParameter' a to1 :: Rep1 DITemplateTypeParameter' a -> DITemplateTypeParameter' a | |||||
Data lab => Data (DITemplateTypeParameter' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DITemplateTypeParameter' lab -> c (DITemplateTypeParameter' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (DITemplateTypeParameter' lab) toConstr :: DITemplateTypeParameter' lab -> Constr dataTypeOf :: DITemplateTypeParameter' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (DITemplateTypeParameter' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (DITemplateTypeParameter' lab)) gmapT :: (forall b. Data b => b -> b) -> DITemplateTypeParameter' lab -> DITemplateTypeParameter' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DITemplateTypeParameter' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DITemplateTypeParameter' lab -> r gmapQ :: (forall d. Data d => d -> u) -> DITemplateTypeParameter' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DITemplateTypeParameter' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DITemplateTypeParameter' lab -> m (DITemplateTypeParameter' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DITemplateTypeParameter' lab -> m (DITemplateTypeParameter' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DITemplateTypeParameter' lab -> m (DITemplateTypeParameter' lab) | |||||
Generic (DITemplateTypeParameter' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from :: DITemplateTypeParameter' lab -> Rep (DITemplateTypeParameter' lab) x to :: Rep (DITemplateTypeParameter' lab) x -> DITemplateTypeParameter' lab | |||||
Show lab => Show (DITemplateTypeParameter' lab) Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> DITemplateTypeParameter' lab -> ShowS show :: DITemplateTypeParameter' lab -> String showList :: [DITemplateTypeParameter' lab] -> ShowS | |||||
Eq lab => Eq (DITemplateTypeParameter' lab) Source # | |||||
Defined in Text.LLVM.AST Methods (==) :: DITemplateTypeParameter' lab -> DITemplateTypeParameter' lab -> Bool (/=) :: DITemplateTypeParameter' lab -> DITemplateTypeParameter' lab -> Bool | |||||
Ord lab => Ord (DITemplateTypeParameter' lab) Source # | |||||
Defined in Text.LLVM.AST Methods compare :: DITemplateTypeParameter' lab -> DITemplateTypeParameter' lab -> Ordering (<) :: DITemplateTypeParameter' lab -> DITemplateTypeParameter' lab -> Bool (<=) :: DITemplateTypeParameter' lab -> DITemplateTypeParameter' lab -> Bool (>) :: DITemplateTypeParameter' lab -> DITemplateTypeParameter' lab -> Bool (>=) :: DITemplateTypeParameter' lab -> DITemplateTypeParameter' lab -> Bool max :: DITemplateTypeParameter' lab -> DITemplateTypeParameter' lab -> DITemplateTypeParameter' lab min :: DITemplateTypeParameter' lab -> DITemplateTypeParameter' lab -> DITemplateTypeParameter' lab | |||||
type Rep1 DITemplateTypeParameter' Source # | |||||
Defined in Text.LLVM.AST type Rep1 DITemplateTypeParameter' = D1 ('MetaData "DITemplateTypeParameter'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DITemplateTypeParameter" 'PrefixI 'True) (S1 ('MetaSel ('Just "dittpName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)) :*: (S1 ('MetaSel ('Just "dittpType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "dittpIsDefault") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool))))) | |||||
type Rep (DITemplateTypeParameter' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (DITemplateTypeParameter' lab) = D1 ('MetaData "DITemplateTypeParameter'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DITemplateTypeParameter" 'PrefixI 'True) (S1 ('MetaSel ('Just "dittpName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)) :*: (S1 ('MetaSel ('Just "dittpType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "dittpIsDefault") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool))))) |
data DITemplateValueParameter' lab Source #
Constructors
DITemplateValueParameter | |
Fields
|
Instances
Functor DITemplateValueParameter' Source # | |||||
Defined in Text.LLVM.AST Methods fmap :: (a -> b) -> DITemplateValueParameter' a -> DITemplateValueParameter' b (<$) :: a -> DITemplateValueParameter' b -> DITemplateValueParameter' a | |||||
HasLabel DITemplateValueParameter' Source # | |||||
Defined in Text.LLVM.Labels Methods relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DITemplateValueParameter' a -> m (DITemplateValueParameter' b) Source # | |||||
Generic1 DITemplateValueParameter' Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from1 :: DITemplateValueParameter' a -> Rep1 DITemplateValueParameter' a to1 :: Rep1 DITemplateValueParameter' a -> DITemplateValueParameter' a | |||||
Data lab => Data (DITemplateValueParameter' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DITemplateValueParameter' lab -> c (DITemplateValueParameter' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (DITemplateValueParameter' lab) toConstr :: DITemplateValueParameter' lab -> Constr dataTypeOf :: DITemplateValueParameter' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (DITemplateValueParameter' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (DITemplateValueParameter' lab)) gmapT :: (forall b. Data b => b -> b) -> DITemplateValueParameter' lab -> DITemplateValueParameter' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DITemplateValueParameter' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DITemplateValueParameter' lab -> r gmapQ :: (forall d. Data d => d -> u) -> DITemplateValueParameter' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DITemplateValueParameter' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DITemplateValueParameter' lab -> m (DITemplateValueParameter' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DITemplateValueParameter' lab -> m (DITemplateValueParameter' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DITemplateValueParameter' lab -> m (DITemplateValueParameter' lab) | |||||
Generic (DITemplateValueParameter' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from :: DITemplateValueParameter' lab -> Rep (DITemplateValueParameter' lab) x to :: Rep (DITemplateValueParameter' lab) x -> DITemplateValueParameter' lab | |||||
Show lab => Show (DITemplateValueParameter' lab) Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> DITemplateValueParameter' lab -> ShowS show :: DITemplateValueParameter' lab -> String showList :: [DITemplateValueParameter' lab] -> ShowS | |||||
Eq lab => Eq (DITemplateValueParameter' lab) Source # | |||||
Defined in Text.LLVM.AST Methods (==) :: DITemplateValueParameter' lab -> DITemplateValueParameter' lab -> Bool (/=) :: DITemplateValueParameter' lab -> DITemplateValueParameter' lab -> Bool | |||||
Ord lab => Ord (DITemplateValueParameter' lab) Source # | |||||
Defined in Text.LLVM.AST Methods compare :: DITemplateValueParameter' lab -> DITemplateValueParameter' lab -> Ordering (<) :: DITemplateValueParameter' lab -> DITemplateValueParameter' lab -> Bool (<=) :: DITemplateValueParameter' lab -> DITemplateValueParameter' lab -> Bool (>) :: DITemplateValueParameter' lab -> DITemplateValueParameter' lab -> Bool (>=) :: DITemplateValueParameter' lab -> DITemplateValueParameter' lab -> Bool max :: DITemplateValueParameter' lab -> DITemplateValueParameter' lab -> DITemplateValueParameter' lab min :: DITemplateValueParameter' lab -> DITemplateValueParameter' lab -> DITemplateValueParameter' lab | |||||
type Rep1 DITemplateValueParameter' Source # | |||||
Defined in Text.LLVM.AST type Rep1 DITemplateValueParameter' = D1 ('MetaData "DITemplateValueParameter'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DITemplateValueParameter" 'PrefixI 'True) ((S1 ('MetaSel ('Just "ditvpTag") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DwarfTag) :*: S1 ('MetaSel ('Just "ditvpName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String))) :*: (S1 ('MetaSel ('Just "ditvpType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: (S1 ('MetaSel ('Just "ditvpIsDefault") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool)) :*: S1 ('MetaSel ('Just "ditvpValue") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 ValMd'))))) | |||||
type Rep (DITemplateValueParameter' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (DITemplateValueParameter' lab) = D1 ('MetaData "DITemplateValueParameter'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DITemplateValueParameter" 'PrefixI 'True) ((S1 ('MetaSel ('Just "ditvpTag") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DwarfTag) :*: S1 ('MetaSel ('Just "ditvpName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String))) :*: (S1 ('MetaSel ('Just "ditvpType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: (S1 ('MetaSel ('Just "ditvpIsDefault") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool)) :*: S1 ('MetaSel ('Just "ditvpValue") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (ValMd' lab)))))) |
type DINameSpace = DINameSpace' BlockLabel Source #
data DINameSpace' lab Source #
Constructors
DINameSpace | |
Instances
Functor DINameSpace' Source # | |||||
Defined in Text.LLVM.AST Methods fmap :: (a -> b) -> DINameSpace' a -> DINameSpace' b (<$) :: a -> DINameSpace' b -> DINameSpace' a | |||||
HasLabel DINameSpace' Source # | |||||
Defined in Text.LLVM.Labels Methods relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DINameSpace' a -> m (DINameSpace' b) Source # | |||||
Generic1 DINameSpace' Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Data lab => Data (DINameSpace' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DINameSpace' lab -> c (DINameSpace' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (DINameSpace' lab) toConstr :: DINameSpace' lab -> Constr dataTypeOf :: DINameSpace' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (DINameSpace' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (DINameSpace' lab)) gmapT :: (forall b. Data b => b -> b) -> DINameSpace' lab -> DINameSpace' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DINameSpace' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DINameSpace' lab -> r gmapQ :: (forall d. Data d => d -> u) -> DINameSpace' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DINameSpace' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DINameSpace' lab -> m (DINameSpace' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DINameSpace' lab -> m (DINameSpace' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DINameSpace' lab -> m (DINameSpace' lab) | |||||
Generic (DINameSpace' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from :: DINameSpace' lab -> Rep (DINameSpace' lab) x to :: Rep (DINameSpace' lab) x -> DINameSpace' lab | |||||
Show lab => Show (DINameSpace' lab) Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> DINameSpace' lab -> ShowS show :: DINameSpace' lab -> String showList :: [DINameSpace' lab] -> ShowS | |||||
Eq lab => Eq (DINameSpace' lab) Source # | |||||
Defined in Text.LLVM.AST Methods (==) :: DINameSpace' lab -> DINameSpace' lab -> Bool (/=) :: DINameSpace' lab -> DINameSpace' lab -> Bool | |||||
Ord lab => Ord (DINameSpace' lab) Source # | |||||
Defined in Text.LLVM.AST Methods compare :: DINameSpace' lab -> DINameSpace' lab -> Ordering (<) :: DINameSpace' lab -> DINameSpace' lab -> Bool (<=) :: DINameSpace' lab -> DINameSpace' lab -> Bool (>) :: DINameSpace' lab -> DINameSpace' lab -> Bool (>=) :: DINameSpace' lab -> DINameSpace' lab -> Bool max :: DINameSpace' lab -> DINameSpace' lab -> DINameSpace' lab min :: DINameSpace' lab -> DINameSpace' lab -> DINameSpace' lab | |||||
type Rep1 DINameSpace' Source # | |||||
Defined in Text.LLVM.AST type Rep1 DINameSpace' = D1 ('MetaData "DINameSpace'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DINameSpace" 'PrefixI 'True) ((S1 ('MetaSel ('Just "dinsName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)) :*: S1 ('MetaSel ('Just "dinsScope") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 ValMd')) :*: (S1 ('MetaSel ('Just "dinsFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 ValMd') :*: S1 ('MetaSel ('Just "dinsLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32)))) | |||||
type Rep (DINameSpace' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (DINameSpace' lab) = D1 ('MetaData "DINameSpace'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DINameSpace" 'PrefixI 'True) ((S1 ('MetaSel ('Just "dinsName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)) :*: S1 ('MetaSel ('Just "dinsScope") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (ValMd' lab))) :*: (S1 ('MetaSel ('Just "dinsFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (ValMd' lab)) :*: S1 ('MetaSel ('Just "dinsLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32)))) |
type DwarfAttrEncoding = Word16 Source #
type DwarfVirtuality = Word8 Source #
type DIEmissionKind = Word8 Source #
data DIBasicType Source #
Constructors
DIBasicType | |
Fields
|
Instances
Data DIBasicType Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DIBasicType -> c DIBasicType gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DIBasicType toConstr :: DIBasicType -> Constr dataTypeOf :: DIBasicType -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c DIBasicType) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c DIBasicType) gmapT :: (forall b. Data b => b -> b) -> DIBasicType -> DIBasicType gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DIBasicType -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DIBasicType -> r gmapQ :: (forall d. Data d => d -> u) -> DIBasicType -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DIBasicType -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DIBasicType -> m DIBasicType gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DIBasicType -> m DIBasicType gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DIBasicType -> m DIBasicType | |||||
Generic DIBasicType Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show DIBasicType Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> DIBasicType -> ShowS show :: DIBasicType -> String showList :: [DIBasicType] -> ShowS | |||||
Eq DIBasicType Source # | |||||
Defined in Text.LLVM.AST | |||||
Ord DIBasicType Source # | |||||
Defined in Text.LLVM.AST Methods compare :: DIBasicType -> DIBasicType -> Ordering (<) :: DIBasicType -> DIBasicType -> Bool (<=) :: DIBasicType -> DIBasicType -> Bool (>) :: DIBasicType -> DIBasicType -> Bool (>=) :: DIBasicType -> DIBasicType -> Bool max :: DIBasicType -> DIBasicType -> DIBasicType min :: DIBasicType -> DIBasicType -> DIBasicType | |||||
type Rep DIBasicType Source # | |||||
Defined in Text.LLVM.AST type Rep DIBasicType = D1 ('MetaData "DIBasicType" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DIBasicType" 'PrefixI 'True) ((S1 ('MetaSel ('Just "dibtTag") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DwarfTag) :*: (S1 ('MetaSel ('Just "dibtName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: S1 ('MetaSel ('Just "dibtSize") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64))) :*: (S1 ('MetaSel ('Just "dibtAlign") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: (S1 ('MetaSel ('Just "dibtEncoding") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DwarfAttrEncoding) :*: S1 ('MetaSel ('Just "dibtFlags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe DIFlags)))))) |
data DICompileUnit' lab Source #
Constructors
DICompileUnit | |
Fields
|
Instances
Functor DICompileUnit' Source # | |||||
Defined in Text.LLVM.AST Methods fmap :: (a -> b) -> DICompileUnit' a -> DICompileUnit' b (<$) :: a -> DICompileUnit' b -> DICompileUnit' a | |||||
HasLabel DICompileUnit' Source # | |||||
Defined in Text.LLVM.Labels Methods relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DICompileUnit' a -> m (DICompileUnit' b) Source # | |||||
Generic1 DICompileUnit' Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from1 :: DICompileUnit' a -> Rep1 DICompileUnit' a to1 :: Rep1 DICompileUnit' a -> DICompileUnit' a | |||||
Data lab => Data (DICompileUnit' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DICompileUnit' lab -> c (DICompileUnit' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (DICompileUnit' lab) toConstr :: DICompileUnit' lab -> Constr dataTypeOf :: DICompileUnit' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (DICompileUnit' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (DICompileUnit' lab)) gmapT :: (forall b. Data b => b -> b) -> DICompileUnit' lab -> DICompileUnit' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DICompileUnit' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DICompileUnit' lab -> r gmapQ :: (forall d. Data d => d -> u) -> DICompileUnit' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DICompileUnit' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DICompileUnit' lab -> m (DICompileUnit' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DICompileUnit' lab -> m (DICompileUnit' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DICompileUnit' lab -> m (DICompileUnit' lab) | |||||
Generic (DICompileUnit' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from :: DICompileUnit' lab -> Rep (DICompileUnit' lab) x to :: Rep (DICompileUnit' lab) x -> DICompileUnit' lab | |||||
Show lab => Show (DICompileUnit' lab) Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> DICompileUnit' lab -> ShowS show :: DICompileUnit' lab -> String showList :: [DICompileUnit' lab] -> ShowS | |||||
Eq lab => Eq (DICompileUnit' lab) Source # | |||||
Defined in Text.LLVM.AST Methods (==) :: DICompileUnit' lab -> DICompileUnit' lab -> Bool (/=) :: DICompileUnit' lab -> DICompileUnit' lab -> Bool | |||||
Ord lab => Ord (DICompileUnit' lab) Source # | |||||
Defined in Text.LLVM.AST Methods compare :: DICompileUnit' lab -> DICompileUnit' lab -> Ordering (<) :: DICompileUnit' lab -> DICompileUnit' lab -> Bool (<=) :: DICompileUnit' lab -> DICompileUnit' lab -> Bool (>) :: DICompileUnit' lab -> DICompileUnit' lab -> Bool (>=) :: DICompileUnit' lab -> DICompileUnit' lab -> Bool max :: DICompileUnit' lab -> DICompileUnit' lab -> DICompileUnit' lab min :: DICompileUnit' lab -> DICompileUnit' lab -> DICompileUnit' lab | |||||
type Rep1 DICompileUnit' Source # | |||||
Defined in Text.LLVM.AST type Rep1 DICompileUnit' = D1 ('MetaData "DICompileUnit'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DICompileUnit" 'PrefixI 'True) ((((S1 ('MetaSel ('Just "dicuLanguage") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DwarfLang) :*: S1 ('MetaSel ('Just "dicuFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd')) :*: (S1 ('MetaSel ('Just "dicuProducer") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)) :*: (S1 ('MetaSel ('Just "dicuIsOptimized") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Just "dicuFlags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String))))) :*: ((S1 ('MetaSel ('Just "dicuRuntimeVersion") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word16) :*: S1 ('MetaSel ('Just "dicuSplitDebugFilename") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe FilePath))) :*: (S1 ('MetaSel ('Just "dicuEmissionKind") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DIEmissionKind) :*: (S1 ('MetaSel ('Just "dicuEnums") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "dicuRetainedTypes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd'))))) :*: (((S1 ('MetaSel ('Just "dicuSubprograms") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "dicuGlobals") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd')) :*: (S1 ('MetaSel ('Just "dicuImports") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: (S1 ('MetaSel ('Just "dicuMacros") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "dicuDWOId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64)))) :*: ((S1 ('MetaSel ('Just "dicuSplitDebugInlining") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: (S1 ('MetaSel ('Just "dicuDebugInfoForProf") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Just "dicuNameTableKind") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64))) :*: (S1 ('MetaSel ('Just "dicuRangesBaseAddress") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: (S1 ('MetaSel ('Just "dicuSysRoot") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)) :*: S1 ('MetaSel ('Just "dicuSDK") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)))))))) | |||||
type Rep (DICompileUnit' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (DICompileUnit' lab) = D1 ('MetaData "DICompileUnit'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DICompileUnit" 'PrefixI 'True) ((((S1 ('MetaSel ('Just "dicuLanguage") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DwarfLang) :*: S1 ('MetaSel ('Just "dicuFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab)))) :*: (S1 ('MetaSel ('Just "dicuProducer") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)) :*: (S1 ('MetaSel ('Just "dicuIsOptimized") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Just "dicuFlags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String))))) :*: ((S1 ('MetaSel ('Just "dicuRuntimeVersion") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word16) :*: S1 ('MetaSel ('Just "dicuSplitDebugFilename") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe FilePath))) :*: (S1 ('MetaSel ('Just "dicuEmissionKind") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DIEmissionKind) :*: (S1 ('MetaSel ('Just "dicuEnums") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "dicuRetainedTypes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))))))) :*: (((S1 ('MetaSel ('Just "dicuSubprograms") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "dicuGlobals") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab)))) :*: (S1 ('MetaSel ('Just "dicuImports") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: (S1 ('MetaSel ('Just "dicuMacros") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "dicuDWOId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64)))) :*: ((S1 ('MetaSel ('Just "dicuSplitDebugInlining") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: (S1 ('MetaSel ('Just "dicuDebugInfoForProf") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Just "dicuNameTableKind") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64))) :*: (S1 ('MetaSel ('Just "dicuRangesBaseAddress") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: (S1 ('MetaSel ('Just "dicuSysRoot") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)) :*: S1 ('MetaSel ('Just "dicuSDK") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)))))))) |
type DICompileUnit = DICompileUnit' BlockLabel Source #
data DICompositeType' lab Source #
Constructors
DICompositeType | |
Fields
|
Instances
Functor DICompositeType' Source # | |||||
Defined in Text.LLVM.AST Methods fmap :: (a -> b) -> DICompositeType' a -> DICompositeType' b (<$) :: a -> DICompositeType' b -> DICompositeType' a | |||||
HasLabel DICompositeType' Source # | |||||
Defined in Text.LLVM.Labels Methods relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DICompositeType' a -> m (DICompositeType' b) Source # | |||||
Generic1 DICompositeType' Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from1 :: DICompositeType' a -> Rep1 DICompositeType' a to1 :: Rep1 DICompositeType' a -> DICompositeType' a | |||||
Data lab => Data (DICompositeType' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DICompositeType' lab -> c (DICompositeType' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (DICompositeType' lab) toConstr :: DICompositeType' lab -> Constr dataTypeOf :: DICompositeType' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (DICompositeType' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (DICompositeType' lab)) gmapT :: (forall b. Data b => b -> b) -> DICompositeType' lab -> DICompositeType' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DICompositeType' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DICompositeType' lab -> r gmapQ :: (forall d. Data d => d -> u) -> DICompositeType' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DICompositeType' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DICompositeType' lab -> m (DICompositeType' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DICompositeType' lab -> m (DICompositeType' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DICompositeType' lab -> m (DICompositeType' lab) | |||||
Generic (DICompositeType' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from :: DICompositeType' lab -> Rep (DICompositeType' lab) x to :: Rep (DICompositeType' lab) x -> DICompositeType' lab | |||||
Show lab => Show (DICompositeType' lab) Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> DICompositeType' lab -> ShowS show :: DICompositeType' lab -> String showList :: [DICompositeType' lab] -> ShowS | |||||
Eq lab => Eq (DICompositeType' lab) Source # | |||||
Defined in Text.LLVM.AST Methods (==) :: DICompositeType' lab -> DICompositeType' lab -> Bool (/=) :: DICompositeType' lab -> DICompositeType' lab -> Bool | |||||
Ord lab => Ord (DICompositeType' lab) Source # | |||||
Defined in Text.LLVM.AST Methods compare :: DICompositeType' lab -> DICompositeType' lab -> Ordering (<) :: DICompositeType' lab -> DICompositeType' lab -> Bool (<=) :: DICompositeType' lab -> DICompositeType' lab -> Bool (>) :: DICompositeType' lab -> DICompositeType' lab -> Bool (>=) :: DICompositeType' lab -> DICompositeType' lab -> Bool max :: DICompositeType' lab -> DICompositeType' lab -> DICompositeType' lab min :: DICompositeType' lab -> DICompositeType' lab -> DICompositeType' lab | |||||
type Rep1 DICompositeType' Source # | |||||
Defined in Text.LLVM.AST type Rep1 DICompositeType' = D1 ('MetaData "DICompositeType'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DICompositeType" 'PrefixI 'True) ((((S1 ('MetaSel ('Just "dictTag") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DwarfTag) :*: S1 ('MetaSel ('Just "dictName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String))) :*: (S1 ('MetaSel ('Just "dictFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: (S1 ('MetaSel ('Just "dictLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: S1 ('MetaSel ('Just "dictScope") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd')))) :*: ((S1 ('MetaSel ('Just "dictBaseType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "dictSize") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64)) :*: (S1 ('MetaSel ('Just "dictAlign") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: (S1 ('MetaSel ('Just "dictOffset") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Just "dictFlags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DIFlags))))) :*: (((S1 ('MetaSel ('Just "dictElements") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "dictRuntimeLang") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DwarfLang)) :*: (S1 ('MetaSel ('Just "dictVTableHolder") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: (S1 ('MetaSel ('Just "dictTemplateParams") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "dictIdentifier") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String))))) :*: ((S1 ('MetaSel ('Just "dictDiscriminator") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: (S1 ('MetaSel ('Just "dictDataLocation") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "dictAssociated") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd'))) :*: (S1 ('MetaSel ('Just "dictAllocated") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: (S1 ('MetaSel ('Just "dictRank") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "dictAnnotations") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd'))))))) | |||||
type Rep (DICompositeType' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (DICompositeType' lab) = D1 ('MetaData "DICompositeType'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DICompositeType" 'PrefixI 'True) ((((S1 ('MetaSel ('Just "dictTag") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DwarfTag) :*: S1 ('MetaSel ('Just "dictName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String))) :*: (S1 ('MetaSel ('Just "dictFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: (S1 ('MetaSel ('Just "dictLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: S1 ('MetaSel ('Just "dictScope") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab)))))) :*: ((S1 ('MetaSel ('Just "dictBaseType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "dictSize") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64)) :*: (S1 ('MetaSel ('Just "dictAlign") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: (S1 ('MetaSel ('Just "dictOffset") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Just "dictFlags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DIFlags))))) :*: (((S1 ('MetaSel ('Just "dictElements") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "dictRuntimeLang") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DwarfLang)) :*: (S1 ('MetaSel ('Just "dictVTableHolder") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: (S1 ('MetaSel ('Just "dictTemplateParams") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "dictIdentifier") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String))))) :*: ((S1 ('MetaSel ('Just "dictDiscriminator") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: (S1 ('MetaSel ('Just "dictDataLocation") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "dictAssociated") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))))) :*: (S1 ('MetaSel ('Just "dictAllocated") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: (S1 ('MetaSel ('Just "dictRank") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "dictAnnotations") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))))))))) |
data DIDerivedType' lab Source #
Constructors
DIDerivedType | |
Fields
|
Instances
Functor DIDerivedType' Source # | |||||
Defined in Text.LLVM.AST Methods fmap :: (a -> b) -> DIDerivedType' a -> DIDerivedType' b (<$) :: a -> DIDerivedType' b -> DIDerivedType' a | |||||
HasLabel DIDerivedType' Source # | |||||
Defined in Text.LLVM.Labels Methods relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DIDerivedType' a -> m (DIDerivedType' b) Source # | |||||
Generic1 DIDerivedType' Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from1 :: DIDerivedType' a -> Rep1 DIDerivedType' a to1 :: Rep1 DIDerivedType' a -> DIDerivedType' a | |||||
Data lab => Data (DIDerivedType' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DIDerivedType' lab -> c (DIDerivedType' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (DIDerivedType' lab) toConstr :: DIDerivedType' lab -> Constr dataTypeOf :: DIDerivedType' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (DIDerivedType' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (DIDerivedType' lab)) gmapT :: (forall b. Data b => b -> b) -> DIDerivedType' lab -> DIDerivedType' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DIDerivedType' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DIDerivedType' lab -> r gmapQ :: (forall d. Data d => d -> u) -> DIDerivedType' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DIDerivedType' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DIDerivedType' lab -> m (DIDerivedType' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DIDerivedType' lab -> m (DIDerivedType' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DIDerivedType' lab -> m (DIDerivedType' lab) | |||||
Generic (DIDerivedType' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from :: DIDerivedType' lab -> Rep (DIDerivedType' lab) x to :: Rep (DIDerivedType' lab) x -> DIDerivedType' lab | |||||
Show lab => Show (DIDerivedType' lab) Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> DIDerivedType' lab -> ShowS show :: DIDerivedType' lab -> String showList :: [DIDerivedType' lab] -> ShowS | |||||
Eq lab => Eq (DIDerivedType' lab) Source # | |||||
Defined in Text.LLVM.AST Methods (==) :: DIDerivedType' lab -> DIDerivedType' lab -> Bool (/=) :: DIDerivedType' lab -> DIDerivedType' lab -> Bool | |||||
Ord lab => Ord (DIDerivedType' lab) Source # | |||||
Defined in Text.LLVM.AST Methods compare :: DIDerivedType' lab -> DIDerivedType' lab -> Ordering (<) :: DIDerivedType' lab -> DIDerivedType' lab -> Bool (<=) :: DIDerivedType' lab -> DIDerivedType' lab -> Bool (>) :: DIDerivedType' lab -> DIDerivedType' lab -> Bool (>=) :: DIDerivedType' lab -> DIDerivedType' lab -> Bool max :: DIDerivedType' lab -> DIDerivedType' lab -> DIDerivedType' lab min :: DIDerivedType' lab -> DIDerivedType' lab -> DIDerivedType' lab | |||||
type Rep1 DIDerivedType' Source # | |||||
Defined in Text.LLVM.AST type Rep1 DIDerivedType' = D1 ('MetaData "DIDerivedType'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DIDerivedType" 'PrefixI 'True) (((S1 ('MetaSel ('Just "didtTag") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DwarfTag) :*: (S1 ('MetaSel ('Just "didtName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)) :*: S1 ('MetaSel ('Just "didtFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd'))) :*: (S1 ('MetaSel ('Just "didtLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: (S1 ('MetaSel ('Just "didtScope") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "didtBaseType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd')))) :*: ((S1 ('MetaSel ('Just "didtSize") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: (S1 ('MetaSel ('Just "didtAlign") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Just "didtOffset") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64))) :*: ((S1 ('MetaSel ('Just "didtFlags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DIFlags) :*: S1 ('MetaSel ('Just "didtExtraData") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd')) :*: (S1 ('MetaSel ('Just "didtDwarfAddressSpace") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Word32)) :*: S1 ('MetaSel ('Just "didtAnnotations") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd')))))) | |||||
type Rep (DIDerivedType' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (DIDerivedType' lab) = D1 ('MetaData "DIDerivedType'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DIDerivedType" 'PrefixI 'True) (((S1 ('MetaSel ('Just "didtTag") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DwarfTag) :*: (S1 ('MetaSel ('Just "didtName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)) :*: S1 ('MetaSel ('Just "didtFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))))) :*: (S1 ('MetaSel ('Just "didtLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: (S1 ('MetaSel ('Just "didtScope") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "didtBaseType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab)))))) :*: ((S1 ('MetaSel ('Just "didtSize") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: (S1 ('MetaSel ('Just "didtAlign") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Just "didtOffset") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64))) :*: ((S1 ('MetaSel ('Just "didtFlags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DIFlags) :*: S1 ('MetaSel ('Just "didtExtraData") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab)))) :*: (S1 ('MetaSel ('Just "didtDwarfAddressSpace") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Word32)) :*: S1 ('MetaSel ('Just "didtAnnotations") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab)))))))) |
type DIDerivedType = DIDerivedType' BlockLabel Source #
data DIExpression Source #
Constructors
DIExpression | |
Fields
|
Instances
Data DIExpression Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DIExpression -> c DIExpression gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DIExpression toConstr :: DIExpression -> Constr dataTypeOf :: DIExpression -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c DIExpression) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c DIExpression) gmapT :: (forall b. Data b => b -> b) -> DIExpression -> DIExpression gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DIExpression -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DIExpression -> r gmapQ :: (forall d. Data d => d -> u) -> DIExpression -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DIExpression -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DIExpression -> m DIExpression gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DIExpression -> m DIExpression gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DIExpression -> m DIExpression | |||||
Generic DIExpression Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show DIExpression Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> DIExpression -> ShowS show :: DIExpression -> String showList :: [DIExpression] -> ShowS | |||||
Eq DIExpression Source # | |||||
Defined in Text.LLVM.AST | |||||
Ord DIExpression Source # | |||||
Defined in Text.LLVM.AST Methods compare :: DIExpression -> DIExpression -> Ordering (<) :: DIExpression -> DIExpression -> Bool (<=) :: DIExpression -> DIExpression -> Bool (>) :: DIExpression -> DIExpression -> Bool (>=) :: DIExpression -> DIExpression -> Bool max :: DIExpression -> DIExpression -> DIExpression min :: DIExpression -> DIExpression -> DIExpression | |||||
type Rep DIExpression Source # | |||||
Defined in Text.LLVM.AST type Rep DIExpression = D1 ('MetaData "DIExpression" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DIExpression" 'PrefixI 'True) (S1 ('MetaSel ('Just "dieElements") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Word64]))) |
Constructors
DIFile | |
Fields
|
Instances
Data DIFile Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DIFile -> c DIFile gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DIFile dataTypeOf :: DIFile -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c DIFile) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c DIFile) gmapT :: (forall b. Data b => b -> b) -> DIFile -> DIFile gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DIFile -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DIFile -> r gmapQ :: (forall d. Data d => d -> u) -> DIFile -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DIFile -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DIFile -> m DIFile gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DIFile -> m DIFile gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DIFile -> m DIFile | |||||
Generic DIFile Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Show DIFile Source # | |||||
Eq DIFile Source # | |||||
Ord DIFile Source # | |||||
type Rep DIFile Source # | |||||
Defined in Text.LLVM.AST type Rep DIFile = D1 ('MetaData "DIFile" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DIFile" 'PrefixI 'True) (S1 ('MetaSel ('Just "difFilename") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FilePath) :*: S1 ('MetaSel ('Just "difDirectory") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FilePath))) |
data DIGlobalVariable' lab Source #
Constructors
DIGlobalVariable | |
Fields
|
Instances
Functor DIGlobalVariable' Source # | |||||
Defined in Text.LLVM.AST Methods fmap :: (a -> b) -> DIGlobalVariable' a -> DIGlobalVariable' b (<$) :: a -> DIGlobalVariable' b -> DIGlobalVariable' a | |||||
HasLabel DIGlobalVariable' Source # | |||||
Defined in Text.LLVM.Labels Methods relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DIGlobalVariable' a -> m (DIGlobalVariable' b) Source # | |||||
Generic1 DIGlobalVariable' Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from1 :: DIGlobalVariable' a -> Rep1 DIGlobalVariable' a to1 :: Rep1 DIGlobalVariable' a -> DIGlobalVariable' a | |||||
Data lab => Data (DIGlobalVariable' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DIGlobalVariable' lab -> c (DIGlobalVariable' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (DIGlobalVariable' lab) toConstr :: DIGlobalVariable' lab -> Constr dataTypeOf :: DIGlobalVariable' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (DIGlobalVariable' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (DIGlobalVariable' lab)) gmapT :: (forall b. Data b => b -> b) -> DIGlobalVariable' lab -> DIGlobalVariable' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DIGlobalVariable' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DIGlobalVariable' lab -> r gmapQ :: (forall d. Data d => d -> u) -> DIGlobalVariable' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DIGlobalVariable' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DIGlobalVariable' lab -> m (DIGlobalVariable' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DIGlobalVariable' lab -> m (DIGlobalVariable' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DIGlobalVariable' lab -> m (DIGlobalVariable' lab) | |||||
Generic (DIGlobalVariable' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from :: DIGlobalVariable' lab -> Rep (DIGlobalVariable' lab) x to :: Rep (DIGlobalVariable' lab) x -> DIGlobalVariable' lab | |||||
Show lab => Show (DIGlobalVariable' lab) Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> DIGlobalVariable' lab -> ShowS show :: DIGlobalVariable' lab -> String showList :: [DIGlobalVariable' lab] -> ShowS | |||||
Eq lab => Eq (DIGlobalVariable' lab) Source # | |||||
Defined in Text.LLVM.AST Methods (==) :: DIGlobalVariable' lab -> DIGlobalVariable' lab -> Bool (/=) :: DIGlobalVariable' lab -> DIGlobalVariable' lab -> Bool | |||||
Ord lab => Ord (DIGlobalVariable' lab) Source # | |||||
Defined in Text.LLVM.AST Methods compare :: DIGlobalVariable' lab -> DIGlobalVariable' lab -> Ordering (<) :: DIGlobalVariable' lab -> DIGlobalVariable' lab -> Bool (<=) :: DIGlobalVariable' lab -> DIGlobalVariable' lab -> Bool (>) :: DIGlobalVariable' lab -> DIGlobalVariable' lab -> Bool (>=) :: DIGlobalVariable' lab -> DIGlobalVariable' lab -> Bool max :: DIGlobalVariable' lab -> DIGlobalVariable' lab -> DIGlobalVariable' lab min :: DIGlobalVariable' lab -> DIGlobalVariable' lab -> DIGlobalVariable' lab | |||||
type Rep1 DIGlobalVariable' Source # | |||||
Defined in Text.LLVM.AST type Rep1 DIGlobalVariable' = D1 ('MetaData "DIGlobalVariable'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DIGlobalVariable" 'PrefixI 'True) (((S1 ('MetaSel ('Just "digvScope") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: (S1 ('MetaSel ('Just "digvName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)) :*: S1 ('MetaSel ('Just "digvLinkageName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)))) :*: (S1 ('MetaSel ('Just "digvFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: (S1 ('MetaSel ('Just "digvLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: S1 ('MetaSel ('Just "digvType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd')))) :*: ((S1 ('MetaSel ('Just "digvIsLocal") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: (S1 ('MetaSel ('Just "digvIsDefinition") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Just "digvVariable") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd'))) :*: (S1 ('MetaSel ('Just "digvDeclaration") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: (S1 ('MetaSel ('Just "digvAlignment") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Word32)) :*: S1 ('MetaSel ('Just "digvAnnotations") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd')))))) | |||||
type Rep (DIGlobalVariable' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (DIGlobalVariable' lab) = D1 ('MetaData "DIGlobalVariable'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DIGlobalVariable" 'PrefixI 'True) (((S1 ('MetaSel ('Just "digvScope") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: (S1 ('MetaSel ('Just "digvName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)) :*: S1 ('MetaSel ('Just "digvLinkageName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)))) :*: (S1 ('MetaSel ('Just "digvFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: (S1 ('MetaSel ('Just "digvLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: S1 ('MetaSel ('Just "digvType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab)))))) :*: ((S1 ('MetaSel ('Just "digvIsLocal") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: (S1 ('MetaSel ('Just "digvIsDefinition") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Just "digvVariable") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))))) :*: (S1 ('MetaSel ('Just "digvDeclaration") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: (S1 ('MetaSel ('Just "digvAlignment") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Word32)) :*: S1 ('MetaSel ('Just "digvAnnotations") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab)))))))) |
data DIGlobalVariableExpression' lab Source #
Constructors
DIGlobalVariableExpression | |
Fields
|
Instances
Functor DIGlobalVariableExpression' Source # | |||||
Defined in Text.LLVM.AST Methods fmap :: (a -> b) -> DIGlobalVariableExpression' a -> DIGlobalVariableExpression' b (<$) :: a -> DIGlobalVariableExpression' b -> DIGlobalVariableExpression' a | |||||
HasLabel DIGlobalVariableExpression' Source # | |||||
Defined in Text.LLVM.Labels Methods relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DIGlobalVariableExpression' a -> m (DIGlobalVariableExpression' b) Source # | |||||
Generic1 DIGlobalVariableExpression' Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from1 :: DIGlobalVariableExpression' a -> Rep1 DIGlobalVariableExpression' a to1 :: Rep1 DIGlobalVariableExpression' a -> DIGlobalVariableExpression' a | |||||
Data lab => Data (DIGlobalVariableExpression' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DIGlobalVariableExpression' lab -> c (DIGlobalVariableExpression' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (DIGlobalVariableExpression' lab) toConstr :: DIGlobalVariableExpression' lab -> Constr dataTypeOf :: DIGlobalVariableExpression' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (DIGlobalVariableExpression' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (DIGlobalVariableExpression' lab)) gmapT :: (forall b. Data b => b -> b) -> DIGlobalVariableExpression' lab -> DIGlobalVariableExpression' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DIGlobalVariableExpression' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DIGlobalVariableExpression' lab -> r gmapQ :: (forall d. Data d => d -> u) -> DIGlobalVariableExpression' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DIGlobalVariableExpression' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DIGlobalVariableExpression' lab -> m (DIGlobalVariableExpression' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DIGlobalVariableExpression' lab -> m (DIGlobalVariableExpression' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DIGlobalVariableExpression' lab -> m (DIGlobalVariableExpression' lab) | |||||
Generic (DIGlobalVariableExpression' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from :: DIGlobalVariableExpression' lab -> Rep (DIGlobalVariableExpression' lab) x to :: Rep (DIGlobalVariableExpression' lab) x -> DIGlobalVariableExpression' lab | |||||
Show lab => Show (DIGlobalVariableExpression' lab) Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> DIGlobalVariableExpression' lab -> ShowS show :: DIGlobalVariableExpression' lab -> String showList :: [DIGlobalVariableExpression' lab] -> ShowS | |||||
Eq lab => Eq (DIGlobalVariableExpression' lab) Source # | |||||
Defined in Text.LLVM.AST Methods (==) :: DIGlobalVariableExpression' lab -> DIGlobalVariableExpression' lab -> Bool (/=) :: DIGlobalVariableExpression' lab -> DIGlobalVariableExpression' lab -> Bool | |||||
Ord lab => Ord (DIGlobalVariableExpression' lab) Source # | |||||
Defined in Text.LLVM.AST Methods compare :: DIGlobalVariableExpression' lab -> DIGlobalVariableExpression' lab -> Ordering (<) :: DIGlobalVariableExpression' lab -> DIGlobalVariableExpression' lab -> Bool (<=) :: DIGlobalVariableExpression' lab -> DIGlobalVariableExpression' lab -> Bool (>) :: DIGlobalVariableExpression' lab -> DIGlobalVariableExpression' lab -> Bool (>=) :: DIGlobalVariableExpression' lab -> DIGlobalVariableExpression' lab -> Bool max :: DIGlobalVariableExpression' lab -> DIGlobalVariableExpression' lab -> DIGlobalVariableExpression' lab min :: DIGlobalVariableExpression' lab -> DIGlobalVariableExpression' lab -> DIGlobalVariableExpression' lab | |||||
type Rep1 DIGlobalVariableExpression' Source # | |||||
Defined in Text.LLVM.AST type Rep1 DIGlobalVariableExpression' = D1 ('MetaData "DIGlobalVariableExpression'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DIGlobalVariableExpression" 'PrefixI 'True) (S1 ('MetaSel ('Just "digveVariable") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "digveExpression") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd'))) | |||||
type Rep (DIGlobalVariableExpression' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (DIGlobalVariableExpression' lab) = D1 ('MetaData "DIGlobalVariableExpression'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DIGlobalVariableExpression" 'PrefixI 'True) (S1 ('MetaSel ('Just "digveVariable") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "digveExpression") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))))) |
data DILexicalBlock' lab Source #
Constructors
DILexicalBlock | |
Instances
Functor DILexicalBlock' Source # | |||||
Defined in Text.LLVM.AST Methods fmap :: (a -> b) -> DILexicalBlock' a -> DILexicalBlock' b (<$) :: a -> DILexicalBlock' b -> DILexicalBlock' a | |||||
HasLabel DILexicalBlock' Source # | |||||
Defined in Text.LLVM.Labels Methods relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DILexicalBlock' a -> m (DILexicalBlock' b) Source # | |||||
Generic1 DILexicalBlock' Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from1 :: DILexicalBlock' a -> Rep1 DILexicalBlock' a to1 :: Rep1 DILexicalBlock' a -> DILexicalBlock' a | |||||
Data lab => Data (DILexicalBlock' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DILexicalBlock' lab -> c (DILexicalBlock' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (DILexicalBlock' lab) toConstr :: DILexicalBlock' lab -> Constr dataTypeOf :: DILexicalBlock' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (DILexicalBlock' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (DILexicalBlock' lab)) gmapT :: (forall b. Data b => b -> b) -> DILexicalBlock' lab -> DILexicalBlock' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DILexicalBlock' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DILexicalBlock' lab -> r gmapQ :: (forall d. Data d => d -> u) -> DILexicalBlock' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DILexicalBlock' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DILexicalBlock' lab -> m (DILexicalBlock' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DILexicalBlock' lab -> m (DILexicalBlock' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DILexicalBlock' lab -> m (DILexicalBlock' lab) | |||||
Generic (DILexicalBlock' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from :: DILexicalBlock' lab -> Rep (DILexicalBlock' lab) x to :: Rep (DILexicalBlock' lab) x -> DILexicalBlock' lab | |||||
Show lab => Show (DILexicalBlock' lab) Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> DILexicalBlock' lab -> ShowS show :: DILexicalBlock' lab -> String showList :: [DILexicalBlock' lab] -> ShowS | |||||
Eq lab => Eq (DILexicalBlock' lab) Source # | |||||
Defined in Text.LLVM.AST Methods (==) :: DILexicalBlock' lab -> DILexicalBlock' lab -> Bool (/=) :: DILexicalBlock' lab -> DILexicalBlock' lab -> Bool | |||||
Ord lab => Ord (DILexicalBlock' lab) Source # | |||||
Defined in Text.LLVM.AST Methods compare :: DILexicalBlock' lab -> DILexicalBlock' lab -> Ordering (<) :: DILexicalBlock' lab -> DILexicalBlock' lab -> Bool (<=) :: DILexicalBlock' lab -> DILexicalBlock' lab -> Bool (>) :: DILexicalBlock' lab -> DILexicalBlock' lab -> Bool (>=) :: DILexicalBlock' lab -> DILexicalBlock' lab -> Bool max :: DILexicalBlock' lab -> DILexicalBlock' lab -> DILexicalBlock' lab min :: DILexicalBlock' lab -> DILexicalBlock' lab -> DILexicalBlock' lab | |||||
type Rep1 DILexicalBlock' Source # | |||||
Defined in Text.LLVM.AST type Rep1 DILexicalBlock' = D1 ('MetaData "DILexicalBlock'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DILexicalBlock" 'PrefixI 'True) ((S1 ('MetaSel ('Just "dilbScope") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "dilbFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd')) :*: (S1 ('MetaSel ('Just "dilbLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: S1 ('MetaSel ('Just "dilbColumn") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word16)))) | |||||
type Rep (DILexicalBlock' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (DILexicalBlock' lab) = D1 ('MetaData "DILexicalBlock'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DILexicalBlock" 'PrefixI 'True) ((S1 ('MetaSel ('Just "dilbScope") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "dilbFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab)))) :*: (S1 ('MetaSel ('Just "dilbLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: S1 ('MetaSel ('Just "dilbColumn") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word16)))) |
data DILexicalBlockFile' lab Source #
Constructors
DILexicalBlockFile | |
Fields
|
Instances
Functor DILexicalBlockFile' Source # | |||||
Defined in Text.LLVM.AST Methods fmap :: (a -> b) -> DILexicalBlockFile' a -> DILexicalBlockFile' b (<$) :: a -> DILexicalBlockFile' b -> DILexicalBlockFile' a | |||||
HasLabel DILexicalBlockFile' Source # | |||||
Defined in Text.LLVM.Labels Methods relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DILexicalBlockFile' a -> m (DILexicalBlockFile' b) Source # | |||||
Generic1 DILexicalBlockFile' Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from1 :: DILexicalBlockFile' a -> Rep1 DILexicalBlockFile' a to1 :: Rep1 DILexicalBlockFile' a -> DILexicalBlockFile' a | |||||
Data lab => Data (DILexicalBlockFile' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DILexicalBlockFile' lab -> c (DILexicalBlockFile' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (DILexicalBlockFile' lab) toConstr :: DILexicalBlockFile' lab -> Constr dataTypeOf :: DILexicalBlockFile' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (DILexicalBlockFile' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (DILexicalBlockFile' lab)) gmapT :: (forall b. Data b => b -> b) -> DILexicalBlockFile' lab -> DILexicalBlockFile' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DILexicalBlockFile' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DILexicalBlockFile' lab -> r gmapQ :: (forall d. Data d => d -> u) -> DILexicalBlockFile' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DILexicalBlockFile' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DILexicalBlockFile' lab -> m (DILexicalBlockFile' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DILexicalBlockFile' lab -> m (DILexicalBlockFile' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DILexicalBlockFile' lab -> m (DILexicalBlockFile' lab) | |||||
Generic (DILexicalBlockFile' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from :: DILexicalBlockFile' lab -> Rep (DILexicalBlockFile' lab) x to :: Rep (DILexicalBlockFile' lab) x -> DILexicalBlockFile' lab | |||||
Show lab => Show (DILexicalBlockFile' lab) Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> DILexicalBlockFile' lab -> ShowS show :: DILexicalBlockFile' lab -> String showList :: [DILexicalBlockFile' lab] -> ShowS | |||||
Eq lab => Eq (DILexicalBlockFile' lab) Source # | |||||
Defined in Text.LLVM.AST Methods (==) :: DILexicalBlockFile' lab -> DILexicalBlockFile' lab -> Bool (/=) :: DILexicalBlockFile' lab -> DILexicalBlockFile' lab -> Bool | |||||
Ord lab => Ord (DILexicalBlockFile' lab) Source # | |||||
Defined in Text.LLVM.AST Methods compare :: DILexicalBlockFile' lab -> DILexicalBlockFile' lab -> Ordering (<) :: DILexicalBlockFile' lab -> DILexicalBlockFile' lab -> Bool (<=) :: DILexicalBlockFile' lab -> DILexicalBlockFile' lab -> Bool (>) :: DILexicalBlockFile' lab -> DILexicalBlockFile' lab -> Bool (>=) :: DILexicalBlockFile' lab -> DILexicalBlockFile' lab -> Bool max :: DILexicalBlockFile' lab -> DILexicalBlockFile' lab -> DILexicalBlockFile' lab min :: DILexicalBlockFile' lab -> DILexicalBlockFile' lab -> DILexicalBlockFile' lab | |||||
type Rep1 DILexicalBlockFile' Source # | |||||
Defined in Text.LLVM.AST type Rep1 DILexicalBlockFile' = D1 ('MetaData "DILexicalBlockFile'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DILexicalBlockFile" 'PrefixI 'True) (S1 ('MetaSel ('Just "dilbfScope") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 ValMd') :*: (S1 ('MetaSel ('Just "dilbfFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "dilbfDiscriminator") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32)))) | |||||
type Rep (DILexicalBlockFile' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (DILexicalBlockFile' lab) = D1 ('MetaData "DILexicalBlockFile'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DILexicalBlockFile" 'PrefixI 'True) (S1 ('MetaSel ('Just "dilbfScope") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (ValMd' lab)) :*: (S1 ('MetaSel ('Just "dilbfFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "dilbfDiscriminator") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32)))) |
data DILocalVariable' lab Source #
Constructors
DILocalVariable | |
Instances
Functor DILocalVariable' Source # | |||||
Defined in Text.LLVM.AST Methods fmap :: (a -> b) -> DILocalVariable' a -> DILocalVariable' b (<$) :: a -> DILocalVariable' b -> DILocalVariable' a | |||||
HasLabel DILocalVariable' Source # | |||||
Defined in Text.LLVM.Labels Methods relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DILocalVariable' a -> m (DILocalVariable' b) Source # | |||||
Generic1 DILocalVariable' Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from1 :: DILocalVariable' a -> Rep1 DILocalVariable' a to1 :: Rep1 DILocalVariable' a -> DILocalVariable' a | |||||
Data lab => Data (DILocalVariable' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DILocalVariable' lab -> c (DILocalVariable' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (DILocalVariable' lab) toConstr :: DILocalVariable' lab -> Constr dataTypeOf :: DILocalVariable' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (DILocalVariable' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (DILocalVariable' lab)) gmapT :: (forall b. Data b => b -> b) -> DILocalVariable' lab -> DILocalVariable' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DILocalVariable' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DILocalVariable' lab -> r gmapQ :: (forall d. Data d => d -> u) -> DILocalVariable' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DILocalVariable' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DILocalVariable' lab -> m (DILocalVariable' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DILocalVariable' lab -> m (DILocalVariable' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DILocalVariable' lab -> m (DILocalVariable' lab) | |||||
Generic (DILocalVariable' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from :: DILocalVariable' lab -> Rep (DILocalVariable' lab) x to :: Rep (DILocalVariable' lab) x -> DILocalVariable' lab | |||||
Show lab => Show (DILocalVariable' lab) Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> DILocalVariable' lab -> ShowS show :: DILocalVariable' lab -> String showList :: [DILocalVariable' lab] -> ShowS | |||||
Eq lab => Eq (DILocalVariable' lab) Source # | |||||
Defined in Text.LLVM.AST Methods (==) :: DILocalVariable' lab -> DILocalVariable' lab -> Bool (/=) :: DILocalVariable' lab -> DILocalVariable' lab -> Bool | |||||
Ord lab => Ord (DILocalVariable' lab) Source # | |||||
Defined in Text.LLVM.AST Methods compare :: DILocalVariable' lab -> DILocalVariable' lab -> Ordering (<) :: DILocalVariable' lab -> DILocalVariable' lab -> Bool (<=) :: DILocalVariable' lab -> DILocalVariable' lab -> Bool (>) :: DILocalVariable' lab -> DILocalVariable' lab -> Bool (>=) :: DILocalVariable' lab -> DILocalVariable' lab -> Bool max :: DILocalVariable' lab -> DILocalVariable' lab -> DILocalVariable' lab min :: DILocalVariable' lab -> DILocalVariable' lab -> DILocalVariable' lab | |||||
type Rep1 DILocalVariable' Source # | |||||
Defined in Text.LLVM.AST type Rep1 DILocalVariable' = D1 ('MetaData "DILocalVariable'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DILocalVariable" 'PrefixI 'True) (((S1 ('MetaSel ('Just "dilvScope") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "dilvName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String))) :*: (S1 ('MetaSel ('Just "dilvFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "dilvLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32))) :*: ((S1 ('MetaSel ('Just "dilvType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "dilvArg") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word16)) :*: (S1 ('MetaSel ('Just "dilvFlags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DIFlags) :*: (S1 ('MetaSel ('Just "dilvAlignment") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Word32)) :*: S1 ('MetaSel ('Just "dilvAnnotations") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd')))))) | |||||
type Rep (DILocalVariable' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (DILocalVariable' lab) = D1 ('MetaData "DILocalVariable'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DILocalVariable" 'PrefixI 'True) (((S1 ('MetaSel ('Just "dilvScope") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "dilvName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String))) :*: (S1 ('MetaSel ('Just "dilvFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "dilvLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32))) :*: ((S1 ('MetaSel ('Just "dilvType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "dilvArg") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word16)) :*: (S1 ('MetaSel ('Just "dilvFlags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DIFlags) :*: (S1 ('MetaSel ('Just "dilvAlignment") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Word32)) :*: S1 ('MetaSel ('Just "dilvAnnotations") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab)))))))) |
data DISubprogram' lab Source #
Constructors
DISubprogram | |
Fields
|
Instances
Functor DISubprogram' Source # | |||||
Defined in Text.LLVM.AST Methods fmap :: (a -> b) -> DISubprogram' a -> DISubprogram' b (<$) :: a -> DISubprogram' b -> DISubprogram' a | |||||
HasLabel DISubprogram' Source # | |||||
Defined in Text.LLVM.Labels Methods relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DISubprogram' a -> m (DISubprogram' b) Source # | |||||
Generic1 DISubprogram' Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from1 :: DISubprogram' a -> Rep1 DISubprogram' a to1 :: Rep1 DISubprogram' a -> DISubprogram' a | |||||
Data lab => Data (DISubprogram' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DISubprogram' lab -> c (DISubprogram' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (DISubprogram' lab) toConstr :: DISubprogram' lab -> Constr dataTypeOf :: DISubprogram' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (DISubprogram' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (DISubprogram' lab)) gmapT :: (forall b. Data b => b -> b) -> DISubprogram' lab -> DISubprogram' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DISubprogram' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DISubprogram' lab -> r gmapQ :: (forall d. Data d => d -> u) -> DISubprogram' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DISubprogram' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DISubprogram' lab -> m (DISubprogram' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DISubprogram' lab -> m (DISubprogram' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DISubprogram' lab -> m (DISubprogram' lab) | |||||
Generic (DISubprogram' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from :: DISubprogram' lab -> Rep (DISubprogram' lab) x to :: Rep (DISubprogram' lab) x -> DISubprogram' lab | |||||
Show lab => Show (DISubprogram' lab) Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> DISubprogram' lab -> ShowS show :: DISubprogram' lab -> String showList :: [DISubprogram' lab] -> ShowS | |||||
Eq lab => Eq (DISubprogram' lab) Source # | |||||
Defined in Text.LLVM.AST Methods (==) :: DISubprogram' lab -> DISubprogram' lab -> Bool (/=) :: DISubprogram' lab -> DISubprogram' lab -> Bool | |||||
Ord lab => Ord (DISubprogram' lab) Source # | |||||
Defined in Text.LLVM.AST Methods compare :: DISubprogram' lab -> DISubprogram' lab -> Ordering (<) :: DISubprogram' lab -> DISubprogram' lab -> Bool (<=) :: DISubprogram' lab -> DISubprogram' lab -> Bool (>) :: DISubprogram' lab -> DISubprogram' lab -> Bool (>=) :: DISubprogram' lab -> DISubprogram' lab -> Bool max :: DISubprogram' lab -> DISubprogram' lab -> DISubprogram' lab min :: DISubprogram' lab -> DISubprogram' lab -> DISubprogram' lab | |||||
type Rep1 DISubprogram' Source # | |||||
Defined in Text.LLVM.AST type Rep1 DISubprogram' = D1 ('MetaData "DISubprogram'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DISubprogram" 'PrefixI 'True) ((((S1 ('MetaSel ('Just "dispScope") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "dispName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String))) :*: (S1 ('MetaSel ('Just "dispLinkageName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)) :*: (S1 ('MetaSel ('Just "dispFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "dispLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32)))) :*: ((S1 ('MetaSel ('Just "dispType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "dispIsLocal") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)) :*: (S1 ('MetaSel ('Just "dispIsDefinition") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: (S1 ('MetaSel ('Just "dispScopeLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: S1 ('MetaSel ('Just "dispContainingType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd'))))) :*: (((S1 ('MetaSel ('Just "dispVirtuality") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DwarfVirtuality) :*: S1 ('MetaSel ('Just "dispVirtualIndex") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32)) :*: (S1 ('MetaSel ('Just "dispThisAdjustment") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int64) :*: (S1 ('MetaSel ('Just "dispFlags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DIFlags) :*: S1 ('MetaSel ('Just "dispIsOptimized") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)))) :*: ((S1 ('MetaSel ('Just "dispUnit") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: (S1 ('MetaSel ('Just "dispTemplateParams") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "dispDeclaration") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd'))) :*: (S1 ('MetaSel ('Just "dispRetainedNodes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: (S1 ('MetaSel ('Just "dispThrownTypes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "dispAnnotations") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd'))))))) | |||||
type Rep (DISubprogram' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (DISubprogram' lab) = D1 ('MetaData "DISubprogram'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DISubprogram" 'PrefixI 'True) ((((S1 ('MetaSel ('Just "dispScope") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "dispName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String))) :*: (S1 ('MetaSel ('Just "dispLinkageName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)) :*: (S1 ('MetaSel ('Just "dispFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "dispLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32)))) :*: ((S1 ('MetaSel ('Just "dispType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "dispIsLocal") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)) :*: (S1 ('MetaSel ('Just "dispIsDefinition") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: (S1 ('MetaSel ('Just "dispScopeLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: S1 ('MetaSel ('Just "dispContainingType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))))))) :*: (((S1 ('MetaSel ('Just "dispVirtuality") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DwarfVirtuality) :*: S1 ('MetaSel ('Just "dispVirtualIndex") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32)) :*: (S1 ('MetaSel ('Just "dispThisAdjustment") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int64) :*: (S1 ('MetaSel ('Just "dispFlags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DIFlags) :*: S1 ('MetaSel ('Just "dispIsOptimized") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)))) :*: ((S1 ('MetaSel ('Just "dispUnit") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: (S1 ('MetaSel ('Just "dispTemplateParams") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "dispDeclaration") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))))) :*: (S1 ('MetaSel ('Just "dispRetainedNodes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: (S1 ('MetaSel ('Just "dispThrownTypes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "dispAnnotations") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))))))))) |
type DISubprogram = DISubprogram' BlockLabel Source #
data DISubrange' lab Source #
The DISubrange is a Value subrange specification, usually associated with arrays or enumerations.
- Early LLVM: only
disrCount
anddisrLowerBound
were present, where both were a direct signed 64-bit value. This corresponds to "format 0" in the bitcode encoding (see reference below). - LLVM 7:
disrCount
changed to metadata representation (ValMd
). The metadata representation should only be a signed 64-bit integer, a Variable, or an Expression. This corresponds to "format 1" in the bitcode encoding. - LLVM 11:
disrLowerBound
was changed to a metadata representation anddisrUpperBound
anddisrStride
were added (primarily driven by the addition of Fortran support in llvm). All three should only be represented as a signed 64-bit integer, a Variable, or an Expression. This corresponds to "format 2" in the bitcode encoding. See https://github.com/llvm/llvm-project/commit/d20bf5a for this change.
Also see https://github.com/llvm/llvm-project/blob/bbe8cd1/llvm/lib/Bitcode/Reader/MetadataLoader.cpp#L1435-L1461 for how this is read from the bitcode encoding and the use of the format values mentioned above.
Constructors
DISubrange | |
Fields
|
Instances
Functor DISubrange' Source # | |||||
Defined in Text.LLVM.AST Methods fmap :: (a -> b) -> DISubrange' a -> DISubrange' b (<$) :: a -> DISubrange' b -> DISubrange' a | |||||
HasLabel DISubrange' Source # | |||||
Defined in Text.LLVM.Labels Methods relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DISubrange' a -> m (DISubrange' b) Source # | |||||
Generic1 DISubrange' Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Data lab => Data (DISubrange' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DISubrange' lab -> c (DISubrange' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (DISubrange' lab) toConstr :: DISubrange' lab -> Constr dataTypeOf :: DISubrange' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (DISubrange' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (DISubrange' lab)) gmapT :: (forall b. Data b => b -> b) -> DISubrange' lab -> DISubrange' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DISubrange' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DISubrange' lab -> r gmapQ :: (forall d. Data d => d -> u) -> DISubrange' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DISubrange' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DISubrange' lab -> m (DISubrange' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DISubrange' lab -> m (DISubrange' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DISubrange' lab -> m (DISubrange' lab) | |||||
Generic (DISubrange' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from :: DISubrange' lab -> Rep (DISubrange' lab) x to :: Rep (DISubrange' lab) x -> DISubrange' lab | |||||
Show lab => Show (DISubrange' lab) Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> DISubrange' lab -> ShowS show :: DISubrange' lab -> String showList :: [DISubrange' lab] -> ShowS | |||||
Eq lab => Eq (DISubrange' lab) Source # | |||||
Defined in Text.LLVM.AST Methods (==) :: DISubrange' lab -> DISubrange' lab -> Bool (/=) :: DISubrange' lab -> DISubrange' lab -> Bool | |||||
Ord lab => Ord (DISubrange' lab) Source # | |||||
Defined in Text.LLVM.AST Methods compare :: DISubrange' lab -> DISubrange' lab -> Ordering (<) :: DISubrange' lab -> DISubrange' lab -> Bool (<=) :: DISubrange' lab -> DISubrange' lab -> Bool (>) :: DISubrange' lab -> DISubrange' lab -> Bool (>=) :: DISubrange' lab -> DISubrange' lab -> Bool max :: DISubrange' lab -> DISubrange' lab -> DISubrange' lab min :: DISubrange' lab -> DISubrange' lab -> DISubrange' lab | |||||
type Rep1 DISubrange' Source # | |||||
Defined in Text.LLVM.AST type Rep1 DISubrange' = D1 ('MetaData "DISubrange'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DISubrange" 'PrefixI 'True) ((S1 ('MetaSel ('Just "disrCount") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "disrLowerBound") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd')) :*: (S1 ('MetaSel ('Just "disrUpperBound") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd') :*: S1 ('MetaSel ('Just "disrStride") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd')))) | |||||
type Rep (DISubrange' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (DISubrange' lab) = D1 ('MetaData "DISubrange'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DISubrange" 'PrefixI 'True) ((S1 ('MetaSel ('Just "disrCount") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "disrLowerBound") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab)))) :*: (S1 ('MetaSel ('Just "disrUpperBound") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))) :*: S1 ('MetaSel ('Just "disrStride") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab)))))) |
type DISubrange = DISubrange' BlockLabel Source #
data DISubroutineType' lab Source #
Constructors
DISubroutineType | |
Fields
|
Instances
Functor DISubroutineType' Source # | |||||
Defined in Text.LLVM.AST Methods fmap :: (a -> b) -> DISubroutineType' a -> DISubroutineType' b (<$) :: a -> DISubroutineType' b -> DISubroutineType' a | |||||
HasLabel DISubroutineType' Source # | |||||
Defined in Text.LLVM.Labels Methods relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DISubroutineType' a -> m (DISubroutineType' b) Source # | |||||
Generic1 DISubroutineType' Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from1 :: DISubroutineType' a -> Rep1 DISubroutineType' a to1 :: Rep1 DISubroutineType' a -> DISubroutineType' a | |||||
Data lab => Data (DISubroutineType' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DISubroutineType' lab -> c (DISubroutineType' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (DISubroutineType' lab) toConstr :: DISubroutineType' lab -> Constr dataTypeOf :: DISubroutineType' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (DISubroutineType' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (DISubroutineType' lab)) gmapT :: (forall b. Data b => b -> b) -> DISubroutineType' lab -> DISubroutineType' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DISubroutineType' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DISubroutineType' lab -> r gmapQ :: (forall d. Data d => d -> u) -> DISubroutineType' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DISubroutineType' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DISubroutineType' lab -> m (DISubroutineType' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DISubroutineType' lab -> m (DISubroutineType' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DISubroutineType' lab -> m (DISubroutineType' lab) | |||||
Generic (DISubroutineType' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from :: DISubroutineType' lab -> Rep (DISubroutineType' lab) x to :: Rep (DISubroutineType' lab) x -> DISubroutineType' lab | |||||
Show lab => Show (DISubroutineType' lab) Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> DISubroutineType' lab -> ShowS show :: DISubroutineType' lab -> String showList :: [DISubroutineType' lab] -> ShowS | |||||
Eq lab => Eq (DISubroutineType' lab) Source # | |||||
Defined in Text.LLVM.AST Methods (==) :: DISubroutineType' lab -> DISubroutineType' lab -> Bool (/=) :: DISubroutineType' lab -> DISubroutineType' lab -> Bool | |||||
Ord lab => Ord (DISubroutineType' lab) Source # | |||||
Defined in Text.LLVM.AST Methods compare :: DISubroutineType' lab -> DISubroutineType' lab -> Ordering (<) :: DISubroutineType' lab -> DISubroutineType' lab -> Bool (<=) :: DISubroutineType' lab -> DISubroutineType' lab -> Bool (>) :: DISubroutineType' lab -> DISubroutineType' lab -> Bool (>=) :: DISubroutineType' lab -> DISubroutineType' lab -> Bool max :: DISubroutineType' lab -> DISubroutineType' lab -> DISubroutineType' lab min :: DISubroutineType' lab -> DISubroutineType' lab -> DISubroutineType' lab | |||||
type Rep1 DISubroutineType' Source # | |||||
Defined in Text.LLVM.AST type Rep1 DISubroutineType' = D1 ('MetaData "DISubroutineType'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DISubroutineType" 'PrefixI 'True) (S1 ('MetaSel ('Just "distFlags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DIFlags) :*: S1 ('MetaSel ('Just "distTypeArray") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Maybe :.: Rec1 ValMd'))) | |||||
type Rep (DISubroutineType' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (DISubroutineType' lab) = D1 ('MetaData "DISubroutineType'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "DISubroutineType" 'PrefixI 'True) (S1 ('MetaSel ('Just "distFlags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DIFlags) :*: S1 ('MetaSel ('Just "distTypeArray") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (ValMd' lab))))) |
newtype DIArgList' lab Source #
Instances
Functor DIArgList' Source # | |||||
Defined in Text.LLVM.AST | |||||
HasLabel DIArgList' Source # | |||||
Defined in Text.LLVM.Labels Methods relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DIArgList' a -> m (DIArgList' b) Source # | |||||
Generic1 DIArgList' Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
Data lab => Data (DIArgList' lab) Source # | |||||
Defined in Text.LLVM.AST Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DIArgList' lab -> c (DIArgList' lab) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (DIArgList' lab) toConstr :: DIArgList' lab -> Constr dataTypeOf :: DIArgList' lab -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (DIArgList' lab)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (DIArgList' lab)) gmapT :: (forall b. Data b => b -> b) -> DIArgList' lab -> DIArgList' lab gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DIArgList' lab -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DIArgList' lab -> r gmapQ :: (forall d. Data d => d -> u) -> DIArgList' lab -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DIArgList' lab -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DIArgList' lab -> m (DIArgList' lab) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DIArgList' lab -> m (DIArgList' lab) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DIArgList' lab -> m (DIArgList' lab) | |||||
Generic (DIArgList' lab) Source # | |||||
Defined in Text.LLVM.AST Associated Types
Methods from :: DIArgList' lab -> Rep (DIArgList' lab) x to :: Rep (DIArgList' lab) x -> DIArgList' lab | |||||
Show lab => Show (DIArgList' lab) Source # | |||||
Defined in Text.LLVM.AST Methods showsPrec :: Int -> DIArgList' lab -> ShowS show :: DIArgList' lab -> String showList :: [DIArgList' lab] -> ShowS | |||||
Eq lab => Eq (DIArgList' lab) Source # | |||||
Defined in Text.LLVM.AST Methods (==) :: DIArgList' lab -> DIArgList' lab -> Bool (/=) :: DIArgList' lab -> DIArgList' lab -> Bool | |||||
Ord lab => Ord (DIArgList' lab) Source # | |||||
Defined in Text.LLVM.AST Methods compare :: DIArgList' lab -> DIArgList' lab -> Ordering (<) :: DIArgList' lab -> DIArgList' lab -> Bool (<=) :: DIArgList' lab -> DIArgList' lab -> Bool (>) :: DIArgList' lab -> DIArgList' lab -> Bool (>=) :: DIArgList' lab -> DIArgList' lab -> Bool max :: DIArgList' lab -> DIArgList' lab -> DIArgList' lab min :: DIArgList' lab -> DIArgList' lab -> DIArgList' lab | |||||
type Rep1 DIArgList' Source # | |||||
Defined in Text.LLVM.AST type Rep1 DIArgList' = D1 ('MetaData "DIArgList'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'True) (C1 ('MetaCons "DIArgList" 'PrefixI 'True) (S1 ('MetaSel ('Just "dialArgs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) ([] :.: Rec1 ValMd'))) | |||||
type Rep (DIArgList' lab) Source # | |||||
Defined in Text.LLVM.AST type Rep (DIArgList' lab) = D1 ('MetaData "DIArgList'" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'True) (C1 ('MetaCons "DIArgList" 'PrefixI 'True) (S1 ('MetaSel ('Just "dialArgs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [ValMd' lab]))) |
type DIArgList = DIArgList' BlockLabel Source #
Aggregate Utilities
data IndexResult Source #
Constructors
Invalid | An invalid use of GEP |
HasType Type | A resolved type |
Resolve Ident (Type -> IndexResult) | Continue, after resolving an alias |
Instances
Generic IndexResult Source # | |||||
Defined in Text.LLVM.AST Associated Types
| |||||
type Rep IndexResult Source # | |||||
Defined in Text.LLVM.AST type Rep IndexResult = D1 ('MetaData "IndexResult" "Text.LLVM.AST" "llvm-pretty-0.12.1.0-J7nDdN4YKeb8muk7OBZdyB" 'False) (C1 ('MetaCons "Invalid" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "HasType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type)) :+: C1 ('MetaCons "Resolve" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Ident) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Type -> IndexResult))))) |
isInvalid :: IndexResult -> Bool Source #
Arguments
:: (Ident -> Maybe Type) | Type alias resolution |
-> Type | Base type used for calculations |
-> Typed (Value' lab) | Pointer value |
-> [Typed (Value' lab)] | Path |
-> Maybe Type | Type of result |
Resolves the type of a GEP instruction. Type aliases are resolved
using the given function. An invalid use of GEP or one relying
on unknown type aliases will return Nothing
resolveGep :: Type -> Typed (Value' lab) -> [Typed (Value' lab)] -> IndexResult Source #
Resolve the type of a GEP instruction. Note that the type produced is the type of the result, not necessarily a pointer.
resolveGepBody :: Type -> [Typed (Value' lab)] -> IndexResult Source #
Resolve the type of a GEP instruction. This assumes that the input has already been processed as a pointer.
isGepIndex :: Typed (Value' lab) -> Bool Source #
isGepStructIndex :: Typed (Value' lab) -> Maybe Integer Source #
resolveValueIndex :: Type -> [Int32] -> IndexResult Source #