AsmJit
Low-Latency Machine Code Generation
Roadmap
Docs
Parser
Support
GitHub
API Reference
Index
Class List
Build Instructions
Breaking Changes
Core
Assembler
Builder
Compiler
Function
Logging
Error Handling
Instruction DB
Virtual Memory
Support
Utilities
X86 Backend
ARM Commons
AArch64 Backend
UJIT
Index
⭢
Compiler
⭢
asmjit::FuncRetNode
asmjit::FuncRetNode Class Reference
[¶]
Inheritance diagram for asmjit::FuncRetNode:
Function return, used by
BaseCompiler
.
Member Functions
FuncRetNode
(
const
FuncRetNode
& other) =
delete
FuncRetNode
&
operator=
(
const
FuncRetNode
& other) =
delete
Construction & Destruction
FuncRetNode
()
noexcept
Public Member Functions inherited from
asmjit::InstNodeWithOperands< InstNode::kBaseOpCapacity >
InstNodeWithOperands
(
InstId
inst_id
,
InstOptions
options
,
uint32_t
op_count
)
noexcept
Public Member Functions inherited from
asmjit::InstNode
InstNode
(
const
InstNode
& other) =
delete
InstNode
&
operator=
(
const
InstNode
& other) =
delete
InstNode
(
InstId
inst_id
,
InstOptions
options
,
uint32_t
op_count
,
uint32_t
op_capacity
=
kBaseOpCapacity
)
noexcept
BaseInst
&
baseInst
()
noexcept
const
BaseInst
&
baseInst
()
const
noexcept
InstId
inst_id
()
const
noexcept
InstId
real_id
()
const
noexcept
void
set_inst_id
(
InstId
id)
noexcept
InstOptions
options
()
const
noexcept
bool
has_option
(
InstOptions
option)
const
noexcept
void
set_options
(
InstOptions
options
)
noexcept
void
add_options
(
InstOptions
options
)
noexcept
void
clear_options
(
InstOptions
options
)
noexcept
void
reset_options
()
noexcept
bool
has_extra_reg
()
const
noexcept
RegOnly
&
extra_reg
()
noexcept
const
RegOnly
&
extra_reg
()
const
noexcept
void
set_extra_reg
(
const
Reg
& reg)
noexcept
void
set_extra_reg
(
const
RegOnly
& reg)
noexcept
void
reset_extra_reg
()
noexcept
Span
<
Operand
>
operands
()
noexcept
Span
<
const
Operand
>
operands
()
const
noexcept
Operand
*
operands_data
()
noexcept
const
Operand
*
operands_data
()
const
noexcept
size_t
op_count
()
const
noexcept
size_t
op_capacity
()
const
noexcept
void
set_op_count
(
size_t
op_count
)
noexcept
Operand
&
op
(
size_t
index)
noexcept
const
Operand
&
op
(
size_t
index)
const
noexcept
void
set_op
(
size_t
index,
const
Operand_
&
op
)
noexcept
void
reset_op
(
size_t
index)
noexcept
void
reset_op_range
(
size_t
start,
size_t
end)
noexcept
bool
has_op_type
(
OperandType
op_type)
const
noexcept
bool
has_reg_op
()
const
noexcept
bool
has_mem_op
()
const
noexcept
bool
has_imm_op
()
const
noexcept
bool
has_label_op
()
const
noexcept
size_t
index_of_op_type
(
OperandType
op_type)
const
noexcept
size_t
index_of_mem_op
()
const
noexcept
size_t
index_of_imm_op
()
const
noexcept
size_t
index_of_label_op
()
const
noexcept
Public Member Functions inherited from
asmjit::BaseNode
BaseNode
(
const
BaseNode
& other) =
delete
BaseNode
&
operator=
(
const
BaseNode
& other) =
delete
BaseNode
(
NodeType
node_type,
NodeFlags
node_flags =
NodeFlags::kNone
)
noexcept
template<typename T>
T*
as
()
noexcept
template<typename T>
const
T*
as
()
const
noexcept
BaseNode
*
prev
()
const
noexcept
BaseNode
*
next
()
const
noexcept
NodeType
type
()
const
noexcept
void
_set_type
(
NodeType
type
)
noexcept
bool
is_inst
()
const
noexcept
bool
is_section
()
const
noexcept
bool
is_label
()
const
noexcept
bool
is_align
()
const
noexcept
bool
is_embed_data
()
const
noexcept
bool
is_embed_label
()
const
noexcept
bool
is_embed_label_delta
()
const
noexcept
bool
is_const_pool
()
const
noexcept
bool
is_comment
()
const
noexcept
bool
is_sentinel
()
const
noexcept
bool
is_func
()
const
noexcept
bool
is_func_ret
()
const
noexcept
bool
is_invoke
()
const
noexcept
NodeFlags
flags
()
const
noexcept
bool
has_flag
(
NodeFlags
flag)
const
noexcept
void
_assign_flags
(
NodeFlags
flags
)
noexcept
void
_add_flags
(
NodeFlags
flags
)
noexcept
void
_clear_flags
(
NodeFlags
flags
)
noexcept
bool
is_code
()
const
noexcept
bool
is_data
()
const
noexcept
bool
is_informative
()
const
noexcept
bool
is_removable
()
const
noexcept
bool
has_no_effect
()
const
noexcept
bool
is_active
()
const
noexcept
bool
has_position
()
const
noexcept
NodePosition
position
()
const
noexcept
void
set_position
(
NodePosition
position
)
noexcept
bool
has_pass_data
()
const
noexcept
template<typename T>
T*
pass_data
()
const
noexcept
template<typename T>
void
set_pass_data
(T* data)
noexcept
void
reset_pass_data
()
noexcept
bool
has_inline_comment
()
const
noexcept
const
char
*
inline_comment
()
const
noexcept
void
set_inline_comment
(
const
char
* s)
noexcept
void
reset_inline_comment
()
noexcept
Additional Inherited Members
Public Attributes inherited from
asmjit::InstNodeWithOperands< InstNode::kBaseOpCapacity >
Operand_
_operands
[kN]
Public Attributes inherited from
asmjit::InstNode
BaseInst
_base_inst
Public Attributes inherited from
asmjit::BaseNode
union {
struct {
BaseNode
*
_prev
BaseNode
*
_next
}
BaseNode
*
_links
[2]
};
NodeType
_node_type
NodeFlags
_node_flags
union {
AnyData
_any
AlignData
_align_data
InstData
_inst
EmbedData
_embed
SentinelData
_sentinel
};
NodePosition
_position
void
*
_pass_data
const
char
*
_inline_comment
Static Public Attributes inherited from
asmjit::InstNode
static
constexpr
uint32_t
kBaseOpCapacity
= 3u
static
constexpr
uint32_t
kFullOpCapacity
=
Globals::kMaxOpCount
FuncRetNode::
FuncRetNode
()
noexcept
[¶]
Creates a new
FuncRetNode
instance.