| Safe Haskell | Safe |
|---|---|
| Language | Haskell2010 |
LLVM.AST.Operand
Description
A type to represent operands to LLVM Instructions
Synopsis
- data DILocalVariable = LocalVariable {}
- data DIGlobalVariable = GlobalVariable {
- name :: ShortByteString
- scope :: Maybe (MDRef DIScope)
- file :: Maybe (MDRef DIFile)
- line :: Word32
- type' :: Maybe (MDRef DIType)
- linkageName :: ShortByteString
- local :: Bool
- definition :: Bool
- staticDataMemberDeclaration :: Maybe (MDRef DIDerivedType)
- alignInBits :: Word32
- data DIVariable
- data DILexicalBlockBase
- = DILexicalBlock { }
- | DILexicalBlockFile {
- scope :: MDRef DILocalScope
- file :: Maybe (MDRef DIFile)
- discriminator :: Word32
- data DITemplateParameter
- = DITemplateTypeParameter {
- name :: ShortByteString
- type' :: MDRef DIType
- | DITemplateValueParameter { }
- = DITemplateTypeParameter {
- data TemplateValueParameterTag
- data Encoding
- data DICompositeType
- = DIArrayType {
- subscripts :: [DISubrange]
- elementTy :: Maybe (MDRef DIType)
- sizeInBits :: Word64
- alignInBits :: Word32
- flags :: [DIFlag]
- | DIClassType {
- scope :: Maybe (MDRef DIScope)
- name :: ShortByteString
- file :: Maybe (MDRef DIFile)
- line :: Word32
- flags :: [DIFlag]
- derivedFrom :: Maybe (MDRef DIType)
- elements :: [MDRef (Either DIDerivedType DISubprogram)]
- vtableHolder :: Maybe (MDRef DIType)
- templateParams :: [DITemplateParameter]
- identifier :: ShortByteString
- sizeInBits :: Word64
- alignInBits :: Word32
- | DIEnumerationType {
- scope :: Maybe (MDRef DIScope)
- name :: ShortByteString
- file :: Maybe (MDRef DIFile)
- line :: Word32
- values :: [DIEnumerator]
- baseType :: Maybe (MDRef DIType)
- identifier :: ShortByteString
- sizeInBits :: Word64
- alignInBits :: Word32
- | DIStructureType {
- scope :: Maybe (MDRef DIScope)
- name :: ShortByteString
- file :: Maybe (MDRef DIFile)
- line :: Word32
- flags :: [DIFlag]
- derivedFrom :: Maybe (MDRef DIType)
- elements :: [MDRef (Either DIDerivedType DISubprogram)]
- runtimeLang :: Word16
- vtableHolder :: Maybe (MDRef DIType)
- identifier :: ShortByteString
- sizeInBits :: Word64
- alignInBits :: Word32
- | DIUnionType {
- scope :: Maybe (MDRef DIScope)
- name :: ShortByteString
- file :: Maybe (MDRef DIFile)
- line :: Word32
- flags :: [DIFlag]
- elements :: [MDRef (Either DIDerivedType DISubprogram)]
- runtimeLang :: Word16
- identifier :: ShortByteString
- sizeInBits :: Word64
- alignInBits :: Word32
- = DIArrayType {
- data DIDerivedType = DerivedType {
- tag :: DerivedTypeTag
- name :: ShortByteString
- file :: Maybe (MDRef DIFile)
- line :: Word32
- scope :: Maybe (MDRef DIScope)
- baseType :: MDRef DIType
- sizeInBits :: Word64
- alignInBits :: Word32
- offsetInBits :: Word64
- addressSpace :: Maybe Word32
- flags :: [DIFlag]
- data DerivedTypeTag
- data DISubroutineType = SubroutineType {}
- data DIBasicType = BasicType {}
- data DIType
- data BasicTypeTag
- data Virtuality
- data DISubprogram = Subprogram {
- scope :: Maybe (MDRef DIScope)
- name :: ShortByteString
- linkageName :: ShortByteString
- file :: Maybe (MDRef DIFile)
- line :: Word32
- type' :: Maybe (MDRef DISubroutineType)
- localToUnit :: Bool
- definition :: Bool
- scopeLine :: Word32
- containingType :: Maybe (MDRef DIType)
- virtuality :: Virtuality
- virtualityIndex :: Word32
- thisAdjustment :: Int32
- flags :: [DIFlag]
- optimized :: Bool
- unit :: Maybe (MDRef DICompileUnit)
- templateParams :: [MDRef DITemplateParameter]
- declaration :: Maybe (MDRef DISubprogram)
- variables :: [MDRef DILocalVariable]
- thrownTypes :: [MDRef DIType]
- data DILocalScope
- data ChecksumKind
- data DIFile = File {}
- data DICompileUnit = CompileUnit {
- language :: Word32
- file :: MDRef DIFile
- producer :: ShortByteString
- optimized :: Bool
- flags :: ShortByteString
- runtimeVersion :: Word32
- splitDebugFileName :: ShortByteString
- emissionKind :: DebugEmissionKind
- enums :: [MDRef DICompositeType]
- retainedTypes :: [MDRef (Either DIType DISubprogram)]
- globals :: [MDRef DIGlobalVariableExpression]
- imports :: [MDRef DIImportedEntity]
- macros :: [MDRef DIMacroNode]
- dWOId :: Word64
- splitDebugInlining :: Bool
- debugInfoForProfiling :: Bool
- gnuPubnames :: Bool
- data DebugEmissionKind
- data DINamespace = Namespace {
- name :: ShortByteString
- scope :: Maybe (MDRef DIScope)
- exportSymbols :: Bool
- data DIModule = Module {}
- data DIScope
- data DISubrange = Subrange {
- count :: Int64
- lowerBound :: Int64
- data DIEnumerator = Enumerator {
- value :: Int64
- name :: ShortByteString
- data DIImportedEntity = ImportedEntity {}
- data ImportedEntityTag
- data DIObjCProperty = ObjCProperty {
- name :: ShortByteString
- file :: Maybe (MDRef DIFile)
- line :: Word32
- getterName :: ShortByteString
- setterName :: ShortByteString
- attributes :: Word32
- type' :: Maybe (MDRef DIType)
- data DINode
- data DIMacroNode
- = DIMacro {
- info :: DIMacroInfo
- line :: Word32
- name :: ShortByteString
- value :: ShortByteString
- | DIMacroFile { }
- = DIMacro {
- data DIMacroInfo
- data DIFlag
- data DIInheritance
- data DIAccessibility
- data DIGlobalVariableExpression = GlobalVariableExpression {}
- data DIExpression = Expression {}
- data DILocation = Location {}
- data MDNode
- data DWOp
- data DWOpFragment = DW_OP_LLVM_Fragment {}
- data MDRef a
- = MDRef MetadataNodeID
- | MDInline a
- newtype MetadataNodeID = MetadataNodeID Word
- data Metadata
- type CallableOperand = Either InlineAssembly Operand
- data Operand
Documentation
data DILocalVariable Source #
Constructors
| LocalVariable | |
Instances
data DIGlobalVariable Source #
Constructors
| GlobalVariable | |
Fields
| |
Instances
data DIVariable Source #
Instances
data DILexicalBlockBase Source #
Constructors
| DILexicalBlock | |
| DILexicalBlockFile | |
Fields
| |
Instances
data DITemplateParameter Source #
Constructors
| DITemplateTypeParameter | |
Fields
| |
| DITemplateValueParameter | |
Fields
| |
Instances
data TemplateValueParameterTag Source #
Instances
Constructors
| AddressEncoding | |
| BooleanEncoding | |
| FloatEncoding | |
| SignedEncoding | |
| SignedCharEncoding | |
| UnsignedEncoding | |
| UnsignedCharEncoding |
Instances
| Eq Encoding Source # | |
| Data Encoding Source # | |
Defined in LLVM.AST.Operand Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Encoding -> c Encoding # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Encoding # toConstr :: Encoding -> Constr # dataTypeOf :: Encoding -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Encoding) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Encoding) # gmapT :: (forall b. Data b => b -> b) -> Encoding -> Encoding # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Encoding -> r # gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Encoding -> r # gmapQ :: (forall d. Data d => d -> u) -> Encoding -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Encoding -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Encoding -> m Encoding # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Encoding -> m Encoding # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Encoding -> m Encoding # | |
| Ord Encoding Source # | |
Defined in LLVM.AST.Operand | |
| Read Encoding Source # | |
| Show Encoding Source # | |
| Generic Encoding Source # | |
| type Rep Encoding Source # | |
Defined in LLVM.AST.Operand type Rep Encoding = D1 (MetaData "Encoding" "LLVM.AST.Operand" "llvm-hs-pure-6.2.1-8ETY0EFB21q8SO4DjmfkXC" False) ((C1 (MetaCons "AddressEncoding" PrefixI False) (U1 :: * -> *) :+: (C1 (MetaCons "BooleanEncoding" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "FloatEncoding" PrefixI False) (U1 :: * -> *))) :+: ((C1 (MetaCons "SignedEncoding" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "SignedCharEncoding" PrefixI False) (U1 :: * -> *)) :+: (C1 (MetaCons "UnsignedEncoding" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "UnsignedCharEncoding" PrefixI False) (U1 :: * -> *)))) | |
data DICompositeType Source #
Constructors
Instances
data DIDerivedType Source #
Constructors
| DerivedType | |
Fields
| |
Instances
data DerivedTypeTag Source #
Constructors
| Typedef | |
| PointerType | |
| PtrToMemberType | |
| ReferenceType | |
| RValueReferenceType | |
| ConstType | |
| VolatileType | |
| RestrictType | |
| AtomicType | |
| Member | |
| Inheritance | |
| Friend |
Instances
data DISubroutineType Source #
Constructors
| SubroutineType | |
Instances
data DIBasicType Source #
Constructors
| BasicType | |
Fields
| |
Instances
Constructors
| DIBasicType DIBasicType | |
| DICompositeType DICompositeType | |
| DIDerivedType DIDerivedType | |
| DISubroutineType DISubroutineType |
Instances
| Eq DIType Source # | |
| Data DIType Source # | |
Defined in LLVM.AST.Operand Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DIType -> c DIType # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DIType # toConstr :: DIType -> Constr # dataTypeOf :: DIType -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c DIType) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c DIType) # gmapT :: (forall b. Data b => b -> b) -> DIType -> DIType # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DIType -> r # gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DIType -> r # gmapQ :: (forall d. Data d => d -> u) -> DIType -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> DIType -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> DIType -> m DIType # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DIType -> m DIType # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DIType -> m DIType # | |
| Ord DIType Source # | |
| Read DIType Source # | |
| Show DIType Source # | |
| Generic DIType Source # | |
| type Rep DIType Source # | |
Defined in LLVM.AST.Operand type Rep DIType = D1 (MetaData "DIType" "LLVM.AST.Operand" "llvm-hs-pure-6.2.1-8ETY0EFB21q8SO4DjmfkXC" False) ((C1 (MetaCons "DIBasicType" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 DIBasicType)) :+: C1 (MetaCons "DICompositeType" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 DICompositeType))) :+: (C1 (MetaCons "DIDerivedType" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 DIDerivedType)) :+: C1 (MetaCons "DISubroutineType" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 DISubroutineType)))) | |
data BasicTypeTag Source #
Constructors
| BaseType | |
| UnspecifiedType |
Instances
data Virtuality Source #
Constructors
| NoVirtuality | |
| Virtual | |
| PureVirtual |
Instances
data DISubprogram Source #
Constructors
| Subprogram | |
Fields
| |
Instances
data DILocalScope Source #
Constructors
| DILexicalBlockBase DILexicalBlockBase | |
| DISubprogram DISubprogram |
Instances
data ChecksumKind Source #
Instances
Constructors
| File | |
Fields | |
Instances
| Eq DIFile Source # | |
| Data DIFile Source # | |
Defined in LLVM.AST.Operand 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 # toConstr :: DIFile -> Constr # 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 :: (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 # | |
| Ord DIFile Source # | |
| Read DIFile Source # | |
| Show DIFile Source # | |
| Generic DIFile Source # | |
| type Rep DIFile Source # | |
Defined in LLVM.AST.Operand type Rep DIFile = D1 (MetaData "DIFile" "LLVM.AST.Operand" "llvm-hs-pure-6.2.1-8ETY0EFB21q8SO4DjmfkXC" False) (C1 (MetaCons "File" PrefixI True) ((S1 (MetaSel (Just "filename") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 ShortByteString) :*: S1 (MetaSel (Just "directory") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 ShortByteString)) :*: (S1 (MetaSel (Just "checksum") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 ShortByteString) :*: S1 (MetaSel (Just "checksumKind") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 ChecksumKind)))) | |
data DICompileUnit Source #
Constructors
| CompileUnit | |
Fields
| |
Instances
data DebugEmissionKind Source #
Constructors
| NoDebug | |
| FullDebug | |
| LineTablesOnly |
Instances
data DINamespace Source #
Constructors
| Namespace | |
Fields
| |
Instances
Constructors
| Module | |
Fields | |
Instances
Constructors
| DICompileUnit DICompileUnit | |
| DIFile DIFile | |
| DILocalScope DILocalScope | |
| DIModule DIModule | |
| DINamespace DINamespace | |
| DIType DIType |
Instances
data DISubrange Source #
Constructors
| Subrange | |
Fields
| |
Instances
data DIEnumerator Source #
Constructors
| Enumerator | |
Fields
| |
Instances
data DIImportedEntity Source #
Constructors
| ImportedEntity | |
Instances
data ImportedEntityTag Source #
Constructors
| ImportedModule | |
| ImportedDeclaration |
Instances
data DIObjCProperty Source #
Constructors
| ObjCProperty | |
Fields
| |
Instances
Constructors
| DIEnumerator DIEnumerator | |
| DIImportedEntity DIImportedEntity | |
| DIObjCProperty DIObjCProperty | |
| DIScope DIScope | |
| DISubrange DISubrange | |
| DITemplateParameter DITemplateParameter | |
| DIVariable DIVariable |
Instances
data DIMacroNode Source #
Constructors
| DIMacro | |
Fields
| |
| DIMacroFile | |
Instances
data DIMacroInfo Source #
Instances
Constructors
Instances
| Eq DIFlag Source # | |
| Data DIFlag Source # | |
Defined in LLVM.AST.Operand Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DIFlag -> c DIFlag # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DIFlag # toConstr :: DIFlag -> Constr # dataTypeOf :: DIFlag -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c DIFlag) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c DIFlag) # gmapT :: (forall b. Data b => b -> b) -> DIFlag -> DIFlag # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DIFlag -> r # gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DIFlag -> r # gmapQ :: (forall d. Data d => d -> u) -> DIFlag -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> DIFlag -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> DIFlag -> m DIFlag # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DIFlag -> m DIFlag # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DIFlag -> m DIFlag # | |
| Ord DIFlag Source # | |
| Read DIFlag Source # | |
| Show DIFlag Source # | |
| Generic DIFlag Source # | |
| type Rep DIFlag Source # | |
Defined in LLVM.AST.Operand type Rep DIFlag = D1 (MetaData "DIFlag" "LLVM.AST.Operand" "llvm-hs-pure-6.2.1-8ETY0EFB21q8SO4DjmfkXC" False) ((((C1 (MetaCons "Accessibility" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 DIAccessibility)) :+: C1 (MetaCons "FwdDecl" PrefixI False) (U1 :: * -> *)) :+: (C1 (MetaCons "AppleBlock" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "BlockByrefStruct" PrefixI False) (U1 :: * -> *))) :+: ((C1 (MetaCons "VirtualFlag" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "Artificial" PrefixI False) (U1 :: * -> *)) :+: (C1 (MetaCons "Explicit" PrefixI False) (U1 :: * -> *) :+: (C1 (MetaCons "Prototyped" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "ObjcClassComplete" PrefixI False) (U1 :: * -> *))))) :+: (((C1 (MetaCons "ObjectPointer" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "Vector" PrefixI False) (U1 :: * -> *)) :+: (C1 (MetaCons "StaticMember" PrefixI False) (U1 :: * -> *) :+: (C1 (MetaCons "LValueReference" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "RValueReference" PrefixI False) (U1 :: * -> *)))) :+: ((C1 (MetaCons "InheritanceFlag" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 DIInheritance)) :+: C1 (MetaCons "IntroducedVirtual" PrefixI False) (U1 :: * -> *)) :+: (C1 (MetaCons "BitField" PrefixI False) (U1 :: * -> *) :+: (C1 (MetaCons "NoReturn" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "MainSubprogram" PrefixI False) (U1 :: * -> *)))))) | |
data DIInheritance Source #
Inheritance flag
Constructors
| SingleInheritance | |
| MultipleInheritance | |
| VirtualInheritance |
Instances
data DIAccessibility Source #
Accessiblity flag
Instances
data DIGlobalVariableExpression Source #
A pair of a DIGlobalVariable and a DIExpression.
This is used in the cuGlobals fields of DICompileUnit.
Constructors
| GlobalVariableExpression | |
Fields | |
Instances
data DIExpression Source #
Constructors
| Expression | |
Instances
data DILocation Source #
Instances
Constructors
| MDTuple [Maybe Metadata] | Nothing represents |
| DIExpression DIExpression | |
| DIGlobalVariableExpression DIGlobalVariableExpression | |
| DILocation DILocation | |
| DIMacroNode DIMacroNode | |
| DINode DINode |
Instances
Constructors
| DwOpFragment DWOpFragment | Must appear at the end |
| DW_OP_StackValue | Must be the last one or followed by a DW_OP_LLVM_Fragment |
| DW_OP_Swap | |
| DW_OP_ConstU Word64 | |
| DW_OP_PlusUConst Word64 | |
| DW_OP_Plus | |
| DW_OP_Minus | |
| DW_OP_Mul | |
| DW_OP_Deref | |
| DW_OP_XDeref |
Instances
| Eq DWOp Source # | |
| Data DWOp Source # | |
Defined in LLVM.AST.Operand Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DWOp -> c DWOp # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DWOp # dataTypeOf :: DWOp -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c DWOp) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c DWOp) # gmapT :: (forall b. Data b => b -> b) -> DWOp -> DWOp # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DWOp -> r # gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DWOp -> r # gmapQ :: (forall d. Data d => d -> u) -> DWOp -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> DWOp -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> DWOp -> m DWOp # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DWOp -> m DWOp # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DWOp -> m DWOp # | |
| Ord DWOp Source # | |
| Read DWOp Source # | |
| Show DWOp Source # | |
| Generic DWOp Source # | |
| type Rep DWOp Source # | |
Defined in LLVM.AST.Operand type Rep DWOp = D1 (MetaData "DWOp" "LLVM.AST.Operand" "llvm-hs-pure-6.2.1-8ETY0EFB21q8SO4DjmfkXC" False) (((C1 (MetaCons "DwOpFragment" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 DWOpFragment)) :+: C1 (MetaCons "DW_OP_StackValue" PrefixI False) (U1 :: * -> *)) :+: (C1 (MetaCons "DW_OP_Swap" PrefixI False) (U1 :: * -> *) :+: (C1 (MetaCons "DW_OP_ConstU" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Word64)) :+: C1 (MetaCons "DW_OP_PlusUConst" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Word64))))) :+: ((C1 (MetaCons "DW_OP_Plus" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "DW_OP_Minus" PrefixI False) (U1 :: * -> *)) :+: (C1 (MetaCons "DW_OP_Mul" PrefixI False) (U1 :: * -> *) :+: (C1 (MetaCons "DW_OP_Deref" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "DW_OP_XDeref" PrefixI False) (U1 :: * -> *))))) | |
data DWOpFragment Source #
Constructors
| DW_OP_LLVM_Fragment | |
Instances
MDRef can either represent a reference to some piece of
metadata or the metadata itself.
This is mainly useful for encoding cyclic metadata. Note that LLVM represents inline and non-inline nodes identically, so roundtripping the Haskell AST does not preserve whether a node was inline or not.
Constructors
| MDRef MetadataNodeID | |
| MDInline a |
Instances
| Functor MDRef Source # | |
| Eq a => Eq (MDRef a) Source # | |
| Data a => Data (MDRef a) Source # | |
Defined in LLVM.AST.Operand Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> MDRef a -> c (MDRef a) # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (MDRef a) # toConstr :: MDRef a -> Constr # dataTypeOf :: MDRef a -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (MDRef a)) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (MDRef a)) # gmapT :: (forall b. Data b => b -> b) -> MDRef a -> MDRef a # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> MDRef a -> r # gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> MDRef a -> r # gmapQ :: (forall d. Data d => d -> u) -> MDRef a -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> MDRef a -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> MDRef a -> m (MDRef a) # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> MDRef a -> m (MDRef a) # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> MDRef a -> m (MDRef a) # | |
| Ord a => Ord (MDRef a) Source # | |
| Read a => Read (MDRef a) Source # | |
| Show a => Show (MDRef a) Source # | |
| Generic (MDRef a) Source # | |
| type Rep (MDRef a) Source # | |
Defined in LLVM.AST.Operand type Rep (MDRef a) = D1 (MetaData "MDRef" "LLVM.AST.Operand" "llvm-hs-pure-6.2.1-8ETY0EFB21q8SO4DjmfkXC" False) (C1 (MetaCons "MDRef" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 MetadataNodeID)) :+: C1 (MetaCons "MDInline" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a))) | |
newtype MetadataNodeID Source #
A MetadataNodeID is a number for identifying a metadata node.
Note this is different from "named metadata", which are represented with
NamedMetadataDefinition.
Constructors
| MetadataNodeID Word |
Instances
Constructors
| MDString ShortByteString | |
| MDNode (MDRef MDNode) | |
| MDValue Operand | http://llvm.org/docs/doxygen/html/classllvm_1_1ValueAsMetadata.html |
Instances
| Eq Metadata Source # | |
| Data Metadata Source # | |
Defined in LLVM.AST.Operand Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Metadata -> c Metadata # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Metadata # toConstr :: Metadata -> Constr # dataTypeOf :: Metadata -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Metadata) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Metadata) # gmapT :: (forall b. Data b => b -> b) -> Metadata -> Metadata # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Metadata -> r # gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Metadata -> r # gmapQ :: (forall d. Data d => d -> u) -> Metadata -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Metadata -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Metadata -> m Metadata # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Metadata -> m Metadata # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Metadata -> m Metadata # | |
| Ord Metadata Source # | |
Defined in LLVM.AST.Operand | |
| Read Metadata Source # | |
| Show Metadata Source # | |
| Generic Metadata Source # | |
| type Rep Metadata Source # | |
Defined in LLVM.AST.Operand type Rep Metadata = D1 (MetaData "Metadata" "LLVM.AST.Operand" "llvm-hs-pure-6.2.1-8ETY0EFB21q8SO4DjmfkXC" False) (C1 (MetaCons "MDString" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 ShortByteString)) :+: (C1 (MetaCons "MDNode" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (MDRef MDNode))) :+: C1 (MetaCons "MDValue" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Operand)))) | |
type CallableOperand = Either InlineAssembly Operand Source #
The Call instruction is special: the callee can be inline assembly
An Operand is roughly that which is an argument to an Instruction
Constructors
| LocalReference Type Name | %foo |
| ConstantOperand Constant |
|
| MetadataOperand Metadata |