#include <sp_instr.h>
|
| sp_instr_hpush_jump (uint ip, sp_pcontext *ctx, sp_handler *handler) |
|
| ~sp_instr_hpush_jump () override |
|
void | add_condition (sp_condition_value *condition_value) |
|
sp_handler * | get_handler () |
|
void | print (const THD *thd, String *str) override |
|
bool | execute (THD *thd, uint *nextp) override |
| Execute this instruction. More...
|
|
uint | opt_mark (sp_head *sp, List< sp_instr > *leads) override |
| Mark this instruction as reachable during optimization and return the index to the next instruction. More...
|
|
uint | opt_shortcut_jump (sp_head *, sp_instr *) override |
| Override sp_instr_jump's shortcut; we stop here. More...
|
|
void | backpatch (uint dest) override |
| Update all instruction with the given label in the backpatch list to the specified instruction pointer. More...
|
|
PSI_statement_info * | get_psi_info () override |
|
| sp_instr_jump (uint ip, sp_pcontext *ctx) |
|
| sp_instr_jump (uint ip, sp_pcontext *ctx, uint dest) |
|
void | opt_move (uint dst, List< sp_branch_instr > *ibp) override |
| Inform the instruction that it has been moved during optimization. More...
|
|
void | set_destination (uint old_dest, uint new_dest) override |
| Update the destination; used by the SP-instruction-optimizer. More...
|
|
| sp_instr (uint ip, sp_pcontext *ctx) |
|
| ~sp_instr () override |
|
uint | get_ip () const |
|
virtual uint | get_cont_dest () const |
| Get the continuation destination (instruction pointer for the CONTINUE HANDLER) of this instruction. More...
|
|
sp_pcontext * | get_parsing_ctx () const |
|
bool | opt_is_marked () const |
|
virtual SQL_I_List< Item_trigger_field > * | get_instr_trig_field_list () |
|
virtual | ~sp_printable ()=default |
|
virtual | ~sp_branch_instr ()=default |
|
◆ sp_instr_hpush_jump()
◆ ~sp_instr_hpush_jump()
sp_instr_hpush_jump::~sp_instr_hpush_jump |
( |
| ) |
|
|
override |
◆ add_condition()
◆ backpatch()
void sp_instr_hpush_jump::backpatch |
( |
uint |
dest | ) |
|
|
inlineoverridevirtual |
Update all instruction with the given label in the backpatch list to the specified instruction pointer.
- Parameters
-
dest | destination instruction pointer. |
Reimplemented from sp_instr_jump.
◆ execute()
bool sp_instr_hpush_jump::execute |
( |
THD * |
thd, |
|
|
uint * |
nextp |
|
) |
| |
|
overridevirtual |
Execute this instruction.
- Parameters
-
| thd | Thread context |
[out] | nextp | index of the next instruction to execute. (For most instructions this will be the instruction following this one). Note that this parameter is undefined in case of errors, use get_cont_dest() to find the continuation instruction for CONTINUE error handlers. |
- Returns
- Error status.
Reimplemented from sp_instr_jump.
◆ get_handler()
◆ get_psi_info()
◆ opt_mark()
Mark this instruction as reachable during optimization and return the index to the next instruction.
Jump instruction will add their destination to the leads list.
Reimplemented from sp_instr_jump.
◆ opt_shortcut_jump()
Override sp_instr_jump's shortcut; we stop here.
Reimplemented from sp_instr_jump.
◆ print()
void sp_instr_hpush_jump::print |
( |
const THD * |
thd, |
|
|
String * |
str |
|
) |
| |
|
overridevirtual |
◆ m_frame
uint sp_instr_hpush_jump::m_frame |
|
private |
◆ m_handler
◆ m_opt_hpop
uint sp_instr_hpush_jump::m_opt_hpop |
|
private |
hpop marking end of handler scope.
◆ psi_info
Initial value:= {
"Stored Program: install a DECLARE HANDLER microcode instruction"}
#define PSI_FLAG_DISABLED
Instrument is disabled by default.
Definition: psi_bits.h:146
#define PSI_FLAG_UNTIMED
Instrument is not timed by default.
Definition: psi_bits.h:151
The documentation for this class was generated from the following files: