/usr/include/cver/veriuser.h is in gplcver 2.12a-1.1+b2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 | /******************************************************************************
* veriuser.h
*
* IEEE 1364 1995 Verilog HDL Programming Language Interface (PLI).
*
* This file contains the constant definitions, structure definitions, and
* routine declarations used by the Verilog PLI procedural interface TF
* task/function routines.
*
* The file should be included with all C routines that use the PLI
* task/function routines.
******************************************************************************/
#ifndef VERIUSER_H
#define VERIUSER_H
/*---------------------------------------------------------------------------*/
/*------------------------------- definitions -------------------------------*/
/*---------------------------------------------------------------------------*/
/*----------------------------- general defines -----------------------------*/
#define bool int
#define true 1
#define TRUE 1
#define false 0
#define FALSE 0
#define null 0L
/*---------------------- defines for error interception ---------------------*/
#define ERR_MESSAGE 1
#define ERR_WARNING 2
#define ERR_ERROR 3
#define ERR_INTERNAL 4
#define ERR_SYSTEM 5
/*-------------- values for reason parameter to misctf routines -------------*/
#define reason_checktf 1
#define REASON_CHECKTF reason_checktf
#define reason_sizetf 2
#define REASON_SIZETF reason_sizetf
#define reason_calltf 3
#define REASON_CALLTF reason_calltf
#define reason_save 4
#define REASON_SAVE reason_save
#define reason_restart 5
#define REASON_RESTART reason_restart
#define reason_disable 6
#define REASON_DISABLE reason_disable
#define reason_paramvc 7
#define REASON_PARAMVC reason_paramvc
#define reason_synch 8
#define REASON_SYNCH reason_synch
#define reason_finish 9
#define REASON_FINISH reason_finish
#define reason_reactivate 10
#define REASON_REACTIVATE reason_reactivate
#define reason_rosynch 11
#define REASON_ROSYNCH reason_rosynch
#define reason_paramdrc 15
#define REASON_PARAMDRC reason_paramdrc
#define reason_endofcompile 16
#define REASON_ENDOFCOMPILE reason_endofcompile
#define reason_scope 17
#define REASON_SCOPE reason_scope
#define reason_interactive 18
#define REASON_INTERACTIVE reason_interactive
#define reason_reset 19
#define REASON_RESET reason_reset
#define reason_endofreset 20
#define REASON_ENDOFRESET reason_endofreset
#define reason_force 21
#define REASON_FORCE reason_force
#define reason_release 22
#define REASON_RELEASE reason_release
#define reason_startofsave 27
#define REASON_STARTOFSAVE reason_startofsave
#define reason_startofrestart 28
#define REASON_STARTOFRESTART reason_startofrestart
#define REASON_MAX 28
/*-- types used by tf_typep() and expr_type field in tf_exprinfo structure --*/
#define tf_nullparam 0
#define TF_NULLPARAM tf_nullparam
#define tf_string 1
#define TF_STRING tf_string
#define tf_readonly 10
#define TF_READONLY tf_readonly
#define tf_readwrite 11
#define TF_READWRITE tf_readwrite
#define tf_rwbitselect 12
#define TF_RWBITSELECT tf_rwbitselect
#define tf_rwpartselect 13
#define TF_RWPARTSELECT tf_rwpartselect
#define tf_rwmemselect 14
#define TF_RWMEMSELECT tf_rwmemselect
#define tf_readonlyreal 15
#define TF_READONLYREAL tf_readonlyreal
#define tf_readwritereal 16
#define TF_READWRITEREAL tf_readwritereal
/*---------- types used by node_type field in tf_nodeinfo structure ---------*/
#define tf_null_node 100
#define TF_NULL_NODE tf_null_node
#define tf_reg_node 101
#define TF_REG_NODE tf_reg_node
#define tf_integer_node 102
#define TF_INTEGER_NODE tf_integer_node
#define tf_time_node 103
#define TF_TIME_NODE tf_time_node
#define tf_netvector_node 104
#define TF_NETVECTOR_NODE tf_netvector_node
#define tf_netscalar_node 105
#define TF_NETSCALAR_NODE tf_netscalar_node
#define tf_memory_node 106
#define TF_MEMORY_NODE tf_memory_node
#define tf_real_node 107
#define TF_REAL_NODE tf_real_node
/*---------------------------------------------------------------------------*/
/*-------------------------- structure definitions --------------------------*/
/*---------------------------------------------------------------------------*/
/*----- structure used with tf_exprinfo() to get expression information -----*/
typedef struct t_tfexprinfo
{
short expr_type;
short padding;
struct t_vecval *expr_value_p;
double real_value;
char *expr_string;
int expr_ngroups;
int expr_vec_size;
int expr_sign;
int expr_lhs_select;
int expr_rhs_select;
} s_tfexprinfo, *p_tfexprinfo;
/*------- structure for use with tf_nodeinfo() to get node information ------*/
typedef struct t_tfnodeinfo
{
short node_type;
short padding;
union
{
struct t_vecval *vecval_p;
struct t_strengthval *strengthval_p;
char *memoryval_p;
double *real_val_p;
} node_value;
char *node_symbol;
int node_ngroups;
int node_vec_size;
int node_sign;
int node_ms_index;
int node_ls_index;
int node_mem_size;
int node_lhs_element;
int node_rhs_element;
int *node_handle;
} s_tfnodeinfo, *p_tfnodeinfo;
/*--------------------- data structure of vector values ---------------------*/
typedef struct t_vecval
{
int avalbits;
int bvalbits;
} s_vecval, *p_vecval;
/*--------------- data structure of scalar net strength values --------------*/
typedef struct t_strengthval
{
int strength0;
int strength1;
} s_strengthval, *p_strengthval;
/*---------------------------------------------------------------------------*/
/*--------------------------- routine definitions ---------------------------*/
/*---------------------------------------------------------------------------*/
#if defined(__STDC__) || defined(__cplusplus)
#ifndef PROTO_PARAMS
#define PROTO_PARAMS(params) params
#define DEFINED_PROTO_PARAMS
#endif
#ifndef EXTERN
#define EXTERN
#define DEFINED_EXTERN
#endif
#else
#ifndef PROTO_PARAMS
#define PROTO_PARAMS(params) (/* nothing */)
#define DEFINED_PROTO_PARAMS
#endif
#ifndef EXTERN
#define EXTERN extern
#define DEFINED_EXTERN
#endif
#endif /* __STDC__ */
EXTERN void io_mcdprintf PROTO_PARAMS((int mcd, char *format, ...));
EXTERN void io_printf PROTO_PARAMS((char *format, ...));
EXTERN char *mc_scan_plusargs PROTO_PARAMS((char *plusarg));
EXTERN void tf_add_long PROTO_PARAMS((int *aof_lowtime1, int *aof_hightime1, int lowtime2, int hightime2));
EXTERN int tf_asynchoff PROTO_PARAMS((void));
EXTERN int tf_asynchon PROTO_PARAMS((void));
EXTERN int tf_clearalldelays PROTO_PARAMS((void));
EXTERN int tf_compare_long PROTO_PARAMS((unsigned int low1, unsigned int high1, unsigned int low2, unsigned int high2));
EXTERN int tf_copypvc_flag PROTO_PARAMS((int nparam));
EXTERN void tf_divide_long PROTO_PARAMS((int *aof_low1, int *aof_high1, int low2, int high2));
EXTERN int tf_dofinish PROTO_PARAMS((void));
EXTERN int tf_dostop PROTO_PARAMS((void));
EXTERN int tf_error PROTO_PARAMS((char *fmt, ...));
EXTERN int tf_evaluatep PROTO_PARAMS((int pnum));
EXTERN p_tfexprinfo tf_exprinfo PROTO_PARAMS((int pnum, p_tfexprinfo pinfo));
EXTERN char *tf_getcstringp PROTO_PARAMS((int nparam));
EXTERN char *tf_getinstance PROTO_PARAMS((void));
EXTERN int tf_getlongp PROTO_PARAMS((int *aof_highvalue, int pnum));
EXTERN int tf_getlongtime PROTO_PARAMS((int *aof_hightime));
EXTERN int tf_getnextlongtime PROTO_PARAMS((int *aof_lowtime, int *aof_hightime));
EXTERN int tf_getp PROTO_PARAMS((int pnum));
EXTERN int tf_getpchange PROTO_PARAMS((int nparam));
EXTERN double tf_getrealp PROTO_PARAMS((int pnum));
EXTERN double tf_getrealtime PROTO_PARAMS((void));
EXTERN int tf_gettime PROTO_PARAMS((void));
EXTERN int tf_gettimeprecision PROTO_PARAMS((void));
EXTERN int tf_gettimeunit PROTO_PARAMS((void));
EXTERN char *tf_getworkarea PROTO_PARAMS((void));
EXTERN int tf_iasynchoff PROTO_PARAMS((char *inst));
EXTERN int tf_iasynchon PROTO_PARAMS((char *inst));
EXTERN int tf_iclearalldelays PROTO_PARAMS((char *inst));
EXTERN int tf_icopypvc_flag PROTO_PARAMS((int nparam, char *inst));
EXTERN int tf_ievaluatep PROTO_PARAMS((int pnum, char *inst));
EXTERN p_tfexprinfo tf_iexprinfo PROTO_PARAMS((int pnum, p_tfexprinfo pinfo, char *inst));
EXTERN char *tf_igetcstringp PROTO_PARAMS((int nparam, char *inst));
EXTERN int tf_igetlongp PROTO_PARAMS((int *aof_highvalue, int pnum, char *inst));
EXTERN int tf_igetlongtime PROTO_PARAMS((int *aof_hightime, char *inst));
EXTERN int tf_igetp PROTO_PARAMS((int pnum, char *inst));
EXTERN int tf_igetpchange PROTO_PARAMS((int nparam, char *inst));
EXTERN double tf_igetrealp PROTO_PARAMS((int pnum, char *inst));
EXTERN double tf_igetrealtime PROTO_PARAMS((char *inst));
EXTERN int tf_igettime PROTO_PARAMS((char *inst));
EXTERN int tf_igettimeprecision PROTO_PARAMS((char *inst));
EXTERN int tf_igettimeunit PROTO_PARAMS((char *inst));
EXTERN char *tf_igetworkarea PROTO_PARAMS((char *inst));
EXTERN char *tf_imipname PROTO_PARAMS((char *cell));
EXTERN int tf_imovepvc_flag PROTO_PARAMS((int nparam, char *inst));
EXTERN p_tfnodeinfo tf_inodeinfo PROTO_PARAMS((int pnum, p_tfnodeinfo pinfo, char *inst));
EXTERN int tf_inump PROTO_PARAMS((char *inst));
EXTERN int tf_ipropagatep PROTO_PARAMS((int pnum, char *inst));
EXTERN int tf_iputlongp PROTO_PARAMS((int pnum, int lowvalue, int highvalue, char *inst));
EXTERN int tf_iputp PROTO_PARAMS((int pnum, int value, char *inst));
EXTERN int tf_iputrealp PROTO_PARAMS((int pnum, double value, char *inst));
EXTERN int tf_irosynchronize PROTO_PARAMS((char *inst));
EXTERN int tf_isetdelay PROTO_PARAMS((int delay, char *inst));
EXTERN int tf_isetlongdelay PROTO_PARAMS((int lowdelay, int highdelay, char *inst));
EXTERN int tf_isetrealdelay PROTO_PARAMS((double realdelay, char *inst));
EXTERN int tf_isizep PROTO_PARAMS((int pnum, char *inst));
EXTERN char *tf_ispname PROTO_PARAMS((char *cell));
EXTERN int tf_istrdelputp PROTO_PARAMS((int nparam, int bitlength, int format_char, char *value_p, int delay, int delaytype, char *inst));
EXTERN char *tf_istrgetp PROTO_PARAMS((int pnum, int format_char, char *inst));
EXTERN int tf_istrlongdelputp PROTO_PARAMS((int nparam, int bitlength, int format_char, char *value_p, int lowdelay, int highdelay, int delaytype, char *inst));
EXTERN int tf_istrrealdelputp PROTO_PARAMS((int nparam, int bitlength, int format_char, char *value_p, double realdelay, int delaytype, char *inst));
EXTERN int tf_isynchronize PROTO_PARAMS((char *inst));
EXTERN int tf_itestpvc_flag PROTO_PARAMS((int nparam, char *inst));
EXTERN int tf_itypep PROTO_PARAMS((int pnum, char *inst));
EXTERN void tf_long_to_real PROTO_PARAMS((int int_lo, int int_hi, double *aof_real));
EXTERN char *tf_longtime_tostr PROTO_PARAMS((int lowtime, int hightime));
EXTERN int tf_message PROTO_PARAMS((int level, char *facility, char *messno, char *message, ...));
EXTERN char *tf_mipname PROTO_PARAMS((void));
EXTERN int tf_movepvc_flag PROTO_PARAMS((int nparam));
EXTERN void tf_multiply_long PROTO_PARAMS((int *aof_low1, int *aof_high1, int low2, int high2));
EXTERN p_tfnodeinfo tf_nodeinfo PROTO_PARAMS((int pnum, p_tfnodeinfo pinfo));
EXTERN int tf_nump PROTO_PARAMS((void));
EXTERN int tf_propagatep PROTO_PARAMS((int pnum));
EXTERN int tf_putlongp PROTO_PARAMS((int pnum, int lowvalue, int highvalue));
EXTERN int tf_putp PROTO_PARAMS((int pnum, int value));
EXTERN int tf_putrealp PROTO_PARAMS((int pnum, double value));
EXTERN int tf_read_restart PROTO_PARAMS((char *blockptr, int blocklen));
EXTERN void tf_real_to_long PROTO_PARAMS((double real, int *aof_int_lo, int *aof_int_hi));
EXTERN int tf_rosynchronize PROTO_PARAMS((void));
EXTERN void tf_scale_longdelay PROTO_PARAMS((char *cell, int delay_lo, int delay_hi, int *aof_delay_lo, int *aof_delay_hi));
EXTERN void tf_scale_realdelay PROTO_PARAMS((char *cell, double realdelay, double *aof_realdelay));
EXTERN int tf_setdelay PROTO_PARAMS((int delay));
EXTERN int tf_setlongdelay PROTO_PARAMS((int lowdelay, int highdelay));
EXTERN int tf_setrealdelay PROTO_PARAMS((double realdelay));
EXTERN int tf_setworkarea PROTO_PARAMS((char *workarea));
EXTERN int tf_sizep PROTO_PARAMS((int pnum));
EXTERN char *tf_spname PROTO_PARAMS((void));
EXTERN int tf_strdelputp PROTO_PARAMS((int nparam, int bitlength, int format_char, char *value_p, int delay, int delaytype));
EXTERN char *tf_strgetp PROTO_PARAMS((int pnum, int format_char));
EXTERN char *tf_strgettime PROTO_PARAMS((void));
EXTERN int tf_strlongdelputp PROTO_PARAMS((int nparam, int bitlength, int format_char, char *value_p, int lowdelay, int highdelay, int delaytype));
EXTERN int tf_strrealdelputp PROTO_PARAMS((int nparam, int bitlength, int format_char, char *value_p, double realdelay, int delaytype));
EXTERN void tf_subtract_long PROTO_PARAMS((int *aof_lowtime1, int *aof_hightime1, int lowtime2, int hightime2));
EXTERN int tf_synchronize PROTO_PARAMS((void));
EXTERN int tf_testpvc_flag PROTO_PARAMS((int nparam));
EXTERN int tf_text PROTO_PARAMS((char *fmt, ...));
EXTERN int tf_typep PROTO_PARAMS((int pnum));
EXTERN void tf_unscale_longdelay PROTO_PARAMS((char *cell, int delay_lo, int delay_hi, int *aof_delay_lo, int *aof_delay_hi));
EXTERN void tf_unscale_realdelay PROTO_PARAMS((char *cell, double realdelay, double *aof_realdelay));
EXTERN int tf_warning PROTO_PARAMS((char *fmt, ...));
EXTERN int tf_write_save PROTO_PARAMS((char *blockptr, int blocklen));
#ifdef DEFINED_PROTO_PARAMS
#undef DEFINED_PROTO_PARAMS
#undef PROTO_PARAMS
#endif
#ifdef DEFINED_EXTERN
#undef DEFINED_EXTERN
#undef EXTERN
#endif
#endif /* VERIUSER_H */
|