[18] | 1 | /* |
---|
| 2 | |
---|
| 3 | Copyright (c) 1992, 1993 |
---|
| 4 | Regents of the University of California |
---|
| 5 | All rights reserved. |
---|
| 6 | |
---|
| 7 | Use and copying of this software and preparation of derivative works |
---|
| 8 | based upon this software are permitted. However, any distribution of |
---|
| 9 | this software or derivative works must include the above copyright |
---|
| 10 | notice. |
---|
| 11 | |
---|
| 12 | This software is made available AS IS, and neither the Electronics |
---|
| 13 | Research Laboratory or the Universify of California make any |
---|
| 14 | warranty about the software, its performance or its conformity to |
---|
| 15 | any specification. |
---|
| 16 | |
---|
| 17 | Author: Szu-Tsung Cheng, stcheng@ic.Berkeley.EDU |
---|
| 18 | 10/92 |
---|
| 19 | 10/93 |
---|
| 20 | |
---|
| 21 | $Header: /projects/development/hsv/CVSRepository/vl2mv/src/parser/vl_write.h,v 1.3 2009/03/09 20:25:58 fabio Exp $ |
---|
| 22 | |
---|
| 23 | |
---|
| 24 | */ |
---|
| 25 | |
---|
| 26 | |
---|
| 27 | #define S_MUX (1) |
---|
| 28 | #define B_MUX (1<<1) |
---|
| 29 | |
---|
| 30 | EXTERN enum st_retval vl_write_desc ARGS((char *, char *, char *)); |
---|
| 31 | EXTERN void vl_write_module ARGS((FILE *, vl_module *)); |
---|
| 32 | EXTERN void vl_write_primitive ARGS((FILE *, vl_primitive *)); |
---|
| 33 | EXTERN void vl_write_function ARGS((FILE *, vl_function *)); |
---|
| 34 | EXTERN char *vl_write_prim_table_header ARGS((FILE *, vl_primitive *)); |
---|
| 35 | EXTERN void vl_write_mod_item_list ARGS((FILE *, lsList)); |
---|
| 36 | EXTERN st_table *vl_write_mod_item ARGS((FILE *, vl_decl *, st_table *)); |
---|
| 37 | EXTERN void vl_write_expr ARGS ((FILE *, vl_expr *, st_table *)); |
---|
| 38 | EXTERN void vl_write_expr_list ARGS((FILE *, lsList, st_table *)); |
---|
| 39 | EXTERN st_table *vl_write_procstmt ARGS((FILE*, vl_procstmt*, st_table*)); |
---|
| 40 | EXTERN st_table *vl_write_begin_end_stmt ARGS((FILE*, vl_begin_end_stmt*, int, vl_term*, st_table*)); |
---|
| 41 | EXTERN st_table *vl_write_if_else_stmt ARGS((FILE *, vl_if_else_stmt *, st_table *)); |
---|
| 42 | EXTERN st_table *vl_write_case_stmt ARGS((FILE *, vl_case_stmt *, st_table *)); |
---|
| 43 | EXTERN st_table *vl_write_event_control_stmt ARGS((FILE*, vl_event_control_stmt*, st_table*)); |
---|
| 44 | EXTERN void vl_write_cont_assign ARGS((FILE *, vl_cont_assign *, st_table *)); |
---|
| 45 | EXTERN void vl_write_wiring_assign ARGS((FILE *, vl_netdecl *, st_table *)); |
---|
| 46 | EXTERN vl_term *vl_write_assign ARGS((FILE *, vl_bassign_stmt *, int, vl_term *, st_table *)); |
---|
| 47 | EXTERN st_table *vl_write_stmt ARGS((FILE *, void *, int, vl_term *, st_table *)); |
---|
| 48 | EXTERN st_table *vl_write_decl_list ARGS((FILE*, void*, int, vl_term*, st_table*)); |
---|
| 49 | EXTERN st_table *vl_write_stmt_list ARGS((FILE*, lsList, int, vl_term*, st_table*)); |
---|
| 50 | EXTERN set_t *vl_write_event_expr ARGS((FILE*, vl_event_expr*)); |
---|
| 51 | EXTERN char *vl_write_vector_bop ARGS((FILE *, short, vl_term *, vl_term *, vl_term *)); |
---|
| 52 | EXTERN char *vl_write_bop ARGS((FILE *, short, char *, char *, char *, char *, int)); |
---|
| 53 | EXTERN void vl_write_bit_connect ARGS((FILE *, char *, char *, int)); |
---|
| 54 | EXTERN vl_term *write_case_comparator ARGS((FILE*, vl_term*, lsList, st_table*)); |
---|
| 55 | EXTERN void write_comparator ARGS((FILE*, vl_term*, vl_term*, vl_term*)); |
---|
| 56 | EXTERN int vl_eval_expr ARGS((vl_expr *)); |
---|
| 57 | EXTERN vl_term *instantiate_function ARGS((FILE*, vl_function*, lsList, st_table*)); |
---|
| 58 | EXTERN void vl_put_lib ARGS((FILE*, ...)); |
---|
| 59 | EXTERN st_table *create_var_muxes ARGS((FILE*, vl_term*, st_table*, st_table*, st_table*)); |
---|
| 60 | EXTERN void instantiate_latch ARGS((FILE*, st_table*)); |
---|
| 61 | EXTERN void vl_write_mv_lib ARGS((FILE*, short, vl_term*, vl_term*, vl_term*)); |
---|
| 62 | EXTERN st_table *conflict_arbitrator ARGS((FILE*, array_t*)); |
---|
| 63 | EXTERN st_table *func_conflict_arbitrator ARGS((FILE*, vl_id_range*, array_t*)); |
---|
| 64 | EXTERN void vl_write_reset ARGS((FILE *, vl_procstmt *)); |
---|
| 65 | EXTERN void vl_write_reset_stmt ARGS((FILE *, void *, st_table *)); |
---|
| 66 | EXTERN void vl_write_io_list ARGS((FILE *)); |
---|
| 67 | EXTERN void vl_write_mod_inst_list ARGS((FILE *, vl_mod_prim_inst_list *)); |
---|
| 68 | EXTERN void vl_write_mod_inst ARGS((FILE *, vl_module *, vl_mod_prim_inst *)); |
---|
| 69 | EXTERN void vl_write_svar ARGS((FILE *)); |
---|
| 70 | EXTERN vl_term *sensitive_control ARGS((FILE *, st_table *)); |
---|
| 71 | EXTERN vl_term *test_against_lc_init ARGS((FILE*)); |
---|
| 72 | EXTERN FILE *openStream ARGS(()); |
---|
| 73 | EXTERN void closeStream ARGS(()); |
---|
| 74 | EXTERN void dumpStream ARGS((FILE *to, FILE *from)); |
---|
| 75 | EXTERN char *cfsm_inputs ARGS((char *inputs)); |
---|
| 76 | EXTERN char *cfsm_ports ARGS((char *inputs)); |
---|
| 77 | EXTERN FILE *vl_begin_buffer ARGS(()); |
---|
| 78 | EXTERN void vl_close_buffer ARGS((FILE *buffer)); |
---|
| 79 | EXTERN void vl_append_buffer ARGS((FILE *main_stream, FILE *buffer)); |
---|