pinapa-analyze-body.h

Go to the documentation of this file.
00001 /*******************************************************************************
00002  * arch-tag: Matthieu Moy  April 10, 2003 (parser/include/scp-analyse-body.h)
00003  *------------------------------------------------------------------------------
00004  *         Copyright (c) STMicroelectronics,Verimag
00005  * Pinapa is free software; you can redistribute it and/or
00006  * modify it under the terms of the GNU Lesser General Public
00007  * License as published by the Free Software Foundation; either
00008  * version 2 of the License, or (at your option) any later version.
00009  * 
00010  * This library is distributed in the hope that it will be useful,
00011  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00012  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00013  * Library General Public License for more details.
00014  *
00015  * You should have received a copy of the GNU Lesser General Public
00016  * License along with this library; if not, write to the Free
00017  * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
00018  * MA 02111-1307, USA
00019  *------------------------------------------------------------------------------
00020  *                 System Platform Group - HPC
00021  *******************************************************************************/
00022 
00034 #include "pinapa-parser-all.h"
00035 
00036 #ifndef PINAPA_ANALYZE_BODY_H
00037 #define PINAPA_ANALYZE_BODY_H
00038 
00039 #include <vector>
00040 
00041 #include "pinapa-systemc-light.h"
00042 
00043 #include "pinapa-tree.h"
00044 
00045 namespace pinapa {
00047   void analyze_function_body(tree body, tree module, const vector<sc_process_b *> & vh);
00048 
00050   void mark_function_calls(tree body, tree module);
00051 
00053   void finish_proc_analysisses();  
00054   
00056   struct event_assoc_unit {
00057     event_assoc_unit(sc_process_b * h, sc_event * p, bool is_array,
00058                      tree index)
00059       : m_handle(h), m_event(p), m_is_array(is_array), m_index(index) {}
00060     sc_process_b * m_handle;
00061     sc_event * m_event;
00062     bool m_is_array;
00063     tree m_index;
00064   };
00065 
00070   typedef vector<event_assoc_unit> event_assoc;
00071 }
00072 
00073 #endif // PINAPA_ANALYZE_BODY_H
00074 
Generated by
Matthieu Moy <Matthieu.Moy@st.com>
Back to Pinapa Home Page