alloc_int_finder.g.cc

Go to the documentation of this file.
00001 // This file is automatically generated, do not edit.
00002 
00003 /*!
00004         \file
00005         \author jaz
00006 */
00007 
00008 #include <lestes/backend_v2/structs/func_data.g.hh>
00009 #include <lestes/backend_v2/intercode/ge.g.hh>
00010 #include <lestes/backend_v2/intercode/pi_mem_factory.g.hh>
00011 #include <lestes/backend_v2/workers/liveness_analysis.g.hh>
00012 #include <lestes/md/registers/tm_register.g.hh>
00013 
00014 #include <lestes/std/list.hh>
00015 #include <lestes/std/pair.hh>
00016 #include <lestes/std/reflect.hh>
00017 
00018 #include <lestes/backend_v2/workers/alloc_int_finder.g.hh>
00019 
00020 package(lestes);
00021 package(backend_v2);
00022 package(workers);
00023 
00024 
00025 // ------------- Class alloc_int_finder follows. -------------
00026 
00027 /*!
00028    This factory method for class alloc_int_finder takes values of all fields as arguments.
00029    \author lsg
00030  */
00031 ptr< alloc_int_finder > alloc_int_finder::create(ptr< ::lestes::backend_v2::structs::func_data > a__worker_base__data)
00032 {
00033         return ptr< alloc_int_finder > ( new alloc_int_finder(a__worker_base__data) );
00034 }
00035 
00036 /*!
00037    Generated constructor for class alloc_int_finder.
00038    \author lsg
00039  */
00040 alloc_int_finder::alloc_int_finder (ptr< ::lestes::backend_v2::structs::func_data > a__worker_base__data)
00041         : worker_base(a__worker_base__data)
00042 {}
00043 
00044 ptr< object::reflection_list > alloc_int_finder::reflection_get() const
00045 {
00046         if (!reflection) {
00047                 typedef class_reflection::field_metadata md;
00048                 typedef class_reflection::field_metadata_list mdlist;
00049                 ptr<mdlist> mdl = mdlist::create();
00050                 reflection = reflection_list::create( worker_base::reflection_get() );
00051                 reflection->push_back( class_reflection::create( "alloc_int_finder", mdl ) );
00052         }
00053         return reflection;
00054 }
00055 
00056 ptr< object::field_list_list > alloc_int_finder::field_values_get() const
00057 {
00058         ptr < field_list_list > result = worker_base::field_values_get();
00059         return result;
00060 }
00061 
00062 
00063 /*!
00064    Marking routine is used for garbage collection.
00065    \author lsg
00066  */
00067 void alloc_int_finder::gc_mark()
00068 {
00069         worker_base::gc_mark();
00070 }
00071 
00072 // End of class alloc_int_finder.
00073 
00074 // ------------- Class alloc_interval follows. -------------
00075 
00076 /*!
00077    \returns The value of alloc_interval::operand.
00078    \author lsg
00079  */
00080 ptr< ::lestes::backend_v2::intercode::ge_operand_reg > alloc_interval::operand_get() const
00081 {
00082         return operand;
00083 }
00084 
00085 /*!
00086    \param[in] x The new value to set alloc_interval::operand to.
00087    \author lsg
00088  */
00089 void alloc_interval::operand_set(const ptr< ::lestes::backend_v2::intercode::ge_operand_reg > & x)
00090 {
00091         alloc_interval::operand = x;
00092 }
00093 
00094 /*!
00095    \returns The value of alloc_interval::rng.
00096    \author lsg
00097  */
00098 ptr< ::lestes::backend_v2::workers::liveness_range > alloc_interval::rng_get() const
00099 {
00100         return rng;
00101 }
00102 
00103 /*!
00104    \param[in] x The new value to set alloc_interval::rng to.
00105    \author lsg
00106  */
00107 void alloc_interval::rng_set(const ptr< ::lestes::backend_v2::workers::liveness_range > & x)
00108 {
00109         alloc_interval::rng = x;
00110 }
00111 
00112 /*!
00113    \returns The value of alloc_interval::prev.
00114    \author lsg
00115  */
00116 ptr< alloc_interval > alloc_interval::prev_get() const
00117 {
00118         return prev;
00119 }
00120 
00121 /*!
00122    \param[in] x The new value to set alloc_interval::prev to.
00123    \author lsg
00124  */
00125 void alloc_interval::prev_set(const ptr< alloc_interval > & x)
00126 {
00127         alloc_interval::prev = x;
00128 }
00129 
00130 /*!
00131    \returns The value of alloc_interval::next.
00132    \author lsg
00133  */
00134 ptr< alloc_interval > alloc_interval::next_get() const
00135 {
00136         return next;
00137 }
00138 
00139 /*!
00140    \param[in] x The new value to set alloc_interval::next to.
00141    \author lsg
00142  */
00143 void alloc_interval::next_set(const ptr< alloc_interval > & x)
00144 {
00145         alloc_interval::next = x;
00146 }
00147 
00148 /*!
00149    \returns The value of alloc_interval::allocated_spill_place.
00150    \author lsg
00151  */
00152 ptr< ::lestes::backend_v2::intercode::pi_mem_factory > alloc_interval::allocated_spill_place_get() const
00153 {
00154         return allocated_spill_place;
00155 }
00156 
00157 /*!
00158    \param[in] x The new value to set alloc_interval::allocated_spill_place to.
00159    \author lsg
00160  */
00161 void alloc_interval::allocated_spill_place_set(const ptr< ::lestes::backend_v2::intercode::pi_mem_factory > & x)
00162 {
00163         alloc_interval::allocated_spill_place = x;
00164 }
00165 
00166 /*!
00167    \returns The value of alloc_interval::allocated_reg.
00168    \author lsg
00169  */
00170 ptr< ::lestes::md::registers::tm_register > alloc_interval::allocated_reg_get() const
00171 {
00172         return allocated_reg;
00173 }
00174 
00175 /*!
00176    \param[in] x The new value to set alloc_interval::allocated_reg to.
00177    \author lsg
00178  */
00179 void alloc_interval::allocated_reg_set(const ptr< ::lestes::md::registers::tm_register > & x)
00180 {
00181         alloc_interval::allocated_reg = x;
00182 }
00183 
00184 /*!
00185    \returns The value of alloc_interval::allocated_obj_prev_owner.
00186    \author lsg
00187  */
00188 ptr< alloc_interval > alloc_interval::allocated_obj_prev_owner_get() const
00189 {
00190         return allocated_obj_prev_owner;
00191 }
00192 
00193 /*!
00194    \param[in] x The new value to set alloc_interval::allocated_obj_prev_owner to.
00195    \author lsg
00196  */
00197 void alloc_interval::allocated_obj_prev_owner_set(const ptr< alloc_interval > & x)
00198 {
00199         alloc_interval::allocated_obj_prev_owner = x;
00200 }
00201 
00202 /*!
00203    \returns The value of alloc_interval::start.
00204    \author lsg
00205  */
00206 ulint alloc_interval::start_get() const
00207 {
00208         return start;
00209 }
00210 
00211 /*!
00212    \param[in] x The new value to set alloc_interval::start to.
00213    \author lsg
00214  */
00215 void alloc_interval::start_set(ulint x)
00216 {
00217         alloc_interval::start = x;
00218 }
00219 
00220 /*!
00221    \returns The value of alloc_interval::end.
00222    \author lsg
00223  */
00224 ulint alloc_interval::end_get() const
00225 {
00226         return end;
00227 }
00228 
00229 /*!
00230    \param[in] x The new value to set alloc_interval::end to.
00231    \author lsg
00232  */
00233 void alloc_interval::end_set(ulint x)
00234 {
00235         alloc_interval::end = x;
00236 }
00237 
00238 /*!
00239    \returns The value of alloc_interval::instructions.
00240    \author lsg
00241  */
00242 ptr< ::lestes::std::vector< srp< ::lestes::backend_v2::intercode::ge_pi > > > alloc_interval::instructions_get() const
00243 {
00244         return instructions;
00245 }
00246 
00247 /*!
00248    \param[in] x The new value to set alloc_interval::instructions to.
00249    \author lsg
00250  */
00251 void alloc_interval::instructions_set(const ptr< ::lestes::std::vector< srp< ::lestes::backend_v2::intercode::ge_pi > > > & x)
00252 {
00253         alloc_interval::instructions = x;
00254 }
00255 
00256 /*!
00257    \returns The value of alloc_interval::allowed_registers.
00258    \author lsg
00259  */
00260 ptr< ::lestes::std::set< ulint > > alloc_interval::allowed_registers_get() const
00261 {
00262         return allowed_registers;
00263 }
00264 
00265 /*!
00266    \param[in] x The new value to set alloc_interval::allowed_registers to.
00267    \author lsg
00268  */
00269 void alloc_interval::allowed_registers_set(const ptr< ::lestes::std::set< ulint > > & x)
00270 {
00271         alloc_interval::allowed_registers = x;
00272 }
00273 
00274 /*!
00275    This factory method for class alloc_interval takes values of all fields as arguments.
00276    \author lsg
00277  */
00278 ptr< alloc_interval > alloc_interval::create(ptr< ::lestes::backend_v2::intercode::ge_operand_reg > a__alloc_interval__operand,
00279                 ptr< ::lestes::backend_v2::workers::liveness_range > a__alloc_interval__rng,
00280                 ptr< alloc_interval > a__alloc_interval__prev,
00281                 ptr< alloc_interval > a__alloc_interval__next,
00282                 ptr< ::lestes::backend_v2::intercode::pi_mem_factory > a__alloc_interval__allocated_spill_place,
00283                 ptr< ::lestes::md::registers::tm_register > a__alloc_interval__allocated_reg,
00284                 ptr< alloc_interval > a__alloc_interval__allocated_obj_prev_owner,
00285                 ulint a__alloc_interval__start,
00286                 ulint a__alloc_interval__end,
00287                 ptr< ::lestes::std::vector< srp< ::lestes::backend_v2::intercode::ge_pi > > > a__alloc_interval__instructions,
00288                 ptr< ::lestes::std::set< ulint > > a__alloc_interval__allowed_registers)
00289 {
00290         return ptr< alloc_interval > ( new alloc_interval(a__alloc_interval__operand,
00291                 a__alloc_interval__rng,
00292                 a__alloc_interval__prev,
00293                 a__alloc_interval__next,
00294                 a__alloc_interval__allocated_spill_place,
00295                 a__alloc_interval__allocated_reg,
00296                 a__alloc_interval__allocated_obj_prev_owner,
00297                 a__alloc_interval__start,
00298                 a__alloc_interval__end,
00299                 a__alloc_interval__instructions,
00300                 a__alloc_interval__allowed_registers) );
00301 }
00302 
00303 /*!
00304    This factory method for class alloc_interval uses initializers.
00305    \author lsg
00306  */
00307 ptr< alloc_interval > alloc_interval::create(ptr< ::lestes::backend_v2::intercode::ge_operand_reg > a__alloc_interval__operand,
00308                 ptr< ::lestes::backend_v2::workers::liveness_range > a__alloc_interval__rng)
00309 {
00310         return ptr< alloc_interval > ( new alloc_interval(a__alloc_interval__operand, a__alloc_interval__rng, NULL, NULL, NULL, NULL, NULL, 0, 0, ::lestes::std::vector< srp< ::lestes::backend_v2::intercode::ge_pi > > ::create(), NULL) );
00311 }
00312 
00313 /*!
00314    Generated constructor for class alloc_interval.
00315    \author lsg
00316  */
00317 alloc_interval::alloc_interval (ptr< ::lestes::backend_v2::intercode::ge_operand_reg > a__alloc_interval__operand,
00318                 ptr< ::lestes::backend_v2::workers::liveness_range > a__alloc_interval__rng,
00319                 ptr< alloc_interval > a__alloc_interval__prev,
00320                 ptr< alloc_interval > a__alloc_interval__next,
00321                 ptr< ::lestes::backend_v2::intercode::pi_mem_factory > a__alloc_interval__allocated_spill_place,
00322                 ptr< ::lestes::md::registers::tm_register > a__alloc_interval__allocated_reg,
00323                 ptr< alloc_interval > a__alloc_interval__allocated_obj_prev_owner,
00324                 ulint a__alloc_interval__start,
00325                 ulint a__alloc_interval__end,
00326                 ptr< ::lestes::std::vector< srp< ::lestes::backend_v2::intercode::ge_pi > > > a__alloc_interval__instructions,
00327                 ptr< ::lestes::std::set< ulint > > a__alloc_interval__allowed_registers)
00328         : ::lestes::std::object(), operand(checked(a__alloc_interval__operand)), rng(checked(a__alloc_interval__rng)), prev(a__alloc_interval__prev), next(a__alloc_interval__next), allocated_spill_place(a__alloc_interval__allocated_spill_place), allocated_reg(a__alloc_interval__allocated_reg), allocated_obj_prev_owner(a__alloc_interval__allocated_obj_prev_owner), start(a__alloc_interval__start), end(a__alloc_interval__end), instructions(checked(a__alloc_interval__instructions)), allowed_registers(a__alloc_interval__allowed_registers)
00329 {}
00330 
00331 ptr< object::reflection_list > alloc_interval::reflection_get() const
00332 {
00333         if (!reflection) {
00334                 typedef class_reflection::field_metadata md;
00335                 typedef class_reflection::field_metadata_list mdlist;
00336                 ptr<mdlist> mdl = mdlist::create();
00337                 mdl->push_back( md::create( "operand", "ge_operand_reg" ) );
00338                 mdl->push_back( md::create( "rng", "liveness_range" ) );
00339                 mdl->push_back( md::create( "prev", "alloc_interval" ) );
00340                 mdl->push_back( md::create( "next", "alloc_interval" ) );
00341                 mdl->push_back( md::create( "allocated_spill_place", "pi_mem_factory" ) );
00342                 mdl->push_back( md::create( "allocated_reg", "tm_register" ) );
00343                 mdl->push_back( md::create( "allocated_obj_prev_owner", "alloc_interval" ) );
00344                 mdl->push_back( md::create( "start", "ulint" ) );
00345                 mdl->push_back( md::create( "end", "ulint" ) );
00346                 mdl->push_back( md::create( "instructions", "vector&lt; srp&lt; ::lestes::backend_v2::intercode::ge_pi &gt; &gt;" ) );
00347                 mdl->push_back( md::create( "allowed_registers", "set&lt; ulint &gt;" ) );
00348                 reflection = reflection_list::create( ::lestes::std::object::reflection_get() );
00349                 reflection->push_back( class_reflection::create( "alloc_interval", mdl ) );
00350         }
00351         return reflection;
00352 }
00353 
00354 ptr< object::field_list_list > alloc_interval::field_values_get() const
00355 {
00356         ptr < field_list_list > result = ::lestes::std::object::field_values_get();
00357         result->push_back( value_list::create() );
00358         result->back()->push_back( this->operand );
00359         result->push_back( value_list::create() );
00360         result->back()->push_back( this->rng );
00361         result->push_back( value_list::create() );
00362         result->back()->push_back( this->prev );
00363         result->push_back( value_list::create() );
00364         result->back()->push_back( this->next );
00365         result->push_back( value_list::create() );
00366         result->back()->push_back( this->allocated_spill_place );
00367         result->push_back( value_list::create() );
00368         result->back()->push_back( this->allocated_reg );
00369         result->push_back( value_list::create() );
00370         result->back()->push_back( this->allocated_obj_prev_owner );
00371         result->push_back( value_list::create() );
00372         result->back()->push_back( objectize< ulint > ::create( this->start ) );
00373         result->push_back( value_list::create() );
00374         result->back()->push_back( objectize< ulint > ::create( this->end ) );
00375         result->push_back( value_list::create() );
00376         result->back()->push_back( this->instructions );
00377         result->push_back( value_list::create() );
00378         result->back()->push_back( this->allowed_registers );
00379         return result;
00380 }
00381 
00382 
00383 /*!
00384    Marking routine is used for garbage collection.
00385    \author lsg
00386  */
00387 void alloc_interval::gc_mark()
00388 {
00389 	::lestes::std::object::gc_mark();
00390 }
00391 
00392 // End of class alloc_interval.
00393 
00394 
00395 // static data members follow 
00396 ptr<object::reflection_list> alloc_int_finder::reflection = reflection;
00397 ptr<object::reflection_list> alloc_interval::reflection = reflection;
00398 
00399 end_package(workers);
00400 end_package(backend_v2);
00401 end_package(lestes);
00402 

Generated on Mon Feb 12 18:22:11 2007 for lestes by doxygen 1.5.1-20070107