mirror of
https://github.com/verilator/verilator.git
synced 2025-01-01 04:07:34 +00:00
more vpi_get_str() (#2894)
This commit is contained in:
parent
47e7e21706
commit
a1cd55225c
@ -862,40 +862,40 @@ const char* VerilatedVpiError::strFromVpiObjType(PLI_INT32 vpiVal) VL_MT_SAFE {
|
||||
"vpiVarSelect",
|
||||
"vpiWait",
|
||||
"vpiWhile",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"vpiCondition",
|
||||
"vpiDelay",
|
||||
"vpiElseStmt",
|
||||
"vpiForIncStmt",
|
||||
"vpiForInitStmt",
|
||||
"vpiHighConn",
|
||||
"vpiLhs",
|
||||
"vpiIndex",
|
||||
"vpiLeftRange",
|
||||
"vpiLowConn",
|
||||
"vpiParent",
|
||||
"vpiRhs",
|
||||
"vpiRightRange",
|
||||
"vpiScope",
|
||||
"vpiSysTfCall",
|
||||
"vpiTchkDataTerm",
|
||||
"vpiTchkNotifier",
|
||||
"vpiTchkRefTerm",
|
||||
"vpiArgument",
|
||||
"vpiBit",
|
||||
"vpiDriver",
|
||||
"vpiInternalScope",
|
||||
"vpiLoad",
|
||||
"vpiModDataPathIn",
|
||||
"vpiModPathIn",
|
||||
"vpiModPathOut",
|
||||
"vpiOperand",
|
||||
"vpiPortInst",
|
||||
"vpiProcess",
|
||||
"vpiVariables",
|
||||
"vpiUse",
|
||||
"vpiExpr",
|
||||
"vpiPrimitive",
|
||||
"vpiStmt",
|
||||
"vpiAttribute",
|
||||
"vpiBitSelect",
|
||||
"vpiCallback",
|
||||
@ -910,27 +910,28 @@ const char* VerilatedVpiError::strFromVpiObjType(PLI_INT32 vpiVal) VL_MT_SAFE {
|
||||
"vpiRegArray",
|
||||
"vpiSwitchArray",
|
||||
"vpiUdpArray",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"vpiActiveTimeFormat",
|
||||
"vpiInTerm",
|
||||
"vpiInstanceArray",
|
||||
"vpiLocalDriver",
|
||||
"vpiLocalLoad",
|
||||
"vpiOutTerm",
|
||||
"vpiPorts",
|
||||
"vpiSimNet",
|
||||
"vpiTaskFunc",
|
||||
"vpiContAssignBit",
|
||||
"vpiNamedEventArray",
|
||||
"vpiIndexedPartSelect",
|
||||
"*undefined*",
|
||||
"*undefined*",
|
||||
"vpiBaseExpr",
|
||||
"vpiWidthExpr",
|
||||
"vpiGenScopeArray",
|
||||
"vpiGenScope",
|
||||
"vpiGenVar"
|
||||
"vpiGenVar",
|
||||
"vpiAutomatics"
|
||||
};
|
||||
// clang-format on
|
||||
if (VL_UNCOVERABLE(vpiVal < 0)) return names[0];
|
||||
return names[(vpiVal <= vpiGenVar) ? vpiVal : 0];
|
||||
return names[(vpiVal <= vpiAutomatics) ? vpiVal : 0];
|
||||
}
|
||||
const char* VerilatedVpiError::strFromVpiMethod(PLI_INT32 vpiVal) VL_MT_SAFE {
|
||||
// clang-format off
|
||||
@ -1121,11 +1122,141 @@ void VerilatedVpiError::selfTest() VL_MT_UNSAFE_ONE {
|
||||
SELF_CHECK_ENUM_STR(strFromVpiVal, vpiRawFourStateVal);
|
||||
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiAlways);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiAssignStmt);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiAssignment);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiBegin);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiCase);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiCaseItem);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiConstant);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiContAssign);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiDeassign);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiDefParam);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiDelayControl);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiDisable);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiEventControl);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiEventStmt);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiFor);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiForce);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiForever);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiFork);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiFuncCall);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiFunction);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiGate);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiIf);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiIfElse);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiInitial);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiIntegerVar);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiInterModPath);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiIterator);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiIODecl);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiMemory);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiMemoryWord);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiModPath);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiModule);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiNamedBegin);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiNamedEvent);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiNamedFork);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiNet);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiNetBit);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiNullStmt);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiOperation);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiParamAssign);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiParameter);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiPartSelect);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiPathTerm);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiPort);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiPortBit);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiPrimTerm);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiRealVar);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiReg);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiRegBit);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiRelease);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiRepeat);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiRepeatControl);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiSchedEvent);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiSpecParam);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiSwitch);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiSysFuncCall);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiSysTaskCall);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiTableEntry);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiTask);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiTaskCall);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiTchk);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiTchkTerm);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiTimeVar);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiTimeQueue);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiUdp);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiUdpDefn);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiUserSystf);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiVarSelect);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiWait);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiWhile);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiCondition);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiDelay);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiElseStmt);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiForIncStmt);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiForInitStmt);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiHighConn);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiLhs);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiIndex);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiLeftRange);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiLowConn);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiParent);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiRhs);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiRightRange);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiScope);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiSysTfCall);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiTchkDataTerm);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiTchkNotifier);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiTchkRefTerm);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiArgument);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiBit);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiDriver);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiInternalScope);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiLoad);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiModDataPathIn);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiModPathIn);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiModPathOut);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiOperand);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiPortInst);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiProcess);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiVariables);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiUse);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiExpr);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiPrimitive);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiStmt);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiAttribute);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiBitSelect);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiCallback);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiDelayTerm);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiDelayDevice);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiFrame);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiGateArray);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiModuleArray);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiPrimitiveArray);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiNetArray);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiRange);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiRegArray);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiSwitchArray);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiUdpArray);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiActiveTimeFormat);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiInTerm);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiInstanceArray);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiLocalDriver);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiLocalLoad);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiOutTerm);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiPorts);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiSimNet);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiTaskFunc);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiContAssignBit);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiNamedEventArray);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiIndexedPartSelect);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiBaseExpr);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiWidthExpr);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiGenScopeArray);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiGenScope);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiGenVar);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiObjType, vpiAutomatics);
|
||||
|
||||
SELF_CHECK_ENUM_STR(strFromVpiMethod, vpiCondition);
|
||||
SELF_CHECK_ENUM_STR(strFromVpiMethod, vpiStmt);
|
||||
|
Loading…
Reference in New Issue
Block a user