dead_code_eliminator.g.hh

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 #ifndef lestes__backend_v2__workers__dead_code_eliminator_g_hh__included
00009 #define lestes__backend_v2__workers__dead_code_eliminator_g_hh__included
00010 
00011 #include <lestes/backend_v2/common.hh>
00012 #include <lestes/backend_v2/workers/worker_base.g.hh>
00013 
00014 #include <lestes/std/objectize_macros.hh>
00015 package(lestes);
00016 package(backend_v2);
00017 package(structs);
00018 class func_data;
00019 end_package(structs);
00020 end_package(backend_v2);
00021 end_package(lestes);
00022 
00023 package(lestes);
00024 package(backend_v2);
00025 package(intercode);
00026 class ge_pi;
00027 end_package(intercode);
00028 end_package(backend_v2);
00029 end_package(lestes);
00030 
00031 package(lestes);
00032 package(backend_v2);
00033 package(workers);
00034 
00035 
00036 class dead_code_eliminator;
00037 
00038 
00039 /*! \brief Eliminates dead code.
00040 
00041 It only eliminates pseudoinstructions whose output operands are not used by any other psedoinstruction. It performs only single pass through body therefore it
00042                 removes only last pseudoinstruction of any chain of dead code. The eliminator is used mainly to eliminate dead code generated by the compiler during ge-level
00043                 pseudoinstruction generation process.
00044 */
00045 class dead_code_eliminator : public worker_base {
00046 public:
00047         void process();
00048 
00049         ptr< ::lestes::backend_v2::structs::func_data > get_result();
00050 
00051         
00052         //! First generated factory method for class dead_code_eliminator.
00053         static ptr< dead_code_eliminator > create (
00054                 ptr< ::lestes::backend_v2::structs::func_data > a__worker_base__data);
00055 
00056         
00057 
00058         //! for purposes of dumping
00059         virtual ptr<reflection_list> reflection_get() const;
00060         //! for purposes of dumping
00061         virtual ptr<field_list_list> field_values_get() const;
00062         
00063 protected:
00064         //! Generated constructor for class dead_code_eliminator.
00065         dead_code_eliminator (
00066                 ptr< ::lestes::backend_v2::structs::func_data > a__worker_base__data);
00067 
00068         //! Marking routine for class dead_code_eliminator. 
00069         virtual void gc_mark();
00070 
00071 private:
00072         static ptr<reflection_list> reflection;
00073         
00074 }; // dead_code_eliminator
00075 
00076 
00077 end_package(workers);
00078 end_package(backend_v2);
00079 end_package(lestes);
00080 
00081 #endif // lestes__backend_v2__workers__dead_code_eliminator_g_hh__included

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