Hi All,
After reading Jim and Bassam's discussion, here is an
updated proposal for #353. I have tested out these
changes with the latest vpi_user.h from P1364-2005_D5,
as suggested by Stu.
I'm attaching a modified version of sv_vpi_user.h
that has all these changes applied to it.
There were no problems detected in Draft 5's vpi_user.h.
To test out file vpi_user.h, I had to do a bunch of
cut-n-paste from the Acrobat document. Unfortunately
cut-n-paste from Acrobat messes up all whitespace
formatting, so I don't have a handy, well-formatted
version of the file available to attach. If anyone
is interested, I can send out my ugly, unformatted
version (which is correct and compiles fine).
This proposal has been uploaded into Mantis.
Sorry it's just a text file, Stu.
I didn't have time to do a full-blown colorized MS Word doc.
Let me know if that's going to be an issue.
Thanks and regards,
Doug
PROPOSAL for SV #353
Affects Sections 30, 31, and Annex I
In Annex I:
CHANGE line 29
USED TO BE:
#include <vpi_user.h>
SHOULD BE:
#include "vpi_user.h"
DELETE line 34
(It is a stray '}' character.)
DELETE the following lines (154, 155)
#define vpiLhs 711
#define vpiRhs 712
DELETE line 178
#define vpiMembers 736
DELETE the following lines (250 and 251)
#define vpiValid 646
#define vpiActive 647
CHANGE line 424
USED TO BE:
PLI_INT32 vpi_get_assertion_info (assert_handle,
p_vpi_assertion_info);
SHOULD BE:
PLI_INT32 vpi_get_assertion_info (
vpiHandle assertion, /* handle to assertion */
p_vpi_assertion_info info /* assertion related information */
);
DELETE lines 464-465:
/* Member of a collection */
#define vpiMember 840 /* Member of a collection */
CHANGE the functions related to the data reader API
between lines 486 and 514.
USED TO BE:
/* load extension form for the reader extension */
PLI_INT32 vpi_load_extension PROTO_PARAMS((PLI_BYTE8
*extension_name,
PLI_BYTE8 *name,
vpiType mode, ...))
PLI_INT32 vpi_close PROTO_PARAMS((PLI_INT32 tool,
vpiType prop,
PLI_BYTE8* name));
PLI_INT32 vpi_load_init PROTO_PARAMS((vpiHandle objCollection,
vpiHandle scope,
PLI_INT32 level));
PLI_INT32 vpi_load PROTO_PARAMS((vpiHandle h));
PLI_INT32 vpi_unload PROTO_PARAMS((vpiHandle h));
vpiHandle vpi_create PROTO_PARAMS((vpiType prop,
vpiHandle h,
vpiHandle obj));
vpiHandle vpi_goto PROTO_PARAMS((vpiType prop,
vpiHandle obj,
p_vpi_time time_p,
PLI_INT32 *ret_code));
SHOULD BE:
/* load extension form for the reader extension */
PLI_INT32 vpi_load_extension(PLI_BYTE8 *extension_name,
PLI_BYTE8 *name,
PLI_INT32 mode, ...))
PLI_INT32 vpi_close(PLI_INT32 tool,
PLI_INT32 prop,
PLI_BYTE8* name);
PLI_INT32 vpi_load_init(vpiHandle objCollection,
vpiHandle scope,
PLI_INT32 level);
PLI_INT32 vpi_load(vpiHandle h);
PLI_INT32 vpi_unload(vpiHandle h);
vpiHandle vpi_create(PLI_INT32 prop,
vpiHandle h,
vpiHandle obj);
vpiHandle vpi_goto(PLI_INT32 prop,
vpiHandle obj,
p_vpi_time time_p,
PLI_INT32 *ret_code);
In Section 30.3.2.1,
DELETE the line that defines "vpiMember".
In Section 30.12,
FIND and CHANGE all strings matching "vpiType" to "PLI_INT32".
In Section 31.22,
In the diagram, CHANGE "vpiMembers" to "vpiMember"
This archive was generated by hypermail 2.1.8 : Wed Jan 19 2005 - 00:18:57 PST