Skip to content

Commit 75dff5a

Browse files
authored
Merge branch 'YosysHQ:main' into master
2 parents c482bce + 71feb2a commit 75dff5a

File tree

152 files changed

+2736
-898
lines changed

Some content is hidden

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

152 files changed

+2736
-898
lines changed

.github/workflows/extra-builds.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ on:
55
push:
66
branches:
77
- main
8+
merge_group:
89
# test PRs
910
pull_request:
1011
# allow triggering tests, ignores skip check
@@ -37,7 +38,7 @@ jobs:
3738
persist-credentials: false
3839
- run: sudo apt-get install libfl-dev
3940
- name: Build
40-
run: make vcxsrc YOSYS_VER=latest
41+
run: make vcxsrc YOSYS_COMPILER="Visual Studio" VCX_DIR_NAME=yosys-win32-vcxsrc-latest
4142
- uses: actions/upload-artifact@v4
4243
with:
4344
name: vcxsrc

.github/workflows/prepare-docs.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name: Build docs artifact with Verific
22

3-
on: [push, pull_request]
3+
on: [push, pull_request, merge_group]
44

55
jobs:
66
check_docs_rebuild:

.github/workflows/test-build.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ on:
55
push:
66
branches:
77
- main
8+
merge_group:
89
# test PRs
910
pull_request:
1011
# allow triggering tests, ignores skip check

.github/workflows/test-compile.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ on:
55
push:
66
branches:
77
- main
8+
merge_group:
89
# test PRs
910
pull_request:
1011
# allow triggering tests, ignores skip check

.github/workflows/test-sanitizers.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ on:
55
push:
66
branches:
77
- main
8+
merge_group:
89
# ignore PRs due to time needed
910
# allow triggering tests, ignores skip check
1011
workflow_dispatch:

.github/workflows/test-verific.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ on:
55
push:
66
branches:
77
- main
8+
merge_group:
89
# test PRs
910
pull_request:
1011
# allow triggering tests, ignores skip check

CHANGELOG

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,22 @@
22
List of major changes and improvements between releases
33
=======================================================
44

5-
Yosys 0.60 .. Yosys 0.61-dev
5+
Yosys 0.61 .. Yosys 0.62-dev
66
--------------------------
77

8+
Yosys 0.60 .. Yosys 0.61
9+
--------------------------
10+
* Various
11+
- Removed "cover" pass for coverage tracking.
12+
- Avoid merging formal properties with "opt_merge" pass.
13+
- Parallelize "opt_merge" pass.
14+
15+
* New commands and options
16+
- Added "design_equal" pass to support fuzz-test comparison.
17+
- Added "lut2bmux" pass to convert $lut to $bmux.
18+
- Added "-legalize" option to "read_rtlil" pass to prevent
19+
semantic errors.
20+
821
Yosys 0.59 .. Yosys 0.60
922
--------------------------
1023
* Various

COPYING

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
ISC License
22

3-
Copyright (C) 2012 - 2025 Claire Xenia Wolf <claire@yosyshq.com>
3+
Copyright (C) 2012 - 2026 Claire Xenia Wolf <claire@yosyshq.com>
44

55
Permission to use, copy, modify, and/or distribute this software for any
66
purpose with or without fee is hereby granted, provided that the above

Makefile

Lines changed: 19 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ ENABLE_VERIFIC_HIER_TREE := 1
2121
ENABLE_VERIFIC_YOSYSHQ_EXTENSIONS := 0
2222
ENABLE_VERIFIC_EDIF := 0
2323
ENABLE_VERIFIC_LIBERTY := 0
24-
ENABLE_COVER := 1
2524
ENABLE_LIBYOSYS := 0
2625
ENABLE_LIBYOSYS_STATIC := 0
2726
ENABLE_ZLIB := 1
@@ -162,7 +161,7 @@ ifeq ($(OS), Haiku)
162161
CXXFLAGS += -D_DEFAULT_SOURCE
163162
endif
164163

165-
YOSYS_VER := 0.60+0
164+
YOSYS_VER := 0.61+0
166165
YOSYS_MAJOR := $(shell echo $(YOSYS_VER) | cut -d'.' -f1)
167166
YOSYS_MINOR := $(shell echo $(YOSYS_VER) | cut -d'.' -f2 | cut -d'+' -f1)
168167
YOSYS_COMMIT := $(shell echo $(YOSYS_VER) | cut -d'+' -f2)
@@ -178,14 +177,16 @@ CXXFLAGS += -DYOSYS_VER=\\"$(YOSYS_VER)\\" \
178177
TARBALL_GIT_REV := $(shell cat $(YOSYS_SRC)/.gitcommit)
179178
ifneq ($(findstring Format:,$(TARBALL_GIT_REV)),)
180179
GIT_REV := $(shell GIT_DIR=$(YOSYS_SRC)/.git git rev-parse --short=9 HEAD || echo UNKNOWN)
180+
GIT_DIRTY := $(shell GIT_DIR=$(YOSYS_SRC)/.git git diff --exit-code --quiet 2>/dev/null; if [ $$? -ne 0 ]; then echo "-dirty"; fi)
181181
else
182182
GIT_REV := $(TARBALL_GIT_REV)
183+
GIT_DIRTY := ""
183184
endif
184185

