This PR modifies ExportVerilog to emit two state types (bit in general) for DPI import op. Furthermore, for specific bit width (8, 16, 32 and 64) it emits C-types (byte, shortint, int and longint).
This PR also rejects small integer types other than 8, 16, 32 and 64 bit width since otherwise we have to usebit but they are passed by references in DPI. So this PR defines the ABI as "small integers are passed by values, and larger integers are passed by references.
This PR modifies ExportVerilog to emit two state types (
bit
in general) for DPI import op. Furthermore, for specific bit width (8, 16, 32 and 64) it emits C-types (byte, shortint, int and longint).This PR also rejects small integer types other than 8, 16, 32 and 64 bit width since otherwise we have to use
bit
but they are passed by references in DPI. So this PR defines the ABI as "small integers are passed by values, and larger integers are passed by references.