Skip to content

Commit 93a5cf4

Browse files
committed
Pyverilog 0.7.0
1 parent 71138aa commit 93a5cf4

File tree

178 files changed

+664
-822
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

178 files changed

+664
-822
lines changed

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
*.pyc
2+
*.out
3+
parsetab.py

Makefile

Lines changed: 4 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,15 @@
11
.PHONY: all
22
all:
33
make -C ./vparser
4-
make -C ./definition_analyzer
5-
make -C ./definition_resolver
6-
make -C ./optimizer
7-
make -C ./tree_constructor
8-
make -C ./tree_walker
9-
make -C ./graph
10-
make -C ./subset
11-
make -C ./codegen
4+
make -C ./dataflow
125
make -C ./controlflow
13-
make -C ./active_condition
14-
make -C ./ast_to_code
6+
make -C ./ast_code_generator
157

168
.PHONY: clean
179
clean:
1810
make clean -C ./utils
1911
make clean -C ./vparser
20-
make clean -C ./definition_analyzer
21-
make clean -C ./definition_resolver
22-
make clean -C ./optimizer
23-
make clean -C ./tree_constructor
24-
make clean -C ./tree_walker
25-
make clean -C ./graph
26-
make clean -C ./subset
27-
make clean -C ./codegen
12+
make clean -C ./dataflow
2813
make clean -C ./controlflow
29-
make clean -C ./active_condition
30-
make clean -C ./ast_to_code
14+
make clean -C ./ast_code_generator
3115
rm -rf *.pyc __pycache__ *.out parsetab.py *.html

README.md

Lines changed: 13 additions & 14 deletions

__init__.py

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,6 @@
22
if sys.version_info[0] < 3:
33
import utils
44
import vparser
5-
import definition_analyzer
6-
import definition_resolver
7-
import optimizer
8-
import tree_constructor
9-
import tree_walker
10-
import graph
11-
import subset
12-
import codegen
5+
import dataflow
136
import controlflow
14-
import active_condition
15-
#import ast_to_code # Python 2.x does not support
7+
#import ast_code_generator # Python 2.7 does not support

active_condition/Makefile

Lines changed: 0 additions & 15 deletions
This file was deleted.

active_condition/__init__.py

Lines changed: 0 additions & 4 deletions
This file was deleted.

ast_code_generator/Makefile

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
PYTHON=python3.3
2+
#OPT=-m pdb
3+
4+
CODEGEN=codegen.py
5+
SRCS=../testcode/generate.v
6+
7+
.PHONY: codegen
8+
codegen:
9+
$(PYTHON) $(OPT) $(CODEGEN) $(SRCS)
10+
11+
.PHONY: clean
12+
clean:
13+
rm -rf *.pyc __pycache__ parsetab.py *.out
File renamed without changes.

ast_to_code/ast_to_code.py renamed to ast_code_generator/codegen.py

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#-------------------------------------------------------------------------------
2-
# ast_to_code.py
2+
# codegen.py
33
#
4-
# AST to Verilog HDL source code
4+
# Code Generator from AST to Verilog HDL source code
55
#
66
# Copyright (C) 2013, Shinya Takamaeda-Yamazaki
77
# License: Apache 2.0
@@ -11,7 +11,7 @@
1111
import os
1212
import math
1313
import re
14-
from jinja2 import Environment, PackageLoader
14+
from jinja2 import Environment, FileSystemLoader
1515

1616
sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) )
1717

@@ -36,9 +36,9 @@ def generic_visit(self, node):
3636
def getfilename(node):
3737
return node.__class__.__name__.lower() + '.txt'
3838

39-
class ASTtoCode(ConvertVisitor):
39+
class ASTCodeGenerator(ConvertVisitor):
4040
def __init__(self):
41-
self.env = Environment(loader=PackageLoader('pyverilog.ast_to_code','template'))
41+
self.env = Environment(loader=FileSystemLoader(DEFAULT_TEMPLATE_DIR))
4242

4343
def visit_Source(self, node):
4444
filename = getfilename(node)
@@ -939,9 +939,9 @@ def visit_SingleStatement(self, node):
939939
if __name__ == '__main__':
940940
from optparse import OptionParser
941941

942-
INFO = "Verilog AST to code converter with Pyverilog"
942+
INFO = "Code converter from AST"
943943
VERSION = pyverilog.utils.version.VERSION
944-
USAGE = "Usage: python ast_to_code.py file ..."
944+
USAGE = "Usage: python codegen.py file ..."
945945

946946
def showVersion():
947947
print(INFO)
@@ -970,6 +970,7 @@ def showVersion():
970970
ast = codeparser.parse()
971971
directives = codeparser.get_directives()
972972

973-
asttocode = ASTtoCode()
974-
rslt = asttocode.visit(ast)
973+
codegen = ASTCodeGenerator()
974+
rslt = codegen.visit(ast)
975975
print(rslt)
976+
File renamed without changes.

0 commit comments

Comments
 (0)