Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

nci/suif/suif2b/j2s/cipass/ci_check_elim_pass.h

Go to the documentation of this file.
00001 /* -*- Mode: C++; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
00002 // $Id: ci_check_elim_pass.h,v 1.2 2000/07/24 00:32:55 brm Exp $
00003 
00004 #ifndef CIPASS__CI_CHECK_ELIM_PASS
00005 #define CIPASS__CI_CHECK_ELIM_PASS
00006 
00007 #include "common/suif_list.h"
00008 #include "suifkernel/suifkernel_forwarders.h"
00009 #include "suifkernel/suif_env.h"
00010 #include "suifkernel/suif_object.h"
00011 #include "suifpasses/suifpasses.h"
00012 #include "basicnodes/basic.h"
00013 #include "suifnodes/suif.h"
00014 #include "cfenodes/cfe.h"
00015 #include "osuifutilities/pass_utils.h"
00016 #include "osuifnodes/osuif.h"
00017 #include "osuifextensionnodes/osuifextension.h"
00018 #include "vtblnodes/vtbl_utils.h"
00019 #include "j2snodes/j2s.h"
00020 
00021 
00022 class CiCheckElimPass : public CollectWalkerPass<CIAnnote>
00023 {
00024 private:
00025   bool _verbose;
00026 
00027 protected:
00028   IInteger _removed_checks;
00029   
00030 public:
00031   CiCheckElimPass( SuifEnv* env, const LString& name= "eliminate_ci_checks" );
00032   virtual ~CiCheckElimPass()  { }
00033 
00034   Module *clone() const { return new CiCheckElimPass(_suif_env); }
00035 
00036   virtual void initialize_flags();
00037   virtual void initialize();
00038   virtual bool parse_command_line(TokenStream *command_line_stream);
00039 
00040   virtual void remove_execution_object( ExecutionObject* eo );
00041 
00042   virtual void postprocess();
00043   virtual void process_suif_object( CIAnnote* annote );
00044 };
00045 
00046 
00047 #endif

Generated at Mon Jul 31 13:41:53 2000 for NCI SUIF by doxygen 1.1.2 written by Dimitri van Heesch, © 1997-2000