lestes::backend_v2::intercode::pi_bpi Class Reference

Base class for binary pseudoinstructions. More...

#include <pi.g.hh>

Inheritance diagram for lestes::backend_v2::intercode::pi_bpi:

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_bdtpi lestes::backend_v2::intercode::pi_bstpi lestes::backend_v2::intercode::pi_cvt lestes::backend_v2::intercode::pi_bnot lestes::backend_v2::intercode::pi_gat lestes::backend_v2::intercode::pi_lnot lestes::backend_v2::intercode::pi_neg List of all members.

Public Member Functions

ptr< pi_non_memsource_get () const
 The method source_get returns the value of the field pi_bpi::source.
void source_set (const ptr< pi_non_mem > &)
 The method source_set sets the field pi_bpi::source to the given value.
ptr< pi_pregdestination_get () const
 The method destination_get returns the value of the field pi_bpi::destination.
void destination_set (const ptr< pi_preg > &)
 The method destination_set sets the field pi_bpi::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_bpi (ptr< pi_pi > a__pi_pi__psp, ptr< pi_pi > a__pi_pi__nsp, ulint a__pi_pi__level, ptr< pi_non_mem > a__pi_bpi__source, ptr< pi_preg > a__pi_bpi__destination)
 Generated constructor for class pi_bpi.
virtual void gc_mark ()
 Marking routine for class pi_bpi.

Private Attributes

srp< pi_non_memsource
 The input operand.
srp< pi_pregdestination
 The output operand.

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

Base class for binary pseudoinstructions.

Binary pseudoinstruction has two operands (one input and one output).

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


Constructor & Destructor Documentation

lestes::backend_v2::intercode::pi_bpi::pi_bpi ( ptr< pi_pi a__pi_pi__psp,
ptr< pi_pi a__pi_pi__nsp,
ulint  a__pi_pi__level,
ptr< pi_non_mem a__pi_bpi__source,
ptr< pi_preg a__pi_bpi__destination 
) [protected]

Generated constructor for class pi_bpi.

Generated constructor for class pi_bpi.

Author:
lsg

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

00804         : pi_pi(a__pi_pi__psp,
00805                 a__pi_pi__nsp,
00806                 a__pi_pi__level), source(checked(a__pi_bpi__source)), destination(checked(a__pi_bpi__destination))
00807 {}


Member Function Documentation

ptr< pi_non_mem > lestes::backend_v2::intercode::pi_bpi::source_get (  )  const

The method source_get returns the value of the field pi_bpi::source.

Returns:
The value of pi_bpi::source.
Author:
lsg

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

References source.

00764 {
00765         return source;
00766 }

void lestes::backend_v2::intercode::pi_bpi::source_set ( const ptr< pi_non_mem > &  x  ) 

The method source_set sets the field pi_bpi::source to the given value.

Parameters:
[in] x The new value to set pi_bpi::source to.
Author:
lsg

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

References source.

00773 {
00774         pi_bpi::source = x;
00775 }

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

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

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

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

References destination.

00782 {
00783         return destination;
00784 }

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

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

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

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

References destination.

00791 {
00792         pi_bpi::destination = x;
00793 }

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

Implements lestes::backend_v2::intercode::pi_pi.

Implemented in lestes::backend_v2::intercode::pi_bdtpi, lestes::backend_v2::intercode::pi_bstpi, lestes::backend_v2::intercode::pi_neg, lestes::backend_v2::intercode::pi_gat, lestes::backend_v2::intercode::pi_bnot, lestes::backend_v2::intercode::pi_lnot, and lestes::backend_v2::intercode::pi_cvt.

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

Implements lestes::backend_v2::intercode::pi_pi.

Implemented in lestes::backend_v2::intercode::pi_bdtpi, lestes::backend_v2::intercode::pi_bstpi, lestes::backend_v2::intercode::pi_neg, lestes::backend_v2::intercode::pi_gat, lestes::backend_v2::intercode::pi_bnot, lestes::backend_v2::intercode::pi_lnot, and lestes::backend_v2::intercode::pi_cvt.

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

Implements lestes::backend_v2::intercode::pi_pi.

