16  static const string fielddelim{
"##"};
 
   17  static const string tokendelim{
"_"};
 
   18  static const string qualnamedelim(
":");
 
   19  static const string pbstring{
"()"};
 
   20  static const string arrsub{
"ARRAYSUBSCRIPT"};
 
   21  static const string noname{
"NONAME"};
 
   22  static const string sensop{
"<<"};
 
   23  static const string localstr{
"_local_"};
 
   24  static const string strsccore(
"sc_core__sc");
 
   26  static const int reset_async = 1;
 
   27  static const int reset_sync = 2;
 
   29  static inline bool isInitPB(
hNodep hp) {
 
   30    return (hp->
getopc() == hNode::hdlopsEnum::hBinop) &&
 
   34  static inline bool isInitSensitem(
hNodep hp) {
 
   35    return (hp->
getopc() == hNode::hdlopsEnum::hBinop) &&
 
   40    return (hop == hNode::hdlopsEnum::hMethodCall) ||
 
   41      (hop == hNode::hdlopsEnum::hBuiltinFunction);
 
   44  static inline int isThreadSensitem(
hNodep hp) {
 
   46      if (hp->
getname().find( 
"sc_core__sc_module__async_reset_signal_is")!=std::string::npos)
 
   48      else if (hp->
getname().find( 
"sc_core__sc_module__sync_reset_signal_is")!=std::string::npos)
 
   54  static inline bool isMethodCall(
hNodep hp) {
 
   55    return ((hp->
getopc() == hNode::hdlopsEnum::hVarAssign) &&
 
   60  static inline bool isEdge(
string &s) {
 
   69  static inline bool isSimEvent(
string &s) {
 
   70    return (s==
"value_changed_event");
 
   91    void PopRange(std::vector<for_info_t> &for_info);
 
 
std::vector< hNodep > child_list
void UnrollSensitem(hNodep &hp_orig, std::vector< for_info_t > &for_info)
void UnrollBinding(hNodep &hp_orig, std::vector< for_info_t > &for_info)
bool SetupSenslist(hNodep hp)
void SubstituteIndex(hNodep &hp, std::vector< for_info_t > &for_info)
hNodep ProcessCXXConstructorHcode(hNodep xconstructor)
void PushRange(hNodep &hp, std::vector< for_info_t > &for_info)
void CleanupInitHcode(hNodep &hp)
string ExtractModuleName(hNodep hp)
void GetSensLists(std::vector< hNodep > &hsens)
void PopRange(std::vector< for_info_t > &for_info)
void RemoveSCMethod(hNodep &hp)
hNodep HnodeDeepCopy(hNodep hp)
void HDLLoop(hNodep &hp, std::vector< for_info_t > &for_info)
std::vector< hNodep > hnewsens
Clang forward declarations.