lestes::backend_v2::intercode::pi_ub_single_address_target Class Reference

Base class for unconditional branches that jump to address. More...

#include <pi.g.hh>

Inheritance diagram for lestes::backend_v2::intercode::pi_ub_single_address_target:

lestes::backend_v2::intercode::pi_uconditional_branch lestes::backend_v2::intercode::pi_branch lestes::backend_v2::intercode::pi_pi lestes::intercode::pi_base lestes::intercode::intercode lestes::std::object lestes::std::mem::keystone lestes::backend_v2::intercode::pi_iba lestes::backend_v2::intercode::pi_ibn List of all members.

Public Member Functions

ptr< pi_pregdestination_get () const
 The method destination_get returns the value of the field pi_ub_single_address_target::destination.
void destination_set (const ptr< pi_preg > &)
 The method destination_set sets the field pi_ub_single_address_target::destination to the given value.
virtual ptr< ::lestes::backend_v2::structs::pi_operandsaccept_visitor_pi_pi2pi_operands_gen_base (ptr< visitor_pi_pi2pi_operands_gen_base > v) override
virtual ulint accept_visitor_pi_pi2ulint_gen_base (ptr< visitor_pi_pi2ulint_gen_base > v) override
virtual ptr< vector< srp<
::lestes::backend_v2::intercode::ge_pi > > > 
accept_visitor_pi_pi2ge_pi_gen_base (ptr< visitor_pi_pi2ge_pi_gen_base > v) override
virtual ptr< reflection_listreflection_get () const
 for purposes of dumping
virtual ptr< field_list_listfield_values_get () const
 for purposes of dumping

Protected Member Functions

 pi_ub_single_address_target (ptr< pi_pi > a__pi_pi__psp, ptr< pi_pi > a__pi_pi__nsp, ulint a__pi_pi__level, ptr< pi_preg > a__pi_ub_single_address_target__destination)
 Generated constructor for class pi_ub_single_address_target.
virtual void gc_mark ()
 Marking routine for class pi_ub_single_address_target.

Private Attributes

srp< pi_pregdestination
 The target address for jump.

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

Base class for unconditional branches that jump to address.

Definition at line 537 of file pi.g.hh.


Constructor & Destructor Documentation

lestes::backend_v2::intercode::pi_ub_single_address_target::pi_ub_single_address_target ( ptr< pi_pi a__pi_pi__psp,
ptr< pi_pi a__pi_pi__nsp,
ulint  a__pi_pi__level,
ptr< pi_preg a__pi_ub_single_address_target__destination 
) [protected]

Generated constructor for class pi_ub_single_address_target.

Generated constructor for class pi_ub_single_address_target.

Author:
lsg

Definition at line 579 of file pi.g.cc.

00583         : pi_uconditional_branch(a__pi_pi__psp,
00584                 a__pi_pi__nsp,
00585                 a__pi_pi__level), destination(checked(a__pi_ub_single_address_target__destination))
00586 {}


Member Function Documentation

ptr< pi_preg > lestes::backend_v2::intercode::pi_ub_single_address_target::destination_get (  )  const

The method destination_get returns the value of the field pi_ub_single_address_target::destination.

Returns:
The value of pi_ub_single_address_target::destination.
Author:
lsg

Definition at line 561 of file pi.g.cc.

References destination.

00562 {
00563         return destination;
00564 }

void lestes::backend_v2::intercode::pi_ub_single_address_target::destination_set ( const ptr< pi_preg > &  x  ) 

The method destination_set sets the field pi_ub_single_address_target::destination to the given value.

Parameters:
[in] x The new value to set pi_ub_single_address_target::destination to.
Author:
lsg

Definition at line 570 of file pi.g.cc.

References destination.

00571 {
00572         pi_ub_single_address_target::destination = x;
00573 }

virtual ptr< ::lestes::backend_v2::structs::pi_operands > lestes::backend_v2::intercode::pi_ub_single_address_target::accept_visitor_pi_pi2pi_operands_gen_base ( ptr< visitor_pi_pi2pi_operands_gen_base v  )  [pure virtual]

Implements lestes::backend_v2::intercode::pi_uconditional_branch.

Implemented in lestes::backend_v2::intercode::pi_iba, and lestes::backend_v2::intercode::pi_ibn.

virtual ulint lestes::backend_v2::intercode::pi_ub_single_address_target::accept_visitor_pi_pi2ulint_gen_base ( ptr< visitor_pi_pi2ulint_gen_base v  )  [pure virtual]

