Add Sphinx documentation.
This commit is contained in:
parent
c7afaf98db
commit
d0f0bae1c5
48 changed files with 12647 additions and 0 deletions
129
docs/source/doc/llvm.core.Function.md
Normal file
129
docs/source/doc/llvm.core.Function.md
Normal file
|
|
@ -0,0 +1,129 @@
|
|||
---
|
||||
layout: page
|
||||
title: Function (llvm.core)
|
||||
---
|
||||
|
||||
# llvm.core.Function
|
||||
|
||||
* This will become a table of contents (this text will be scraped).
|
||||
{:toc}
|
||||
|
||||
|
||||
## Base Class
|
||||
|
||||
- [llvm.core.GlobalValue](llvm.core.GlobalValue.html)
|
||||
|
||||
## Static Constructors
|
||||
|
||||
### `new(module_obj, func_ty, name)`
|
||||
|
||||
Create a function named `name` of type `func_ty` in the module
|
||||
`module_obj` and return a `Function` object that represents it.
|
||||
|
||||
### `get(module_obj, name)`
|
||||
|
||||
Return a `Function` object to represent the function
|
||||
named `name` in the module `module_obj` or raise `LLVMException` if
|
||||
such a function does not exist.
|
||||
|
||||
### `get_or_insert(module_obj, func_ty, name)`
|
||||
|
||||
Similar to `get`, except that if the function does not exist it
|
||||
is added first, as though with `new`.
|
||||
|
||||
### `intrinsic(module_obj, intrinsic_id, types)`
|
||||
|
||||
Create and return a `Function` object that refers to an intrinsic
|
||||
function, as described [here](functions.html#intrinsic).
|
||||
|
||||
## Properties
|
||||
|
||||
### `calling_convention`
|
||||
|
||||
The calling convention for the function,
|
||||
as listed [here](functions.html#callconv).
|
||||
|
||||
### `collector`
|
||||
|
||||
A string holding the name of the garbage collection algorithm.
|
||||
See [LLVM docs](http://www.llvm.org/docs/LangRef.html#gc).
|
||||
|
||||
### `does_not_throw`
|
||||
|
||||
Setting to True sets the `ATTR_NO_UNWIND` attribute, False
|
||||
removes it. Shortcut to using `f.add_attribute(ATTR_NO_UNWIND)`
|
||||
and `f.remove_attribute(ATTR_NO_UNWIND)`.
|
||||
|
||||
### `args`
|
||||
|
||||
\[read-only\]
|
||||
|
||||
List of [llvm.core.Argument][] objects representing the formal
|
||||
arguments of the function.
|
||||
|
||||
### `basic_block_count`
|
||||
|
||||
\[read-only\]
|
||||
|
||||
Number of basic blocks belonging to this function. Same as
|
||||
`len(f.basic_blocks)` but faster if you just want the count.
|
||||
|
||||
### `entry_basic_block`
|
||||
|
||||
\[read-only\]
|
||||
|
||||
The [llvm.core.BasicBlock][] object representing the entry
|
||||
basic block for this function, or `None` if there are no
|
||||
basic blocks.
|
||||
|
||||
### `basic_blocks`
|
||||
|
||||
\[read-only\]
|
||||
|
||||
List of [llvm.core.BasicBlock][] objects representing the
|
||||
basic blocks belonging to this function.
|
||||
|
||||
### `intrinsic_id`
|
||||
|
||||
\[read-only\]
|
||||
|
||||
Returns the ID of the intrinsic if this object represents an
|
||||
intrinsic instruction. Otherwise 0.
|
||||
|
||||
## Methods
|
||||
|
||||
### `delete()`
|
||||
|
||||
Deletes the function from it's module. Do not hold any
|
||||
references to this object after calling `delete` on it.
|
||||
|
||||
### `append_basic_block(name)`
|
||||
|
||||
Add a new basic block named `name`, and return a corresponding
|
||||
[llvm.core.BasicBlock][] object. Note that if this is not the
|
||||
entry basic block, you'll have to add appropriate branch
|
||||
instructions from other basic blocks yourself.
|
||||
|
||||
### `add_attribute(attr)`
|
||||
|
||||
Add an attribute `attr` to the function, from the set listed above.
|
||||
|
||||
### `remove_attribute(attr)`
|
||||
|
||||
Remove the attribute `attr` of the function.
|
||||
|
||||
### `viewCFG()`
|
||||
|
||||
Displays the control flow graph using the GraphViz tool.
|
||||
|
||||
### `viewCFGOnly()`
|
||||
|
||||
Displays the control flow graph using the GraphViz tool, but
|
||||
omitting function bodies.
|
||||
|
||||
### `verify()`
|
||||
|
||||
Verifies the function. See [LLVM docs](http://llvm.org/docs/Passes.html#verify).
|
||||
|
||||
[llvm.core.Argument]: llvm.core.Argument.html
|
||||
[llvm.core.BasicBlock]: llvm.core.BasicBlock.html
|
||||
Loading…
Add table
Add a link
Reference in a new issue