#include <backend.g.hh>
Inheritance diagram for lestes::backend_v2::backend:

Public Member Functions | |
| ::std::ostream & | output_get () const |
| The method output_get returns the value of the field backend::output. | |
| bool | optimization_conditional_jumps_get () const |
| The method optimization_conditional_jumps_get returns the value of the field backend::optimization_conditional_jumps. | |
| void | optimization_conditional_jumps_set (bool) |
| The method optimization_conditional_jumps_set sets the field backend::optimization_conditional_jumps to the given value. | |
| bool | optimization_immediate_inlining_get () const |
| The method optimization_immediate_inlining_get returns the value of the field backend::optimization_immediate_inlining. | |
| void | optimization_immediate_inlining_set (bool) |
| The method optimization_immediate_inlining_set sets the field backend::optimization_immediate_inlining to the given value. | |
| bool | optimization_memory_inlining_get () const |
| The method optimization_memory_inlining_get returns the value of the field backend::optimization_memory_inlining. | |
| void | optimization_memory_inlining_set (bool) |
| The method optimization_memory_inlining_set sets the field backend::optimization_memory_inlining to the given value. | |
| bool | optimization_deadcode_elimination_get () const |
| The method optimization_deadcode_elimination_get returns the value of the field backend::optimization_deadcode_elimination. | |
| void | optimization_deadcode_elimination_set (bool) |
| The method optimization_deadcode_elimination_set sets the field backend::optimization_deadcode_elimination to the given value. | |
| bool | optimization_register_allocation_get () const |
| The method optimization_register_allocation_get returns the value of the field backend::optimization_register_allocation. | |
| void | optimization_register_allocation_set (bool) |
| The method optimization_register_allocation_set sets the field backend::optimization_register_allocation to the given value. | |
| bool | optimization_uselesscode_elimination_get () const |
| The method optimization_uselesscode_elimination_get returns the value of the field backend::optimization_uselesscode_elimination. | |
| void | optimization_uselesscode_elimination_set (bool) |
| The method optimization_uselesscode_elimination_set sets the field backend::optimization_uselesscode_elimination to the given value. | |
| bool | optimization_code_scheduling_get () const |
| The method optimization_code_scheduling_get returns the value of the field backend::optimization_code_scheduling. | |
| void | optimization_code_scheduling_set (bool) |
| The method optimization_code_scheduling_set sets the field backend::optimization_code_scheduling to the given value. | |
| void | main () |
| The backend's main. | |
| virtual ptr< reflection_list > | reflection_get () const |
| for purposes of dumping | |
| virtual ptr< field_list_list > | field_values_get () const |
| for purposes of dumping | |
Static Public Member Functions | |
| static ptr< backend > | create (::std::ostream &a__backend__output, bool a__backend__optimization_conditional_jumps, bool a__backend__optimization_immediate_inlining, bool a__backend__optimization_memory_inlining, bool a__backend__optimization_deadcode_elimination, bool a__backend__optimization_register_allocation, bool a__backend__optimization_uselesscode_elimination, bool a__backend__optimization_code_scheduling) |
| First generated factory method for class backend. | |
| static ptr< backend > | create (::std::ostream &a__backend__output) |
| Second generated factory method for class backend. | |
Protected Member Functions | |
| backend (::std::ostream &a__backend__output, bool a__backend__optimization_conditional_jumps, bool a__backend__optimization_immediate_inlining, bool a__backend__optimization_memory_inlining, bool a__backend__optimization_deadcode_elimination, bool a__backend__optimization_register_allocation, bool a__backend__optimization_uselesscode_elimination, bool a__backend__optimization_code_scheduling) | |
| Generated constructor for class backend. | |
| virtual void | gc_mark () |
| Marking routine for class backend. | |
Private Attributes | |
| ::std::ostream & | output |
| A stream where an output asm code is flushed into. | |
| bool | optimization_conditional_jumps |
| Switch that turns on/off conditional jumps optimization ( pi_cond_jmp_rewritter worker ). | |
| bool | optimization_immediate_inlining |
| Switch that turns on/off elimination of immediate loading by special load instruction rather than inlining of immediate into instructions that use it. ( literal_inliner worker ). | |
| bool | optimization_memory_inlining |
| Switch that turns on/off elimination of memory operand loading by special load instruction rather than inlining of memory operand into instructions that use it. ( memory_inliner worker ). | |
| bool | optimization_deadcode_elimination |
| Switch that turns on/off dead coe elimination ( dead_code_eliminator worker ). | |
| bool | optimization_register_allocation |
| Switch that turns on/off register allocation ( linscan_regalloc worker ). | |
| bool | optimization_uselesscode_elimination |
| Switch that turns on/off uselesscode elimination ( useless_code_eliminator worker ). | |
| bool | optimization_code_scheduling |
| Switch that turns on/off code scheduling ( scheduler worker ). | |
Static Private Attributes | |
| static ptr< reflection_list > | reflection = reflection |
The compiler's backend. It takes intercode structures representing single translation unit that are passed to backend in backend_data_builder object. It splits these structures to blocks that coresponds to function bodies and passes them one by one to block_processor for further processing. At the end it manages asm code generation.
Definition at line 35 of file backend.g.hh.
| lestes::backend_v2::backend::backend | ( | ::std::ostream & | a__backend__output, | |
| bool | a__backend__optimization_conditional_jumps, | |||
| bool | a__backend__optimization_immediate_inlining, | |||
| bool | a__backend__optimization_memory_inlining, | |||
| bool | a__backend__optimization_deadcode_elimination, | |||
| bool | a__backend__optimization_register_allocation, | |||
| bool | a__backend__optimization_uselesscode_elimination, | |||
| bool | a__backend__optimization_code_scheduling | |||
| ) | [protected] |
Generated constructor for class backend.
Generated constructor for class backend.
Definition at line 202 of file backend.g.cc.
Referenced by create().
00210 : ::lestes::std::object(), output(a__backend__output), optimization_conditional_jumps(a__backend__optimization_conditional_jumps), optimization_immediate_inlining(a__backend__optimization_immediate_inlining), optimization_memory_inlining(a__backend__optimization_memory_inlining), optimization_deadcode_elimination(a__backend__optimization_deadcode_elimination), optimization_register_allocation(a__backend__optimization_register_allocation), optimization_uselesscode_elimination(a__backend__optimization_uselesscode_elimination), optimization_code_scheduling(a__backend__optimization_code_scheduling) 00211 {}
| std::ostream & lestes::backend_v2::backend::output_get | ( | ) | const |
The method output_get returns the value of the field backend::output.
Definition at line 35 of file backend.g.cc.
References output.
00036 { 00037 return output; 00038 }
| bool lestes::backend_v2::backend::optimization_conditional_jumps_get | ( | ) | const |
The method optimization_conditional_jumps_get returns the value of the field backend::optimization_conditional_jumps.
Definition at line 44 of file backend.g.cc.
References optimization_conditional_jumps.
00045 { 00046 return optimization_conditional_jumps; 00047 }
| void lestes::backend_v2::backend::optimization_conditional_jumps_set | ( | bool | x | ) |
The method optimization_conditional_jumps_set sets the field backend::optimization_conditional_jumps to the given value.
| [in] | x | The new value to set backend::optimization_conditional_jumps to. |
Definition at line 53 of file backend.g.cc.
References optimization_conditional_jumps.
00054 { 00055 backend::optimization_conditional_jumps = x; 00056 }
| bool lestes::backend_v2::backend::optimization_immediate_inlining_get | ( | ) | const |
The method optimization_immediate_inlining_get returns the value of the field backend::optimization_immediate_inlining.
Definition at line 62 of file backend.g.cc.
References optimization_immediate_inlining.
00063 { 00064 return optimization_immediate_inlining; 00065 }
| void lestes::backend_v2::backend::optimization_immediate_inlining_set | ( | bool | x | ) |
The method optimization_immediate_inlining_set sets the field backend::optimization_immediate_inlining to the given value.
| [in] | x | The new value to set backend::optimization_immediate_inlining to. |
Definition at line 71 of file backend.g.cc.
References optimization_immediate_inlining.
00072 { 00073 backend::optimization_immediate_inlining = x; 00074 }
| bool lestes::backend_v2::backend::optimization_memory_inlining_get | ( | ) | const |
The method optimization_memory_inlining_get returns the value of the field backend::optimization_memory_inlining.
Definition at line 80 of file backend.g.cc.
References optimization_memory_inlining.
00081 { 00082 return optimization_memory_inlining; 00083 }
| void lestes::backend_v2::backend::optimization_memory_inlining_set | ( | bool | x | ) |
The method optimization_memory_inlining_set sets the field backend::optimization_memory_inlining to the given value.
| [in] | x | The new value to set backend::optimization_memory_inlining to. |
Definition at line 89 of file backend.g.cc.
References optimization_memory_inlining.
00090 { 00091 backend::optimization_memory_inlining = x; 00092 }
| bool lestes::backend_v2::backend::optimization_deadcode_elimination_get | ( | ) | const |
The method optimization_deadcode_elimination_get returns the value of the field backend::optimization_deadcode_elimination.
Definition at line 98 of file backend.g.cc.
References optimization_deadcode_elimination.
00099 { 00100 return optimization_deadcode_elimination; 00101 }
| void lestes::backend_v2::backend::optimization_deadcode_elimination_set | ( | bool | x | ) |
The method optimization_deadcode_elimination_set sets the field backend::optimization_deadcode_elimination to the given value.
| [in] | x | The new value to set backend::optimization_deadcode_elimination to. |
Definition at line 107 of file backend.g.cc.
References optimization_deadcode_elimination.
00108 { 00109 backend::optimization_deadcode_elimination = x; 00110 }
| bool lestes::backend_v2::backend::optimization_register_allocation_get | ( | ) | const |
The method optimization_register_allocation_get returns the value of the field backend::optimization_register_allocation.
Definition at line 116 of file backend.g.cc.
References optimization_register_allocation.
00117 { 00118 return optimization_register_allocation; 00119 }
| void lestes::backend_v2::backend::optimization_register_allocation_set | ( | bool | x | ) |
The method optimization_register_allocation_set sets the field backend::optimization_register_allocation to the given value.
| [in] | x | The new value to set backend::optimization_register_allocation to. |
Definition at line 125 of file backend.g.cc.
References optimization_register_allocation.
00126 { 00127 backend::optimization_register_allocation = x; 00128 }
| bool lestes::backend_v2::backend::optimization_uselesscode_elimination_get | ( | ) | const |
The method optimization_uselesscode_elimination_get returns the value of the field backend::optimization_uselesscode_elimination.
Definition at line 134 of file backend.g.cc.
References optimization_uselesscode_elimination.
00135 { 00136 return optimization_uselesscode_elimination; 00137 }
| void lestes::backend_v2::backend::optimization_uselesscode_elimination_set | ( | bool | x | ) |
The method optimization_uselesscode_elimination_set sets the field backend::optimization_uselesscode_elimination to the given value.
| [in] | x | The new value to set backend::optimization_uselesscode_elimination to. |
Definition at line 143 of file backend.g.cc.
References optimization_uselesscode_elimination.
00144 { 00145 backend::optimization_uselesscode_elimination = x; 00146 }
| bool lestes::backend_v2::backend::optimization_code_scheduling_get | ( | ) | const |
The method optimization_code_scheduling_get returns the value of the field backend::optimization_code_scheduling.
Definition at line 152 of file backend.g.cc.
References optimization_code_scheduling.
00153 { 00154 return optimization_code_scheduling; 00155 }
| void lestes::backend_v2::backend::optimization_code_scheduling_set | ( | bool | x | ) |
The method optimization_code_scheduling_set sets the field backend::optimization_code_scheduling to the given value.
| [in] | x | The new value to set backend::optimization_code_scheduling to. |
Definition at line 161 of file backend.g.cc.
References optimization_code_scheduling.
00162 { 00163 backend::optimization_code_scheduling = x; 00164 }
| void lestes::backend_v2::backend::main | ( | ) |
The backend's main.
Definition at line 43 of file backend.cc.
References lestes::backend_v2::debug::b_dump(), create(), lestes::msg::eolog, optimization_code_scheduling, optimization_conditional_jumps, optimization_deadcode_elimination, optimization_immediate_inlining, optimization_memory_inlining, optimization_register_allocation, optimization_uselesscode_elimination, and output.
00043 { 00044 00045 backend_v2_logger << "main - start\n" << eolog; 00046 00047 ptr<vector<srp<builder_func_data> > > builder_data = backend_data_builder::instance()->get_result(); 00048 ptr<vector<srp<func_data> > > tu_data = vector<srp<func_data> >::create(); 00049 00050 for(ulint i=0; i<builder_data->size(); ++i) { 00051 00052 backend_v2_logger << "function body processing - start\n" << eolog; 00053 00054 ptr<builder_func_data> bfd = (*builder_data)[i]; 00055 00056 b_dump(bfd,"function_data"); 00057 00058 ptr<func_data> fd = func_data::create(bfd->function_decl_get()); 00059 fd->pi_body_set(bfd->pi_body_get()); 00060 00061 backend_v2_logger << "registering function in symbol register\n" << eolog; 00062 symbol_register::instance()->register_symbol(fd->function_decl_get()); 00063 00064 if ( optimization_conditional_jumps ) { 00065 backend_v2_logger << "optimizing conditional jumps\n" << eolog; 00066 ptr<pi_cond_jmp_rewriter> jmps = pi_cond_jmp_rewriter::create(fd); 00067 jmps->process(); 00068 fd = jmps->get_result(); 00069 } 00070 00071 backend_v2_logger << "ordering pi-pseudoinstructions\n" << eolog; 00072 ptr<order_governor> linearizator = order_governor::create(fd); 00073 linearizator->process(); 00074 fd = linearizator->get_result(); 00075 00076 backend_v2_logger << "generating ge-code\n" << eolog; 00077 ptr<ge_generator> ge_gen = ge_generator::create(fd); 00078 ge_gen->process(); 00079 fd = ge_gen->get_result(); 00080 00081 if ( optimization_immediate_inlining ) { 00082 backend_v2_logger << "inlining immediates\n" << eolog; 00083 ptr<literal_inliner> lit_inliner = literal_inliner::create(fd); 00084 lit_inliner->process(); 00085 fd = lit_inliner->get_result(); 00086 } 00087 00088 00089 if ( optimization_memory_inlining ) { 00090 backend_v2_logger << "inlining memory operands\n" << eolog; 00091 ptr<memory_inliner> mem_inliner = memory_inliner::create(fd); 00092 mem_inliner->process(); 00093 fd = mem_inliner->get_result(); 00094 } 00095 00096 if ( optimization_deadcode_elimination ) { 00097 backend_v2_logger << "dead code elimination\n" << eolog; 00098 ptr<dead_code_eliminator> dead = dead_code_eliminator::create(fd); 00099 dead->process(); 00100 fd = dead->get_result(); 00101 } 00102 00103 backend_v2_logger << "preprocessing body\n" << eolog; 00104 ptr<body_preprocessor> bp = body_preprocessor::create(fd); 00105 bp->process(); 00106 fd = bp->get_result(); 00107 00108 backend_v2_logger << "analyzing basic blocks\n" << eolog; 00109 ptr<bb_finder> bb = bb_finder::create(fd); 00110 bb->process(); 00111 fd = bb->get_result(); 00112 00113 backend_v2_logger << "scheduling ge-code - pass 1\n" << eolog; 00114 ptr<scheduler> sched = scheduler::create(fd); 00115 if ( !optimization_code_scheduling ) { 00116 sched->dumb_scheduling_set(true); 00117 } 00118 sched->process(); 00119 fd = sched->get_result(); 00120 00121 backend_v2_logger << "analyzing intervals for register allocation and spill code generation\n" << eolog; 00122 ptr<alloc_int_finder> ints = alloc_int_finder::create(fd); 00123 ints->process(); 00124 fd = ints->get_result(); 00125 00126 if ( optimization_register_allocation ) { 00127 backend_v2_logger << "register allocation\n" << eolog; 00128 ptr<linscan_regalloc> regalloc = linscan_regalloc::create(fd); 00129 regalloc->process(); 00130 fd = regalloc->get_result(); 00131 } 00132 00133 backend_v2_logger << "spillcode generation - pass 1\n" << eolog; 00134 ptr<spillgen> spill = spillgen::create(fd); 00135 spill->process(); 00136 fd = spill->get_result(); 00137 00138 backend_v2_logger << "scheduling ge-code - pass 2\n" << eolog; 00139 sched = scheduler::create(fd); 00140 if ( !optimization_code_scheduling ) { 00141 sched->dumb_scheduling_set(true); 00142 } 00143 sched->process(); 00144 fd = sched->get_result(); 00145 00146 backend_v2_logger << "spillcode generation - pass 2\n" << eolog; 00147 ptr<simple_spillgen> simple_spill = simple_spillgen::create(fd); 00148 simple_spill->process(); 00149 fd = simple_spill->get_result(); 00150 00151 if ( optimization_uselesscode_elimination ) { 00152 backend_v2_logger << "useless code elimination\n" << eolog; 00153 ptr<useless_code_eliminator> useless = useless_code_eliminator::create(fd); 00154 useless->process(); 00155 fd = useless->get_result(); 00156 } 00157 00158 backend_v2_logger << "computing placement of the function's local variables\n" << eolog; 00159 local_variable_allocator::instance(fd->function_decl_get())->calculate_placement(); 00160 00161 ptr<preasmgen_body_changes> preasm = preasmgen_body_changes::create(fd->function_decl_get(),fd->ge_body_get()); 00162 preasm->process_body(); 00163 fd->ge_body_set(preasm->get_result()); 00164 00165 tu_data->push_back(fd); 00166 00167 backend_v2_logger << "function body processing - end\n" << eolog; 00168 } 00169 00170 backend_v2_logger << "computing placement of global variables\n" << eolog; 00171 global_variable_allocator::instance()->calculate_placement(); 00172 00173 backend_v2_logger << "generating asm-code for TU\n" << eolog; 00174 ptr<asm_generator> asm_gen = asm_generator::create(output); 00175 asm_gen->generate_tu_prologue(); 00176 asm_gen->generate_tu_body(tu_data); 00177 asm_gen->generate_tu_epilogue(); 00178 00179 backend_v2_logger << "main - end\n" << eolog; 00180 }
| ptr< backend > lestes::backend_v2::backend::create | ( | ::std::ostream & | a__backend__output, | |
| bool | a__backend__optimization_conditional_jumps, | |||
| bool | a__backend__optimization_immediate_inlining, | |||
| bool | a__backend__optimization_memory_inlining, | |||
| bool | a__backend__optimization_deadcode_elimination, | |||
| bool | a__backend__optimization_register_allocation, | |||
| bool | a__backend__optimization_uselesscode_elimination, | |||
| bool | a__backend__optimization_code_scheduling | |||
| ) | [static] |
First generated factory method for class backend.
This factory method for class backend takes values of all fields as arguments.
Definition at line 170 of file backend.g.cc.
References backend().
Referenced by main().
00178 { 00179 return ptr< backend > ( new backend(a__backend__output, 00180 a__backend__optimization_conditional_jumps, 00181 a__backend__optimization_immediate_inlining, 00182 a__backend__optimization_memory_inlining, 00183 a__backend__optimization_deadcode_elimination, 00184 a__backend__optimization_register_allocation, 00185 a__backend__optimization_uselesscode_elimination, 00186 a__backend__optimization_code_scheduling) ); 00187 }
| ptr< backend > lestes::backend_v2::backend::create | ( | ::std::ostream & | a__backend__output | ) | [static] |
| ptr< object::reflection_list > lestes::backend_v2::backend::reflection_get | ( | ) | const [virtual] |
for purposes of dumping
Reimplemented from lestes::std::object.
Definition at line 213 of file backend.g.cc.
References lestes::std::list< T >::create(), reflection, and lestes::std::object::reflection_get().
00214 { 00215 if (!reflection) { 00216 typedef class_reflection::field_metadata md; 00217 typedef class_reflection::field_metadata_list mdlist; 00218 ptr<mdlist> mdl = mdlist::create(); 00219 mdl->push_back( md::create( "output", "::std::ostream&" ) ); 00220 mdl->push_back( md::create( "optimization_conditional_jumps", "bool" ) ); 00221 mdl->push_back( md::create( "optimization_immediate_inlining", "bool" ) ); 00222 mdl->push_back( md::create( "optimization_memory_inlining", "bool" ) ); 00223 mdl->push_back( md::create( "optimization_deadcode_elimination", "bool" ) ); 00224 mdl->push_back( md::create( "optimization_register_allocation", "bool" ) ); 00225 mdl->push_back( md::create( "optimization_uselesscode_elimination", "bool" ) ); 00226 mdl->push_back( md::create( "optimization_code_scheduling", "bool" ) ); 00227 reflection = reflection_list::create( ::lestes::std::object::reflection_get() ); 00228 reflection->push_back( class_reflection::create( "backend", mdl ) ); 00229 } 00230 return reflection; 00231 }
| ptr< object::field_list_list > lestes::backend_v2::backend::field_values_get | ( | ) | const [virtual] |
for purposes of dumping
Reimplemented from lestes::std::object.
Definition at line 233 of file backend.g.cc.
References lestes::std::list< T >::create(), and lestes::std::object::field_values_get().
00234 { 00235 ptr < field_list_list > result = ::lestes::std::object::field_values_get(); 00236 result->push_back( value_list::create() ); 00237 result->back()->push_back( objectize< ::std::ostream& > ::create( this->output ) ); 00238 result->push_back( value_list::create() ); 00239 result->back()->push_back( objectize< bool > ::create( this->optimization_conditional_jumps ) ); 00240 result->push_back( value_list::create() ); 00241 result->back()->push_back( objectize< bool > ::create( this->optimization_immediate_inlining ) ); 00242 result->push_back( value_list::create() ); 00243 result->back()->push_back( objectize< bool > ::create( this->optimization_memory_inlining ) ); 00244 result->push_back( value_list::create() ); 00245 result->back()->push_back( objectize< bool > ::create( this->optimization_deadcode_elimination ) ); 00246 result->push_back( value_list::create() ); 00247 result->back()->push_back( objectize< bool > ::create( this->optimization_register_allocation ) ); 00248 result->push_back( value_list::create() ); 00249 result->back()->push_back( objectize< bool > ::create( this->optimization_uselesscode_elimination ) ); 00250 result->push_back( value_list::create() ); 00251 result->back()->push_back( objectize< bool > ::create( this->optimization_code_scheduling ) ); 00252 return result; 00253 }
| void lestes::backend_v2::backend::gc_mark | ( | void | ) | [protected, virtual] |
Marking routine for class backend.
Marking routine is used for garbage collection.
Reimplemented from lestes::std::mem::keystone.
Definition at line 260 of file backend.g.cc.
References lestes::std::mem::keystone::gc_mark().
00261 { 00262 ::lestes::std::object::gc_mark(); 00263 }
::std::ostream& lestes::backend_v2::backend::output [private] |
A stream where an output asm code is flushed into.
Definition at line 125 of file backend.g.hh.
Referenced by main(), and output_get().
bool lestes::backend_v2::backend::optimization_conditional_jumps [private] |
Switch that turns on/off conditional jumps optimization ( pi_cond_jmp_rewritter worker ).
Definition at line 127 of file backend.g.hh.
Referenced by main(), optimization_conditional_jumps_get(), and optimization_conditional_jumps_set().
bool lestes::backend_v2::backend::optimization_immediate_inlining [private] |
Switch that turns on/off elimination of immediate loading by special load instruction rather than inlining of immediate into instructions that use it. ( literal_inliner worker ).
Definition at line 129 of file backend.g.hh.
Referenced by main(), optimization_immediate_inlining_get(), and optimization_immediate_inlining_set().
bool lestes::backend_v2::backend::optimization_memory_inlining [private] |
Switch that turns on/off elimination of memory operand loading by special load instruction rather than inlining of memory operand into instructions that use it. ( memory_inliner worker ).
Definition at line 131 of file backend.g.hh.
Referenced by main(), optimization_memory_inlining_get(), and optimization_memory_inlining_set().
Switch that turns on/off dead coe elimination ( dead_code_eliminator worker ).
Definition at line 133 of file backend.g.hh.
Referenced by main(), optimization_deadcode_elimination_get(), and optimization_deadcode_elimination_set().
Switch that turns on/off register allocation ( linscan_regalloc worker ).
Definition at line 135 of file backend.g.hh.
Referenced by main(), optimization_register_allocation_get(), and optimization_register_allocation_set().
Switch that turns on/off uselesscode elimination ( useless_code_eliminator worker ).
Definition at line 137 of file backend.g.hh.
Referenced by main(), optimization_uselesscode_elimination_get(), and optimization_uselesscode_elimination_set().
bool lestes::backend_v2::backend::optimization_code_scheduling [private] |
Switch that turns on/off code scheduling ( scheduler worker ).
Definition at line 139 of file backend.g.hh.
Referenced by main(), optimization_code_scheduling_get(), and optimization_code_scheduling_set().
ptr< object::reflection_list > lestes::backend_v2::backend::reflection = reflection [static, private] |
Reimplemented from lestes::std::object.
Definition at line 140 of file backend.g.hh.
Referenced by reflection_get().
1.5.1-20070107