Skip to content

Commit cb7ecad

Browse files
committed
ast_code_generator: Redundant spaces are removed from the text results of Width, Length, and Partselect.
1 parent e05ef8c commit cb7ecad

File tree

6 files changed

+16
-13
lines changed

6 files changed

+16
-13
lines changed

pyverilog/ast_code_generator/codegen.py

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,9 @@ def del_paren(s):
6161
return s[1:-1]
6262
return s
6363

64+
def del_space(s):
65+
return s.replace(' ', '')
66+
6467
class ASTCodeGenerator(ConvertVisitor):
6568
def __init__(self, indentsize=2):
6669
self.env = Environment(loader=FileSystemLoader(DEFAULT_TEMPLATE_DIR))
@@ -133,8 +136,8 @@ def visit_Width(self, node):
133136
filename = getfilename(node)
134137
template = self.env.get_template(filename)
135138
template_dict = {
136-
'msb' : del_paren(self.visit(node.msb)),
137-
'lsb' : del_paren(self.visit(node.lsb)),
139+
'msb' : del_space(del_paren(self.visit(node.msb))),
140+
'lsb' : del_space(del_paren(self.visit(node.lsb))),
138141
}
139142
rslt = template.render(template_dict)
140143
return rslt
@@ -143,8 +146,8 @@ def visit_Length(self, node):
143146
filename = getfilename(node)
144147
template = self.env.get_template(filename)
145148
template_dict = {
146-
'msb' : del_paren(self.visit(node.msb)),
147-
'lsb' : del_paren(self.visit(node.lsb)),
149+
'msb' : del_space(del_paren(self.visit(node.msb))),
150+
'lsb' : del_space(del_paren(self.visit(node.lsb))),
148151
}
149152
rslt = template.render(template_dict)
150153
return rslt
@@ -417,8 +420,8 @@ def visit_Partselect(self, node):
417420
template = self.env.get_template(filename)
418421
template_dict = {
419422
'var' : self.visit(node.var),
420-
'msb' : del_paren(self.visit(node.msb)),
421-
'lsb' : del_paren(self.visit(node.lsb)),
423+
'msb' : del_space(del_paren(self.visit(node.msb))),
424+
'lsb' : del_space(del_paren(self.visit(node.lsb))),
422425
}
423426
rslt = template.render(template_dict)
424427
return rslt
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
[{{ msb }} : {{ lsb }}]
1+
[{{ msb }}:{{ lsb }}]
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{{ var }}[{{ msb }} : {{ lsb }}]
1+
{{ var }}[{{ msb }}:{{ lsb }}]
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
[{{ msb }} : {{ lsb }}]
1+
[{{ msb }}:{{ lsb }}]

tests/ast_code_generator_test/test_ast_always.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,11 @@
1515
(
1616
input CLK,
1717
input RST,
18-
output [7 : 0] led
18+
output [7:0] led
1919
);
2020
21-
reg [DATAWID - 1 : 0] count;
22-
assign led = count[DATAWID - 1 : DATAWID - 8];
21+
reg [DATAWID-1:0] count;
22+
assign led = count[DATAWID-1:DATAWID-8];
2323
2424
always @(posedge CLK) begin
2525
if(RST) begin

tests/ast_code_generator_test/test_ast_assign.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
(
1313
input CLK,
1414
input RST,
15-
output [7 : 0] led
15+
output [7:0] led
1616
);
1717
1818
assign led = 8;

0 commit comments

Comments
 (0)