Implemented in lestes::backend_v2::intercode::pi_bdtpi, lestes::backend_v2::intercode::pi_bstpi, lestes::backend_v2::intercode::pi_neg, lestes::backend_v2::intercode::pi_gat, lestes::backend_v2::intercode::pi_bnot, lestes::backend_v2::intercode::pi_lnot, and lestes::backend_v2::intercode::pi_cvt.

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

for purposes of dumping

Reimplemented from lestes::backend_v2::intercode::pi_pi.

Reimplemented in lestes::backend_v2::intercode::pi_bdtpi, lestes::backend_v2::intercode::pi_bstpi, lestes::backend_v2::intercode::pi_neg, lestes::backend_v2::intercode::pi_gat, lestes::backend_v2::intercode::pi_bnot, lestes::backend_v2::intercode::pi_lnot, and lestes::backend_v2::intercode::pi_cvt.

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

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

Referenced by lestes::backend_v2::intercode::pi_bstpi::reflection_get(), and lestes::backend_v2::intercode::pi_bdtpi::reflection_get().

00810 {
00811         if (!reflection) {
00812                 typedef class_reflection::field_metadata md;
00813                 typedef class_reflection::field_metadata_list mdlist;
00814                 ptr<mdlist> mdl = mdlist::create();
00815                 mdl->push_back( md::create( "source", "pi_non_mem" ) );
00816                 mdl->push_back( md::create( "destination", "pi_preg" ) );
00817                 reflection = reflection_list::create( pi_pi::reflection_get() );
00818                 reflection->push_back( class_reflection::create( "pi_bpi", mdl ) );
00819         }
00820         return reflection;
00821 }

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

for purposes of dumping

Reimplemented from lestes::backend_v2::intercode::pi_pi.

Reimplemented in lestes::backend_v2::intercode::pi_bdtpi, lestes::backend_v2::intercode::pi_bstpi, lestes::backend_v2::intercode::pi_neg, lestes::backend_v2::intercode::pi_gat, lestes::backend_v2::intercode::pi_bnot, lestes::backend_v2::intercode::pi_lnot, and lestes::backend_v2::intercode::pi_cvt.

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

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

Referenced by lestes::backend_v2::intercode::pi_bstpi::field_values_get(), and lestes::backend_v2::intercode::pi_bdtpi::field_values_get().

00824 {
00825         ptr < field_list_list > result = pi_pi::field_values_get();
00826         result->push_back( value_list::create() );
00827         result->back()->push_back( this->source );
00828         result->push_back( value_list::create() );
00829         result->back()->push_back( this->destination );
00830         return result;
00831 }

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

Marking routine for class pi_bpi.

Marking routine is used for garbage collection.

Author:
lsg

Reimplemented from lestes::backend_v2::intercode::pi_pi.

Reimplemented in lestes::backend_v2::intercode::pi_bdtpi, lestes::backend_v2::intercode::pi_bstpi, lestes::backend_v2::intercode::pi_neg, lestes::backend_v2::intercode::pi_gat, lestes::backend_v2::intercode::pi_bnot, lestes::backend_v2::intercode::pi_lnot, and lestes::backend_v2::intercode::pi_cvt.

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

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

Referenced by lestes::backend_v2::intercode::pi_bstpi::gc_mark(), and lestes::backend_v2::intercode::pi_bdtpi::gc_mark().

00839 {
00840         pi_pi::gc_mark();
00841 }


Member Data Documentation

srp< pi_non_mem > lestes::backend_v2::intercode::pi_bpi::source [private]

The input operand.

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

Referenced by source_get(), and source_set().

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

The output operand.

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

Referenced by destination_get(), and destination_set().

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

Reimplemented from lestes::backend_v2::intercode::pi_pi.

Reimplemented in lestes::backend_v2::intercode::pi_bdtpi, lestes::backend_v2::intercode::pi_bstpi, lestes::backend_v2::intercode::pi_neg, lestes::backend_v2::intercode::pi_gat, lestes::backend_v2::intercode::pi_bnot, lestes::backend_v2::intercode::pi_lnot, and lestes::backend_v2::intercode::pi_cvt.

Definition at line 703 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