mirror of
https://github.com/YosysHQ/yosys
synced 2025-06-14 18:06:16 +00:00
Merge remote-tracking branch 'origin/master' into eddie/muxpack
This commit is contained in:
commit
776d7cea6a
5 changed files with 61 additions and 3 deletions
13
.dockerignore
Normal file
13
.dockerignore
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
.editorconfig
|
||||||
|
.gitignore
|
||||||
|
.gitmodules
|
||||||
|
.github
|
||||||
|
.git
|
||||||
|
Dockerfile
|
||||||
|
README.md
|
||||||
|
manual
|
||||||
|
CodingReadme
|
||||||
|
CodeOfConduct
|
||||||
|
.travis
|
||||||
|
.travis.yml
|
||||||
|
|
33
Dockerfile
Normal file
33
Dockerfile
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
FROM ubuntu:18.04 as builder
|
||||||
|
LABEL author="Abdelrahman Hosny <abdelrahman.hosny@hotmail.com>"
|
||||||
|
ENV DEBIAN_FRONTEND=noninteractive
|
||||||
|
RUN apt-get update && apt-get install -y build-essential \
|
||||||
|
clang \
|
||||||
|
bison \
|
||||||
|
flex \
|
||||||
|
libreadline-dev \
|
||||||
|
gawk \
|
||||||
|
tcl-dev \
|
||||||
|
libffi-dev \
|
||||||
|
git \
|
||||||
|
pkg-config \
|
||||||
|
python3 && \
|
||||||
|
rm -rf /var/lib/apt/lists
|
||||||
|
COPY . /
|
||||||
|
RUN make && \
|
||||||
|
make install
|
||||||
|
|
||||||
|
FROM ubuntu:18.04
|
||||||
|
ENV DEBIAN_FRONTEND=noninteractive
|
||||||
|
RUN apt-get update && apt-get install -y libreadline-dev tcl-dev
|
||||||
|
|
||||||
|
COPY --from=builder /yosys /build/yosys
|
||||||
|
COPY --from=builder /yosys-abc /build/yosys-abc
|
||||||
|
COPY --from=builder /yosys-config /build/yosys-config
|
||||||
|
COPY --from=builder /yosys-filterlib /build/yosys-filterlib
|
||||||
|
COPY --from=builder /yosys-smtbmc /build/yosys-smtbmc
|
||||||
|
|
||||||
|
ENV PATH /build:$PATH
|
||||||
|
RUN useradd -m yosys
|
||||||
|
USER yosys
|
||||||
|
ENTRYPOINT ["yosys"]
|
|
@ -1023,6 +1023,8 @@ class MkVcd:
|
||||||
assert t >= self.t
|
assert t >= self.t
|
||||||
if t != self.t:
|
if t != self.t:
|
||||||
if self.t == -1:
|
if self.t == -1:
|
||||||
|
print("$version Generated by Yosys-SMTBMC $end", file=self.f)
|
||||||
|
print("$timescale 1ns $end", file=self.f)
|
||||||
print("$var integer 32 t smt_step $end", file=self.f)
|
print("$var integer 32 t smt_step $end", file=self.f)
|
||||||
print("$var event 1 ! smt_clock $end", file=self.f)
|
print("$var event 1 ! smt_clock $end", file=self.f)
|
||||||
|
|
||||||
|
|
|
@ -313,7 +313,7 @@ supply1 { return TOK_SUPPLY1; }
|
||||||
|
|
||||||
"$"(info|warning|error|fatal) {
|
"$"(info|warning|error|fatal) {
|
||||||
frontend_verilog_yylval.string = new std::string(yytext);
|
frontend_verilog_yylval.string = new std::string(yytext);
|
||||||
return TOK_ELAB_TASK;
|
return TOK_MSG_TASKS;
|
||||||
}
|
}
|
||||||
|
|
||||||
"$signed" { return TOK_TO_SIGNED; }
|
"$signed" { return TOK_TO_SIGNED; }
|
||||||
|
|
|
@ -133,7 +133,7 @@ struct specify_rise_fall {
|
||||||
}
|
}
|
||||||
|
|
||||||
%token <string> TOK_STRING TOK_ID TOK_CONSTVAL TOK_REALVAL TOK_PRIMITIVE
|
%token <string> TOK_STRING TOK_ID TOK_CONSTVAL TOK_REALVAL TOK_PRIMITIVE
|
||||||
%token <string> TOK_SVA_LABEL TOK_SPECIFY_OPER TOK_ELAB_TASK
|
%token <string> TOK_SVA_LABEL TOK_SPECIFY_OPER TOK_MSG_TASKS
|
||||||
%token TOK_ASSERT TOK_ASSUME TOK_RESTRICT TOK_COVER TOK_FINAL
|
%token TOK_ASSERT TOK_ASSUME TOK_RESTRICT TOK_COVER TOK_FINAL
|
||||||
%token ATTR_BEGIN ATTR_END DEFATTR_BEGIN DEFATTR_END
|
%token ATTR_BEGIN ATTR_END DEFATTR_BEGIN DEFATTR_END
|
||||||
%token TOK_MODULE TOK_ENDMODULE TOK_PARAMETER TOK_LOCALPARAM TOK_DEFPARAM
|
%token TOK_MODULE TOK_ENDMODULE TOK_PARAMETER TOK_LOCALPARAM TOK_DEFPARAM
|
||||||
|
@ -1881,6 +1881,16 @@ behavioral_stmt:
|
||||||
} opt_arg_list ';'{
|
} opt_arg_list ';'{
|
||||||
ast_stack.pop_back();
|
ast_stack.pop_back();
|
||||||
} |
|
} |
|
||||||
|
TOK_MSG_TASKS attr {
|
||||||
|
AstNode *node = new AstNode(AST_TCALL);
|
||||||
|
node->str = *$1;
|
||||||
|
delete $1;
|
||||||
|
ast_stack.back()->children.push_back(node);
|
||||||
|
ast_stack.push_back(node);
|
||||||
|
append_attr(node, $2);
|
||||||
|
} opt_arg_list ';'{
|
||||||
|
ast_stack.pop_back();
|
||||||
|
} |
|
||||||
attr TOK_BEGIN opt_label {
|
attr TOK_BEGIN opt_label {
|
||||||
AstNode *node = new AstNode(AST_BLOCK);
|
AstNode *node = new AstNode(AST_BLOCK);
|
||||||
ast_stack.back()->children.push_back(node);
|
ast_stack.back()->children.push_back(node);
|
||||||
|
@ -2177,7 +2187,7 @@ gen_stmt:
|
||||||
delete $6;
|
delete $6;
|
||||||
ast_stack.pop_back();
|
ast_stack.pop_back();
|
||||||
} |
|
} |
|
||||||
TOK_ELAB_TASK {
|
TOK_MSG_TASKS {
|
||||||
AstNode *node = new AstNode(AST_TECALL);
|
AstNode *node = new AstNode(AST_TECALL);
|
||||||
node->str = *$1;
|
node->str = *$1;
|
||||||
delete $1;
|
delete $1;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue