mirror of
https://github.com/YosysHQ/yosys
synced 2026-05-29 13:26:31 +00:00
Migrate build system to CMake
See #5895 for details. This commit does not include CI or documentation changes.
This commit is contained in:
parent
9d0cdb8551
commit
9b087b4aa7
207 changed files with 5202 additions and 2294 deletions
1
passes/opt/.gitignore
vendored
1
passes/opt/.gitignore
vendored
|
|
@ -1 +0,0 @@
|
|||
/peepopt*_pm.h
|
||||
96
passes/opt/CMakeLists.txt
Normal file
96
passes/opt/CMakeLists.txt
Normal file
|
|
@ -0,0 +1,96 @@
|
|||
add_subdirectory(opt_clean)
|
||||
|
||||
yosys_pass(opt_merge
|
||||
opt_merge.cc
|
||||
)
|
||||
yosys_pass(opt_mem_widen
|
||||
opt_mem_widen.cc
|
||||
)
|
||||
yosys_pass(opt_muxtree
|
||||
opt_muxtree.cc
|
||||
)
|
||||
yosys_pass(opt_reduce
|
||||
opt_reduce.cc
|
||||
)
|
||||
yosys_pass(opt_dff
|
||||
opt_dff.cc
|
||||
REQUIRES
|
||||
simplemap
|
||||
)
|
||||
yosys_pass(opt_share
|
||||
opt_share.cc
|
||||
)
|
||||
yosys_pass(opt_expr
|
||||
opt_expr.cc
|
||||
)
|
||||
yosys_pass(opt_hier
|
||||
opt_hier.cc
|
||||
)
|
||||
yosys_pass(opt
|
||||
opt.cc
|
||||
REQUIRES
|
||||
opt_clean
|
||||
opt_dff
|
||||
opt_expr
|
||||
opt_hier
|
||||
opt_merge
|
||||
opt_muxtree
|
||||
opt_reduce
|
||||
opt_share
|
||||
)
|
||||
|
||||
yosys_pass(opt_mem
|
||||
opt_mem.cc
|
||||
)
|
||||
yosys_pass(opt_mem_feedback
|
||||
opt_mem_feedback.cc
|
||||
)
|
||||
yosys_pass(opt_mem_priority
|
||||
opt_mem_priority.cc
|
||||
)
|
||||
|
||||
yosys_pass(share
|
||||
share.cc
|
||||
)
|
||||
yosys_pass(wreduce
|
||||
wreduce.cc
|
||||
)
|
||||
yosys_pass(opt_demorgan
|
||||
opt_demorgan.cc
|
||||
)
|
||||
yosys_pass(rmports
|
||||
rmports.cc
|
||||
)
|
||||
yosys_pass(opt_lut
|
||||
opt_lut.cc
|
||||
)
|
||||
yosys_pass(opt_lut_ins
|
||||
opt_lut_ins.cc
|
||||
)
|
||||
yosys_pass(opt_ffinv
|
||||
opt_ffinv.cc
|
||||
)
|
||||
yosys_pass(pmux2shiftx
|
||||
pmux2shiftx.cc
|
||||
)
|
||||
yosys_pass(muxpack
|
||||
muxpack.cc
|
||||
)
|
||||
yosys_pass(opt_balance_tree
|
||||
opt_balance_tree.cc
|
||||
)
|
||||
|
||||
pmgen_command(peepopt
|
||||
peepopt_shiftmul_right.pmg
|
||||
peepopt_shiftmul_left.pmg
|
||||
peepopt_shiftadd.pmg
|
||||
peepopt_muldiv.pmg
|
||||
peepopt_muldiv_c.pmg
|
||||
peepopt_formal_clockgateff.pmg
|
||||
PREFIX
|
||||
peepopt
|
||||
)
|
||||
yosys_pass(peepopt
|
||||
peepopt.cc
|
||||
${PMGEN_peepopt_OUTPUT}
|
||||
)
|
||||
|
|
@ -1,43 +0,0 @@
|
|||
|
||||
OBJS += passes/opt/opt.o
|
||||
OBJS += passes/opt/opt_merge.o
|
||||
OBJS += passes/opt/opt_mem.o
|
||||
OBJS += passes/opt/opt_mem_feedback.o
|
||||
OBJS += passes/opt/opt_mem_priority.o
|
||||
OBJS += passes/opt/opt_mem_widen.o
|
||||
OBJS += passes/opt/opt_muxtree.o
|
||||
OBJS += passes/opt/opt_reduce.o
|
||||
OBJS += passes/opt/opt_dff.o
|
||||
OBJS += passes/opt/opt_share.o
|
||||
OBJS += passes/opt/opt_expr.o
|
||||
OBJS += passes/opt/opt_hier.o
|
||||
|
||||
ifneq ($(SMALL),1)
|
||||
OBJS += passes/opt/share.o
|
||||
OBJS += passes/opt/wreduce.o
|
||||
OBJS += passes/opt/opt_demorgan.o
|
||||
OBJS += passes/opt/rmports.o
|
||||
OBJS += passes/opt/opt_lut.o
|
||||
OBJS += passes/opt/opt_lut_ins.o
|
||||
OBJS += passes/opt/opt_ffinv.o
|
||||
OBJS += passes/opt/pmux2shiftx.o
|
||||
OBJS += passes/opt/muxpack.o
|
||||
OBJS += passes/opt/opt_balance_tree.o
|
||||
|
||||
OBJS += passes/opt/peepopt.o
|
||||
GENFILES += passes/opt/peepopt_pm.h
|
||||
passes/opt/peepopt.o: passes/opt/peepopt_pm.h
|
||||
$(eval $(call add_extra_objs,passes/opt/peepopt_pm.h))
|
||||
|
||||
PEEPOPT_PATTERN = passes/opt/peepopt_shiftmul_right.pmg
|
||||
PEEPOPT_PATTERN += passes/opt/peepopt_shiftmul_left.pmg
|
||||
PEEPOPT_PATTERN += passes/opt/peepopt_shiftadd.pmg
|
||||
PEEPOPT_PATTERN += passes/opt/peepopt_muldiv.pmg
|
||||
PEEPOPT_PATTERN += passes/opt/peepopt_muldiv_c.pmg
|
||||
PEEPOPT_PATTERN += passes/opt/peepopt_formal_clockgateff.pmg
|
||||
|
||||
passes/opt/peepopt_pm.h: passes/pmgen/pmgen.py $(PEEPOPT_PATTERN)
|
||||
$(P) mkdir -p $(dir $@) && $(PYTHON_EXECUTABLE) $< -o $@ -p peepopt $(filter-out $<,$^)
|
||||
endif
|
||||
|
||||
include $(YOSYS_SRC)/passes/opt/opt_clean/Makefile.inc
|
||||
11
passes/opt/opt_clean/CMakeLists.txt
Normal file
11
passes/opt/opt_clean/CMakeLists.txt
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
yosys_pass(opt_clean
|
||||
cells_all.cc
|
||||
cells_temp.cc
|
||||
wires.cc
|
||||
inits.cc
|
||||
opt_clean.cc
|
||||
opt_clean.h
|
||||
keep_cache.h
|
||||
PROVIDES
|
||||
clean
|
||||
)
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
OPT_CLEAN_OBJS =
|
||||
OPT_CLEAN_OBJS += passes/opt/opt_clean/cells_all.o
|
||||
OPT_CLEAN_OBJS += passes/opt/opt_clean/cells_temp.o
|
||||
OPT_CLEAN_OBJS += passes/opt/opt_clean/wires.o
|
||||
OPT_CLEAN_OBJS += passes/opt/opt_clean/inits.o
|
||||
OPT_CLEAN_OBJS += passes/opt/opt_clean/opt_clean.o
|
||||
|
||||
$(OPT_CLEAN_OBJS): passes/opt/opt_clean/opt_clean.h
|
||||
|
||||
OBJS += $(OPT_CLEAN_OBJS)
|
||||
Loading…
Add table
Add a link
Reference in a new issue