Main Page | Modules | Alphabetical List | Data Structures | File List | Data Fields | Globals | Related Pages

/Users/trevorw/projects/release/covered-0.7.4/src/gen_item.h

Go to the documentation of this file.
00001 #ifndef __GEN_ITEM_H__
00002 #define __GEN_ITEM_H__
00003 
00004 /*
00005  Copyright (c) 2006-2009 Trevor Williams
00006 
00007  This program is free software; you can redistribute it and/or modify
00008  it under the terms of the GNU General Public License as published by the Free Software
00009  Foundation; either version 2 of the License, or (at your option) any later version.
00010 
00011  This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
00012  without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
00013  See the GNU General Public License for more details.
00014 
00015  You should have received a copy of the GNU General Public License along with this program;
00016  if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
00017 */
00018 
00027 #include <stdio.h>
00028 
00029 #include "defines.h"
00030 
00031 
00032 /*@-exportlocal@*/
00034 void gen_item_display( gen_item* gi );
00035 /*@=exportlocal@*/
00036 
00038 void gen_item_display_block( gen_item* root );
00039 
00041 gen_item* gen_item_find( gen_item* root, gen_item* gi );
00042 
00044 void gen_item_remove_if_contains_expr_calling_stmt( gen_item* gi, statement* stmt );
00045 
00047 bool gen_item_varname_contains_genvar( char* name );
00048 
00051 char* gen_item_calc_signal_name( const char* name, func_unit* funit, int line, bool no_genvars );
00052 
00054 gen_item* gen_item_create_expr( expression* expr );
00055 
00057 gen_item* gen_item_create_sig( vsignal* sig );
00058 
00060 gen_item* gen_item_create_stmt( statement* stmt );
00061 
00063 gen_item* gen_item_create_inst( funit_inst* inst );
00064 
00066 gen_item* gen_item_create_tfn( funit_inst* inst );
00067 
00069 gen_item* gen_item_create_bind( const char* name, expression* expr );
00070 
00072 void gen_item_resize_stmts_and_sigs( gen_item* gi, func_unit* funit );
00073 
00075 void gen_item_assign_ids( gen_item* gi, func_unit* funit );
00076 
00078 void gen_item_db_write( gen_item* gi, uint32 type, FILE* file );
00079 
00081 void gen_item_db_write_expr_tree( gen_item* gi, FILE* file );
00082 
00084 bool gen_item_connect( gen_item* gi1, gen_item* gi2, int conn_id, bool stop_on_null );
00085 
00087 void gen_item_bind( gen_item* gi );
00088 
00090 void generate_resolve( funit_inst* inst );
00091 
00093 bool generate_remove_stmt( statement* stmt );
00094 
00096 void gen_item_dealloc( gen_item* gi, bool rm_elem );
00097 
00098 #endif
00099 

Generated on Wed Jun 17 22:19:20 2009 for Covered by doxygen 1.3.4