Implements lestes::backend_v2::intercode::pi_uconditional_branch.

Implemented in lestes::backend_v2::intercode::pi_iba, and lestes::backend_v2::intercode::pi_ibn.

virtual ptr< vector< srp< ::lestes::backend_v2::intercode::ge_pi> > > lestes::backend_v2::intercode::pi_ub_single_address_target::accept_visitor_pi_pi2ge_pi_gen_base ( ptr< visitor_pi_pi2ge_pi_gen_base v  )  [pure virtual]

Implements lestes::backend_v2::intercode::pi_uconditional_branch.

Implemented in lestes::backend_v2::intercode::pi_iba, and lestes::backend_v2::intercode::pi_ibn.

ptr< object::reflection_list > lestes::backend_v2::intercode::pi_ub_single_address_target::reflection_get (  )  const [virtual]

for purposes of dumping

Reimplemented from lestes::backend_v2::intercode::pi_uconditional_branch.

Reimplemented in lestes::backend_v2::intercode::pi_iba, and lestes::backend_v2::intercode::pi_ibn.

Definition at line 588 of file pi.g.cc.

References lestes::std::list< T >::create(), reflection, and lestes::backend_v2::intercode::pi_uconditional_branch::reflection_get().

Referenced by lestes::backend_v2::intercode::pi_ibn::reflection_get(), and lestes::backend_v2::intercode::pi_iba::reflection_get().

00589 {
00590         if (!reflection) {
00591                 typedef class_reflection::field_metadata md;
00592                 typedef class_reflection::field_metadata_list mdlist;
00593                 ptr<mdlist> mdl = mdlist::create();
00594                 mdl->push_back( md::create( "destination", "pi_preg" ) );
00595                 reflection = reflection_list::create( pi_uconditional_branch::reflection_get() );
00596                 reflection->push_back( class_reflection::create( "pi_ub_single_address_target", mdl ) );
00597         }
00598         return reflection;
00599 }

ptr< object::field_list_list > lestes::backend_v2::intercode::pi_ub_single_address_target::field_values_get (  )  const [virtual]

for purposes of dumping

Reimplemented from lestes::backend_v2::intercode::pi_uconditional_branch.

Reimplemented in lestes::backend_v2::intercode::pi_iba, and lestes::backend_v2::intercode::pi_ibn.

Definition at line 601 of file pi.g.cc.

References lestes::std::list< T >::create(), and lestes::backend_v2::intercode::pi_uconditional_branch::field_values_get().

Referenced by lestes::backend_v2::intercode::pi_ibn::field_values_get(), and lestes::backend_v2::intercode::pi_iba::field_values_get().

00602 {
00603         ptr < field_list_list > result = pi_uconditional_branch::field_values_get();
00604         result->push_back( value_list::create() );
00605         result->back()->push_back( this->destination );
00606         return result;
00607 }

void lestes::backend_v2::intercode::pi_ub_single_address_target::gc_mark ( void   )  [protected, virtual]

Marking routine for class pi_ub_single_address_target.

Marking routine is used for garbage collection.

Author:
lsg

Reimplemented from lestes::backend_v2::intercode::pi_uconditional_branch.

Reimplemented in lestes::backend_v2::intercode::pi_iba, and lestes::backend_v2::intercode::pi_ibn.

Definition at line 614 of file pi.g.cc.

References lestes::backend_v2::intercode::pi_uconditional_branch::gc_mark().

Referenced by lestes::backend_v2::intercode::pi_ibn::gc_mark(), and lestes::backend_v2::intercode::pi_iba::gc_mark().

00615 {
00616         pi_uconditional_branch::gc_mark();
00617 }


Member Data Documentation

srp< pi_preg > lestes::backend_v2::intercode::pi_ub_single_address_target::destination [private]

The target address for jump.

Definition at line 568 of file pi.g.hh.

Referenced by destination_get(), and destination_set().

ptr< object::reflection_list > lestes::backend_v2::intercode::pi_ub_single_address_target::reflection = reflection [static, private]

Reimplemented from lestes::backend_v2::intercode::pi_uconditional_branch.

Reimplemented in lestes::backend_v2::intercode::pi_iba, and lestes::backend_v2::intercode::pi_ibn.

Definition at line 569 of file pi.g.hh.

Referenced by reflection_get().


The documentation for this class was generated from the following files:
Generated on Mon Feb 12 18:23:52 2007 for lestes by doxygen 1.5.1-20070107