My Project
Public Member Functions
sp_instr_hpush_jump Class Reference
Inheritance diagram for sp_instr_hpush_jump:
sp_instr_jump sp_instr sp_branch_instr Sql_alloc sp_printable

List of all members.

Public Member Functions

 sp_instr_hpush_jump (uint ip, sp_pcontext *ctx, sp_handler *handler)
void add_condition (sp_condition_value *condition_value)
sp_handlerget_handler ()
virtual void print (String *str)
virtual bool execute (THD *thd, uint *nextp)
virtual uint opt_mark (sp_head *sp, List< sp_instr > *leads)
virtual uint opt_shortcut_jump (sp_head *sp, sp_instr *start)
virtual void backpatch (uint dest)

Member Function Documentation

virtual void sp_instr_hpush_jump::backpatch ( uint  dest) [inline, virtual]

Update all instruction with the given label in the backpatch list to the specified instruction pointer.

Parameters:
destdestination instruction pointer.

Reimplemented from sp_instr_jump.

bool sp_instr_hpush_jump::execute ( THD *  thd,
uint *  nextp 
) [virtual]

Execute this instruction

Parameters:
thdThread context
[out]nextpindex 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.

uint sp_instr_hpush_jump::opt_mark ( sp_head sp,
List< sp_instr > *  leads 
) [virtual]

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.

virtual uint sp_instr_hpush_jump::opt_shortcut_jump ( sp_head sp,
sp_instr start 
) [inline, virtual]

Override sp_instr_jump's shortcut; we stop here.

Reimplemented from sp_instr_jump.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines