lestes::backend_v2::intercode::pi_indirect_load Class Reference

Base class for store-via-pointer instructions. More...

#include <pi.g.hh>

Inheritance diagram for lestes::backend_v2::intercode::pi_indirect_load:

Inheritance graph
[legend]
List of all members.

Public Member Functions

ptr< pi_operandvalue_get () const
 The method value_get returns the value of the field pi_indirect_load::value.
void value_set (const ptr< pi_operand > &)
 The method value_set sets the field pi_indirect_load::value to the given value.
ptr< pi_mem_ptr_derefaddress_get () const
 The method address_get returns the value of the field pi_indirect_load::address.
void address_set (const ptr< pi_mem_ptr_deref > &)
 The method address_set sets the field pi_indirect_load::address to the given value.
ptr< ::lestes::md::types::tm_data_type_basetype1_get () const
 The method type1_get returns the value of the field pi_indirect_load::type1.
void type1_set (const ptr< ::lestes::md::types::tm_data_type_base > &)
 The method type1_set sets the field pi_indirect_load::type1 to the given value.
ptr< ::lestes::md::types::tm_data_type_basetype2_get () const
 The method type2_get returns the value of the field pi_indirect_load::type2.
void type2_set (const ptr< ::lestes::md::types::tm_data_type_base > &)
 The method type2_set sets the field pi_indirect_load::type2 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_indirect_load (ptr< pi_pi > a__pi_pi__psp, ptr< pi_pi > a__pi_pi__nsp, ulint a__pi_pi__level, ptr< pi_operand > a__pi_indirect_load__value, ptr< pi_mem_ptr_deref > a__pi_indirect_load__address, ptr< ::lestes::md::types::tm_data_type_base > a__pi_indirect_load__type1, ptr< ::lestes::md::types::tm_data_type_base > a__pi_indirect_load__type2)
 Generated constructor for class pi_indirect_load.
virtual void gc_mark ()
 Marking routine for class pi_indirect_load.

Private Attributes

srp< pi_operandvalue
srp< pi_mem_ptr_derefaddress
 Pseudoregister with address of target memory space.
srp< ::lestes::md::types::tm_data_type_basetype1
 Datatype of output operand.
srp< ::lestes::md::types::tm_data_type_basetype2
 Datatype of input operand.

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

Base class for store-via-pointer instructions.


Constructor & Destructor Documentation

lestes::backend_v2::intercode::pi_indirect_load::pi_indirect_load ( ptr< pi_pi a__pi_pi__psp,
ptr< pi_pi a__pi_pi__nsp,
ulint  a__pi_pi__level,
ptr< pi_operand a__pi_indirect_load__value,
ptr< pi_mem_ptr_deref a__pi_indirect_load__address,
ptr< ::lestes::md::types::tm_data_type_base a__pi_indirect_load__type1,
ptr< ::lestes::md::types::tm_data_type_base a__pi_indirect_load__type2 
) [protected]

Generated constructor for class pi_indirect_load.

Generated constructor for class pi_indirect_load.

Author:
lsg


Member Function Documentation

ptr< pi_operand > lestes::backend_v2::intercode::pi_indirect_load::value_get (  )  const

The method value_get returns the value of the field pi_indirect_load::value.

Returns:
The value of pi_indirect_load::value.
Author:
lsg

void lestes::backend_v2::intercode::pi_indirect_load::value_set ( const ptr< pi_operand > &  x  ) 

The method value_set sets the field pi_indirect_load::value to the given value.

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

ptr< pi_mem_ptr_deref > lestes::backend_v2::intercode::pi_indirect_load::address_get (  )  const

The method address_get returns the value of the field pi_indirect_load::address.

Returns:
The value of pi_indirect_load::address.
Author:
lsg

void lestes::backend_v2::intercode::pi_indirect_load::address_set ( const ptr< pi_mem_ptr_deref > &  x  ) 

The method address_set sets the field pi_indirect_load::address to the given value.

Parameters:
[in] x The new value to set pi_indirect_load::address to.
Author:
lsg

ptr<::lestes::md::types::tm_data_type_base > lestes::backend_v2::intercode::pi_indirect_load::type1_get (  )  const

The method type1_get returns the value of the field pi_indirect_load::type1.

Returns:
The value of pi_indirect_load::type1.
Author:
lsg

void lestes::backend_v2::intercode::pi_indirect_load::type1_set ( const ptr< ::lestes::md::types::tm_data_type_base > &  x  ) 

The method type1_set sets the field pi_indirect_load::type1 to the given value.

Parameters:
[in] x The new value to set pi_indirect_load::type1 to.
Author:
lsg

ptr<::lestes::md::types::tm_data_type_base > lestes::backend_v2::intercode::pi_indirect_load::type2_get (  )  const

The method type2_get returns the value of the field pi_indirect_load::type2.

Returns:
The value of pi_indirect_load::type2.
Author:
lsg

void lestes::backend_v2::intercode::pi_indirect_load::type2_set ( const ptr< ::lestes::md::types::tm_data_type_base > &  x  ) 

The method type2_set sets the field pi_indirect_load::type2 to the given value.

Parameters:
[in] x The new value to set pi_indirect_load::type2 to.
Author:
lsg

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

Implements lestes::backend_v2::intercode::pi_abstract_move.

Implemented in lestes::backend_v2::intercode::pi_ldp, and lestes::backend_v2::intercode::pi_ldpv.

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

Implements lestes::backend_v2::intercode::pi_abstract_move.

Implemented in lestes::backend_v2::intercode::pi_ldp, and lestes::backend_v2::intercode::pi_ldpv.

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

Implements lestes::backend_v2::intercode::pi_abstract_move.

Implemented in lestes::backend_v2::intercode::pi_ldp, and lestes::backend_v2::intercode::pi_ldpv.

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

for purposes of dumping

Reimplemented from lestes::backend_v2::intercode::pi_abstract_move.

Reimplemented in lestes::backend_v2::intercode::pi_ldp, and lestes::backend_v2::intercode::pi_ldpv.

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

for purposes of dumping

Reimplemented from lestes::backend_v2::intercode::pi_abstract_move.

Reimplemented in lestes::backend_v2::intercode::pi_ldp, and lestes::backend_v2::intercode::pi_ldpv.

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

Marking routine for class pi_indirect_load.

Marking routine is used for garbage collection.

Author:
lsg

Reimplemented from lestes::backend_v2::intercode::pi_abstract_move.

Reimplemented in lestes::backend_v2::intercode::pi_ldp, and lestes::backend_v2::intercode::pi_ldpv.


Member Data Documentation

srp< pi_operand > lestes::backend_v2::intercode::pi_indirect_load::value [private]

srp< pi_mem_ptr_deref > lestes::backend_v2::intercode::pi_indirect_load::address [private]

Pseudoregister with address of target memory space.

srp< ::lestes::md::types::tm_data_type_base > lestes::backend_v2::intercode::pi_indirect_load::type1 [private]

Datatype of output operand.

srp< ::lestes::md::types::tm_data_type_base > lestes::backend_v2::intercode::pi_indirect_load::type2 [private]

Datatype of input operand.

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

Reimplemented from lestes::backend_v2::intercode::pi_abstract_move.

Reimplemented in lestes::backend_v2::intercode::pi_ldp, and lestes::backend_v2::intercode::pi_ldpv.


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