185186
OBJS = kernel/version_$(GIT_REV).o
186187

187188
bumpversion:
188-
sed -i "/^YOSYS_VER := / s/+[0-9][0-9]*$$/+`git log --oneline 5bafeb7.. | wc -l`/;" Makefile
189+
sed -i "/^YOSYS_VER := / s/+[0-9][0-9]*$$/+`git log --oneline 5ae48ee.. | wc -l`/;" Makefile
189190

190191
ABCMKARGS = CC="$(CXX)" CXX="$(CXX)" ABC_USE_LIBSTDCXX=1 ABC_USE_NAMESPACE=abc VERBOSE=$(Q)
191192

@@ -249,9 +250,6 @@ ifneq ($(SANITIZER),)
249250
$(info [Clang Sanitizer] $(SANITIZER))
250251
CXXFLAGS += -g -O1 -fno-omit-frame-pointer -fno-optimize-sibling-calls -fsanitize=$(SANITIZER)
251252
LINKFLAGS += -g -fsanitize=$(SANITIZER)
252-
ifneq ($(findstring address,$(SANITIZER)),)
253-
ENABLE_COVER := 0
254-
endif
255253
ifneq ($(findstring memory,$(SANITIZER)),)
256254
CXXFLAGS += -fPIE -fsanitize-memory-track-origins
257255
LINKFLAGS += -fPIE -fsanitize-memory-track-origins
@@ -548,10 +546,6 @@ LIBS_VERIFIC += -Wl,--whole-archive $(patsubst %,$(VERIFIC_DIR)/%/*-linux.a,$(VE
548546
endif
549547
endif
550548

551-
ifeq ($(ENABLE_COVER),1)
552-
CXXFLAGS += -DYOSYS_ENABLE_COVER
553-
endif
554-
555549
ifeq ($(ENABLE_CCACHE),1)
556550
CXX := ccache $(CXX)
557551
else
@@ -651,8 +645,6 @@ $(eval $(call add_include_file,libs/sha1/sha1.h))
651645
$(eval $(call add_include_file,libs/json11/json11.hpp))
652646
$(eval $(call add_include_file,passes/fsm/fsmdata.h))
653647
$(eval $(call add_include_file,passes/techmap/libparse.h))
654-
$(eval $(call add_include_file,frontends/ast/ast.h))
655-
$(eval $(call add_include_file,frontends/ast/ast_binding.h))
656648
$(eval $(call add_include_file,frontends/blif/blifparse.h))
657649
$(eval $(call add_include_file,backends/rtlil/rtlil_backend.h))
658650

@@ -729,7 +721,6 @@ OBJS += passes/hierarchy/hierarchy.o
729721
OBJS += passes/cmds/select.o
730722
OBJS += passes/cmds/show.o
731723
OBJS += passes/cmds/stat.o
732-
OBJS += passes/cmds/cover.o
733724
OBJS += passes/cmds/design.o
734725
OBJS += passes/cmds/plugin.o
735726

@@ -800,12 +791,13 @@ endif
800791
$(Q) mkdir -p $(dir $@)
801792
$(P) $(CXX) -o $@ -c $(CPPFLAGS) $(CXXFLAGS) $<
802793

803-
YOSYS_VER_STR := Yosys $(YOSYS_VER) (git sha1 $(GIT_REV), $(notdir $(CXX)) $(shell \
804-
$(CXX) --version | tr ' ()' '\n' | grep '^[0-9]' | head -n1) $(filter -f% -m% -O% -DNDEBUG,$(CXXFLAGS)))
794+
YOSYS_GIT_STR := $(GIT_REV)$(GIT_DIRTY)
795+
YOSYS_COMPILER := $(notdir $(CXX)) $(shell $(CXX) --version | tr ' ()' '\n' | grep '^[0-9]' | head -n1) $(filter -f% -m% -O% -DNDEBUG,$(CXXFLAGS))
796+
YOSYS_VER_STR := Yosys $(YOSYS_VER) (git sha1 $(YOSYS_GIT_STR), $(YOSYS_COMPILER))
805797

806798
kernel/version_$(GIT_REV).cc: $(YOSYS_SRC)/Makefile
807799
$(P) rm -f kernel/version_*.o kernel/version_*.d kernel/version_*.cc
808-
$(Q) mkdir -p kernel && echo "namespace Yosys { extern const char *yosys_version_str; const char *yosys_version_str=\"$(YOSYS_VER_STR)\"; }" > kernel/version_$(GIT_REV).cc
800+
$(Q) mkdir -p kernel && echo "namespace Yosys { extern const char *yosys_version_str; const char *yosys_version_str=\"$(YOSYS_VER_STR)\"; const char *yosys_git_hash_str=\"$(YOSYS_GIT_STR)\"; }" > kernel/version_$(GIT_REV).cc
809801

810802
ifeq ($(ENABLE_VERIFIC),1)
811803
CXXFLAGS_NOVERIFIC = $(foreach v,$(CXXFLAGS),$(if $(findstring $(VERIFIC_DIR),$(v)),,$(v)))
@@ -1058,7 +1050,9 @@ ifeq ($(ENABLE_PYOSYS),1)
10581050
$(INSTALL_SUDO) cp libyosys.so $(DESTDIR)$(PYTHON_DESTDIR)/$(subst -,_,$(PROGRAM_PREFIX))pyosys/libyosys.so
10591051
$(INSTALL_SUDO) cp -r share $(DESTDIR)$(PYTHON_DESTDIR)/$(subst -,_,$(PROGRAM_PREFIX))pyosys
10601052
ifeq ($(ENABLE_ABC),1)
1061-
$(INSTALL_SUDO) cp yosys-abc $(DESTDIR)$(PYTHON_DESTDIR)/$(subst -,_,$(PROGRAM_PREFIX))pyosys/yosys-abc
1053+
ifeq ($(ABCEXTERNAL),)
1054+
$(INSTALL_SUDO) cp $(PROGRAM_PREFIX)yosys-abc$(EXE) $(DESTDIR)$(PYTHON_DESTDIR)/$(subst -,_,$(PROGRAM_PREFIX))pyosys/yosys-abc$(EXE)
1055+
endif
10621056
endif
10631057
endif
10641058
endif
@@ -1209,15 +1203,17 @@ qtcreator:
12091203
{ echo .; find backends frontends kernel libs passes -type f \( -name '*.h' -o -name '*.hh' \) -printf '%h\n' | sort -u; } > qtcreator.includes
12101204
touch qtcreator.creator
12111205

1212-
vcxsrc: $(GENFILES) $(EXTRA_TARGETS)
1213-
rm -rf yosys-win32-vcxsrc-$(YOSYS_VER){,.zip}
1206+
VCX_DIR_NAME := yosys-win32-vcxsrc-$(YOSYS_VER)
1207+
vcxsrc: $(GENFILES) $(EXTRA_TARGETS) kernel/version_$(GIT_REV).cc
1208+
rm -rf $(VCX_DIR_NAME){,.zip}
1209+
cp -f kernel/version_$(GIT_REV).cc kernel/version.cc
12141210
set -e; for f in `ls $(filter %.cc %.cpp,$(GENFILES)) $(addsuffix .cc,$(basename $(OBJS))) $(addsuffix .cpp,$(basename $(OBJS))) 2> /dev/null`; do \
12151211
echo "Analyse: $$f" >&2; cpp -std=c++17 -MM -I. -D_YOSYS_ $$f; done | sed 's,.*:,,; s,//*,/,g; s,/[^/]*/\.\./,/,g; y, \\,\n\n,;' | grep '^[^/]' | sort -u | grep -v kernel/version_ > srcfiles.txt
12161212
echo "libs/fst/fst_win_unistd.h" >> srcfiles.txt
1217-
bash misc/create_vcxsrc.sh yosys-win32-vcxsrc $(YOSYS_VER) $(GIT_REV)
1218-
echo "namespace Yosys { extern const char *yosys_version_str; const char *yosys_version_str=\"Yosys (Version Information Unavailable)\"; }" > kernel/version.cc
1219-
zip yosys-win32-vcxsrc-$(YOSYS_VER)/genfiles.zip $(GENFILES) kernel/version.cc
1220-
zip -r yosys-win32-vcxsrc-$(YOSYS_VER).zip yosys-win32-vcxsrc-$(YOSYS_VER)/
1213+
echo "kernel/version.cc" >> srcfiles.txt
1214+
bash misc/create_vcxsrc.sh $(VCX_DIR_NAME) $(YOSYS_VER)
1215+
zip $(VCX_DIR_NAME)/genfiles.zip $(GENFILES) kernel/version.cc
1216+
zip -r $(VCX_DIR_NAME).zip $(VCX_DIR_NAME)/
12211217
rm -f srcfiles.txt kernel/version.cc
12221218

12231219
config-clean: clean

abc

Submodule abc updated 173 files

0 commit comments

Comments
 (0)