Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Pretty print LLVM IR Code.
Synopsis
- ppLlvmModule :: LlvmCgConfig -> LlvmModule -> SDoc
- ppLlvmComments :: [LMString] -> SDoc
- ppLlvmComment :: LMString -> SDoc
- ppLlvmGlobals :: LlvmCgConfig -> [LMGlobal] -> SDoc
- ppLlvmGlobal :: LlvmCgConfig -> LMGlobal -> SDoc
- ppLlvmAliases :: [LlvmAlias] -> SDoc
- ppLlvmAlias :: LlvmAlias -> SDoc
- ppLlvmMetas :: LlvmCgConfig -> [MetaDecl] -> SDoc
- ppLlvmMeta :: LlvmCgConfig -> MetaDecl -> SDoc
- ppLlvmFunctionDecls :: LlvmFunctionDecls -> SDoc
- ppLlvmFunctionDecl :: LlvmFunctionDecl -> SDoc
- ppLlvmFunctions :: LlvmCgConfig -> LlvmFunctions -> SDoc
- ppLlvmFunction :: LlvmCgConfig -> LlvmFunction -> SDoc
- ppVar :: LlvmCgConfig -> LlvmVar -> SDoc
- ppLit :: LlvmCgConfig -> LlvmLit -> SDoc
- ppTypeLit :: LlvmCgConfig -> LlvmLit -> SDoc
- ppName :: LlvmCgConfig -> LlvmVar -> SDoc
- ppPlainName :: LlvmCgConfig -> LlvmVar -> SDoc
Top level LLVM objects.
ppLlvmModule :: LlvmCgConfig -> LlvmModule -> SDoc Source #
Print out a whole LLVM module.
ppLlvmComments :: [LMString] -> SDoc Source #
Print out a multi-line comment, can be inside a function or on its own
ppLlvmComment :: LMString -> SDoc Source #
Print out a comment, can be inside a function or on its own
ppLlvmGlobals :: LlvmCgConfig -> [LMGlobal] -> SDoc Source #
Print out a list of global mutable variable definitions
ppLlvmGlobal :: LlvmCgConfig -> LMGlobal -> SDoc Source #
Print out a global mutable variable definition
ppLlvmAliases :: [LlvmAlias] -> SDoc Source #
Print out a list of LLVM type aliases.
ppLlvmAlias :: LlvmAlias -> SDoc Source #
Print out an LLVM type alias.
ppLlvmMetas :: LlvmCgConfig -> [MetaDecl] -> SDoc Source #
Print out a list of LLVM metadata.
ppLlvmMeta :: LlvmCgConfig -> MetaDecl -> SDoc Source #
Print out an LLVM metadata definition.
ppLlvmFunctionDecls :: LlvmFunctionDecls -> SDoc Source #
Print out a list of function declaration.
ppLlvmFunctionDecl :: LlvmFunctionDecl -> SDoc Source #
Print out a function declaration. Declarations define the function type but don't define the actual body of the function.
ppLlvmFunctions :: LlvmCgConfig -> LlvmFunctions -> SDoc Source #
Print out a list of function definitions.
ppLlvmFunction :: LlvmCgConfig -> LlvmFunction -> SDoc Source #
Print out a function definition.
ppName :: LlvmCgConfig -> LlvmVar -> SDoc Source #
Return the variable name or value of the LlvmVar
in Llvm IR textual representation (e.g. @x
, %y
or 42
).
ppPlainName :: LlvmCgConfig -> LlvmVar -> SDoc Source #
Return the variable name or value of the LlvmVar
in a plain textual representation (e.g. x
, y
or 42
).