lestes::backend_v2::structs::func_data Class Reference

A represenation of a function's body. More...

#include <func_data.g.hh>

Inheritance diagram for lestes::backend_v2::structs::func_data:

Inheritance graph
[legend]
List of all members.

Public Member Functions

ptr< ::lestes::lang::cplus::sem::ss_function_declarationfunction_decl_get () const
 The method function_decl_get returns the value of the field func_data::function_decl.
void function_decl_set (const ptr< ::lestes::lang::cplus::sem::ss_function_declaration > &)
 The method function_decl_set sets the field func_data::function_decl to the given value.
ptr< ::lestes::std::list<
srp< ::lestes::backend_v2::intercode::pi_pi > > > 
pi_body_get () const
 The method pi_body_get returns the value of the field func_data::pi_body.
void pi_body_set (const ptr< ::lestes::std::list< srp< ::lestes::backend_v2::intercode::pi_pi > > > &)
 The method pi_body_set sets the field func_data::pi_body to the given value.
ptr< ::lestes::std::list<
srp< ::lestes::backend_v2::intercode::ge_pi > > > 
ge_body_get () const
 The method ge_body_get returns the value of the field func_data::ge_body.
void ge_body_set (const ptr< ::lestes::std::list< srp< ::lestes::backend_v2::intercode::ge_pi > > > &)
 The method ge_body_set sets the field func_data::ge_body to the given value.
ptr< ::lestes::std::vector<
srp< ::lestes::backend_v2::workers::basic_block > > > 
bbs_get () const
 The method bbs_get returns the value of the field func_data::bbs.
void bbs_set (const ptr< ::lestes::std::vector< srp< ::lestes::backend_v2::workers::basic_block > > > &)
 The method bbs_set sets the field func_data::bbs to the given value.
ptr< ::lestes::std::vector<
srp< ::lestes::backend_v2::workers::alloc_interval > > > 
alloc_ints_get () const
 The method alloc_ints_get returns the value of the field func_data::alloc_ints.
void alloc_ints_set (const ptr< ::lestes::std::vector< srp< ::lestes::backend_v2::workers::alloc_interval > > > &)
 The method alloc_ints_set sets the field func_data::alloc_ints to the given value.
virtual ptr< reflection_listreflection_get () const
 for purposes of dumping
virtual ptr< field_list_listfield_values_get () const
 for purposes of dumping

Static Public Member Functions

static ptr< func_datacreate (ptr< ::lestes::lang::cplus::sem::ss_function_declaration > a__func_data__function_decl, ptr< ::lestes::std::list< srp< ::lestes::backend_v2::intercode::pi_pi > > > a__func_data__pi_body, ptr< ::lestes::std::list< srp< ::lestes::backend_v2::intercode::ge_pi > > > a__func_data__ge_body, ptr< ::lestes::std::vector< srp< ::lestes::backend_v2::workers::basic_block > > > a__func_data__bbs, ptr< ::lestes::std::vector< srp< ::lestes::backend_v2::workers::alloc_interval > > > a__func_data__alloc_ints)
 First generated factory method for class func_data.
static ptr< func_datacreate (ptr< ::lestes::lang::cplus::sem::ss_function_declaration > a__func_data__function_decl)
 Second generated factory method for class func_data.

Protected Member Functions

 func_data (ptr< ::lestes::lang::cplus::sem::ss_function_declaration > a__func_data__function_decl, ptr< ::lestes::std::list< srp< ::lestes::backend_v2::intercode::pi_pi > > > a__func_data__pi_body, ptr< ::lestes::std::list< srp< ::lestes::backend_v2::intercode::ge_pi > > > a__func_data__ge_body, ptr< ::lestes::std::vector< srp< ::lestes::backend_v2::workers::basic_block > > > a__func_data__bbs, ptr< ::lestes::std::vector< srp< ::lestes::backend_v2::workers::alloc_interval > > > a__func_data__alloc_ints)
 Generated constructor for class func_data.
virtual void gc_mark ()
 Marking routine for class func_data.

Private Attributes

srp< ::lestes::lang::cplus::sem::ss_function_declarationfunction_decl
 Ss-declaration of the function.
srp< ::lestes::std::list<
srp< ::lestes::backend_v2::intercode::pi_pi > > > 
pi_body
 A list of pi-level pseudoinstructions of the function's body.
srp< ::lestes::std::list<
srp< ::lestes::backend_v2::intercode::ge_pi > > > 
ge_body
 A list of ge-level pseudoinstruction of the function's body.
srp< ::lestes::std::vector<
srp< ::lestes::backend_v2::workers::basic_block > > > 
bbs
 A list of basic blocks.
srp< ::lestes::std::vector<
srp< ::lestes::backend_v2::workers::alloc_interval > > > 
alloc_ints
 A list of intervals used by register allocation a spill-code generation.

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

A represenation of a function's body.

This structure is pased through the backend's pipeline, each worker processes it and updates it with its results.


Constructor & Destructor Documentation

lestes::backend_v2::structs::func_data::func_data ( ptr< ::lestes::lang::cplus::sem::ss_function_declaration a__func_data__function_decl,
ptr< ::lestes::std::list< srp< ::lestes::backend_v2::intercode::pi_pi > > >  a__func_data__pi_body,
ptr< ::lestes::std::list< srp< ::lestes::backend_v2::intercode::ge_pi > > >  a__func_data__ge_body,
ptr< ::lestes::std::vector< srp< ::lestes::backend_v2::workers::basic_block > > >  a__func_data__bbs,
ptr< ::lestes::std::vector< srp< ::lestes::backend_v2::workers::alloc_interval > > >  a__func_data__alloc_ints 
) [protected]

Generated constructor for class func_data.

