Address requested changes - don't require non-$ name.
authorJim Lawson <ucbjrl@berkeley.edu>
Sat, 23 Feb 2019 00:06:10 +0000 (16:06 -0800)
committerJim Lawson <ucbjrl@berkeley.edu>
Sat, 23 Feb 2019 00:06:10 +0000 (16:06 -0800)
Suppress warning if name does begin with a `$`.
Fix hierachy tests so they have something to grep.
Announce hierarchy test types.

passes/hierarchy/hierarchy.cc
tests/various/hierarchy.sh
tests/various/run-test.sh

index f112e969e72331bfaead0a89cd1d0397b03f9663..cb54ffa584c228f4d55366edc76861d3bf4e854e 100644 (file)
@@ -525,14 +525,14 @@ int find_top_mod_score(Design *design, Module *module, dict<Module*, int> &db)
                                celltype = basic_cell_type(celltype);
                        }
                        // Is this cell a module instance?
-                       if (celltype[0] != '$') {
-                               auto instModule = design->module(celltype);
-                               // If there is no instance for this, issue a warning.
-                               if (instModule == NULL) {
+                       auto instModule = design->module(celltype);
+                       // If there is no instance for this, issue a warning.
+                       if (instModule == NULL) {
+                               //  but only if we're sure it is a reference to a module.
+                               if (celltype[0] != '$')
                                        log_warning("find_top_mod_score: no instance for %s.%s\n", celltype.c_str(), cell->name.c_str());
-                               } else {
-                                       score = max(score, find_top_mod_score(design, instModule, db) + 1);
-                               }
+                       } else {
+                               score = max(score, find_top_mod_score(design, instModule, db) + 1);
                        }
                }
                db[module] = score;
index dcb4dc056e67f251e21777b7089fc993d861f757..d33a247be4ba832407724ff03eca92dcc56ffc43 100644 (file)
@@ -3,7 +3,8 @@
 
 set -e
 
-../../yosys -q -s - <<- EOY 2>&1 | grep "Automatically selected TOP as design top module"
+echo -n "  TOP first - "
+../../yosys -s - <<- EOY | grep "Automatically selected TOP as design top module"
   read_verilog << EOV
     module TOP(a, y);
       input a;
@@ -21,7 +22,8 @@ set -e
   hierarchy -auto-top
 EOY
 
-../../yosys -q -s - <<- EOY 2>&1 | grep "Automatically selected TOP as design top module"
+echo -n "  TOP last - "
+../../yosys -s - <<- EOY | grep "Automatically selected TOP as design top module"
   read_verilog << EOV
     module aoi12(a, y);
       input a;
@@ -39,7 +41,8 @@ EOY
   hierarchy -auto-top
 EOY
 
-../../yosys -q -s - <<- EOY 2>&1 | grep "Automatically selected noTop as design top module."
+echo -n "  no explicit top - "
+../../yosys -s - <<- EOY | grep "Automatically selected noTop as design top module."
   read_verilog << EOV
     module aoi12(a, y);
       input a;
index 7cd1a8650f7b036119a730d1b55d07a88440a08e..d49553edef6272961e1cd154297f6468ce53eb59 100755 (executable)
@@ -9,6 +9,6 @@ shell_tests=$(echo *.sh | sed -e 's/run-test.sh//')
 if [ "$shell_tests" ]; then
     for s in $shell_tests; do
         echo "Running $s.."
-        bash $s >& ${s%.sh}.log
+        bash $s
     done
 fi