Generated constructor for class func_data.

Author:
lsg


Member Function Documentation

ptr<::lestes::lang::cplus::sem::ss_function_declaration > lestes::backend_v2::structs::func_data::function_decl_get (  )  const

The method function_decl_get returns the value of the field func_data::function_decl.

Returns:
The value of func_data::function_decl.
Author:
lsg

void lestes::backend_v2::structs::func_data::function_decl_set ( const ptr< ::lestes::lang::cplus::sem::ss_function_declaration > &  x  ) 

The method function_decl_set sets the field func_data::function_decl to the given value.

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

ptr<::lestes::std::list< srp<::lestes::backend_v2::intercode::pi_pi > > > lestes::backend_v2::structs::func_data::pi_body_get (  )  const

The method pi_body_get returns the value of the field func_data::pi_body.

Returns:
The value of func_data::pi_body.
Author:
lsg

void lestes::backend_v2::structs::func_data::pi_body_set ( const ptr< ::lestes::std::list< srp< ::lestes::backend_v2::intercode::pi_pi > > > &  x  ) 

The method pi_body_set sets the field func_data::pi_body to the given value.

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

ptr<::lestes::std::list< srp<::lestes::backend_v2::intercode::ge_pi > > > lestes::backend_v2::structs::func_data::ge_body_get (  )  const

The method ge_body_get returns the value of the field func_data::ge_body.

Returns:
The value of func_data::ge_body.
Author:
lsg

void lestes::backend_v2::structs::func_data::ge_body_set ( const ptr< ::lestes::std::list< srp< ::lestes::backend_v2::intercode::ge_pi > > > &  x  ) 

The method ge_body_set sets the field func_data::ge_body to the given value.

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

ptr<::lestes::std::vector< srp<::lestes::backend_v2::workers::basic_block > > > lestes::backend_v2::structs::func_data::bbs_get (  )  const

The method bbs_get returns the value of the field func_data::bbs.

Returns:
The value of func_data::bbs.
Author:
lsg

void lestes::backend_v2::structs::func_data::bbs_set ( const ptr< ::lestes::std::vector< srp< ::lestes::backend_v2::workers::basic_block > > > &  x  ) 

The method bbs_set sets the field func_data::bbs to the given value.

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

ptr<::lestes::std::vector< srp<::lestes::backend_v2::workers::alloc_interval > > > lestes::backend_v2::structs::func_data::alloc_ints_get (  )  const

The method alloc_ints_get returns the value of the field func_data::alloc_ints.

Returns:
The value of func_data::alloc_ints.
Author:
lsg

void lestes::backend_v2::structs::func_data::alloc_ints_set ( const ptr< ::lestes::std::vector< srp< ::lestes::backend_v2::workers::alloc_interval > > > &  x  ) 

The method alloc_ints_set sets the field func_data::alloc_ints to the given value.

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

ptr< func_data > lestes::backend_v2::structs::func_data::create ( ptr< ::lestes::lang::cplus::sem::ss_function_declaration a__func_data__function_decl,
ptr< ::lestes::std::list< srp< ::lestes::backend_v2::intercode::pi_pi > > >  a__func_data__pi_body,
ptr< ::lestes::std::list< srp< ::lestes::backend_v2::intercode::ge_pi > > >  a__func_data__ge_body,
ptr< ::lestes::std::vector< srp< ::lestes::backend_v2::workers::basic_block > > >  a__func_data__bbs,
ptr< ::lestes::std::vector< srp< ::lestes::backend_v2::workers::alloc_interval > > >  a__func_data__alloc_ints 
) [static]

First generated factory method for class func_data.

This factory method for class func_data takes values of all fields as arguments.

Author:
lsg

ptr< func_data > lestes::backend_v2::structs::func_data::create ( ptr< ::lestes::lang::cplus::sem::ss_function_declaration a__func_data__function_decl  )  [static]

Second generated factory method for class func_data.

This factory method for class func_data uses initializers.

Author:
lsg

ptr< object::reflection_list > lestes::backend_v2::structs::func_data::reflection_get (  )  const [virtual]

for purposes of dumping

Reimplemented from lestes::std::object.

ptr< object::field_list_list > lestes::backend_v2::structs::func_data::field_values_get (  )  const [virtual]

for purposes of dumping

Reimplemented from lestes::std::object.

void lestes::backend_v2::structs::func_data::gc_mark ( void   )  [protected, virtual]

Marking routine for class func_data.

Marking routine is used for garbage collection.

Author:
lsg

Reimplemented from lestes::std::mem::keystone.


Member Data Documentation

srp< ::lestes::lang::cplus::sem::ss_function_declaration > lestes::backend_v2::structs::func_data::function_decl [private]

Ss-declaration of the function.

srp< ::lestes::std::list< srp< ::lestes::backend_v2::intercode::pi_pi > > > lestes::backend_v2::structs::func_data::pi_body [private]

A list of pi-level pseudoinstructions of the function's body.

srp< ::lestes::std::list< srp< ::lestes::backend_v2::intercode::ge_pi > > > lestes::backend_v2::structs::func_data::ge_body [private]

A list of ge-level pseudoinstruction of the function's body.

srp< ::lestes::std::vector< srp< ::lestes::backend_v2::workers::basic_block > > > lestes::backend_v2::structs::func_data::bbs [private]

A list of basic blocks.

srp< ::lestes::std::vector< srp< ::lestes::backend_v2::workers::alloc_interval > > > lestes::backend_v2::structs::func_data::alloc_ints [private]

A list of intervals used by register allocation a spill-code generation.

ptr< object::reflection_list > lestes::backend_v2::structs::func_data::reflection = reflection [static, private]

Reimplemented from lestes::std::object.


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