Merge pull request #370 from mcmasterg/maskpat

masks: tidy up
This commit is contained in:
John McMaster 2018-12-19 18:34:08 -08:00 committed by GitHub
commit d2cd93917b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 66 additions and 70 deletions

View File

@ -1,19 +1,2 @@
# read/write width is relatively slow to resolve
# Even slower with multi bit masks...
N := 8
include ../fuzzer.mk
database: build/segbits_bramx.db
build/segbits_bramx.rdb: $(SPECIMENS_OK)
${XRAY_SEGMATCH} -o build/segbits_bramx.rdb $(addsuffix /segdata_bram_[lr].txt,$(SPECIMENS))
build/segbits_bramx.db: build/segbits_bramx.rdb
${XRAY_DBFIXUP} --db-root build --zero-db bits.dbf --seg-fn-in $^ --seg-fn-out $@
pushdb:
${XRAY_MERGEDB} bram_l build/segbits_bramx.db
${XRAY_MERGEDB} bram_r build/segbits_bramx.db
.PHONY: database pushdb
N ?= 8
include ../bram.mk

View File

@ -1,29 +1,2 @@
N := 8
SPECIMENS := $(addprefix build/specimen_,$(shell seq -f '%03.0f' $(N)))
SPECIMENS_OK := $(addsuffix /OK,$(SPECIMENS))
database: $(SPECIMENS_OK)
${XRAY_SEGMATCH} -o build/segbits_bramx.block_ram.db $(addsuffix /segdata_bram_[lr].txt,$(SPECIMENS))
pushdb:
${XRAY_MERGEDB} bram_l.block_ram build/segbits_bramx.block_ram.db
${XRAY_MERGEDB} bram_r.block_ram build/segbits_bramx.block_ram.db
build:
mkdir build
$(SPECIMENS_OK): build
bash generate.sh $(subst /OK,,$@)
touch $@
run:
$(MAKE) clean
$(MAKE) database
$(MAKE) pushdb
touch run.ok
clean:
rm -rf build
.PHONY: database pushdb clean
N ?= 8
include ../bram.mk

View File

@ -1,16 +1,20 @@
N := 1
include ../fuzzer.mk
SEGDATAS=$(addsuffix /segdata_liob33.txt,$(SPECIMENS))
database: build/segbits_liob33.db
build/segbits_liob33.rdb:
${XRAY_SEGMATCH} -o build/segbits_liob33.rdb $(addsuffix /segdata_liob33.txt,$(SPECIMENS))
${XRAY_SEGMATCH} -o build/segbits_liob33.rdb $(SEGDATAS)
build/segbits_liob33.db: build/segbits_liob33.rdb
${XRAY_DBFIXUP} --db-root build --zero-db bits.dbf --seg-fn-in $^ --seg-fn-out $@
${XRAY_MASKMERGE} build/mask_liob33.db $(SEGDATAS)
pushdb:
${XRAY_MERGEDB} liob33 build/segbits_liob33.db
${XRAY_MERGEDB} mask_liob33 build/mask_liob33.db
.PHONY: database pushdb

View File

@ -3,17 +3,10 @@
N := 8
include ../fuzzer.mk
database: build/segbits_bramx.db
build/segbits_bramx.rdb: $(SPECIMENS_OK)
${XRAY_SEGMATCH} -o build/segbits_bramx.rdb $(addsuffix /segdata_bram_[lr].txt,$(SPECIMENS))
build/segbits_bramx.db: build/segbits_bramx.rdb
${XRAY_DBFIXUP} --db-root build --zero-db bits.dbf --seg-fn-in $^ --seg-fn-out $@
database: $(SPECIMENS_OK)
pushdb:
${XRAY_MERGEDB} bram_l build/segbits_bramx.db
${XRAY_MERGEDB} bram_r build/segbits_bramx.db
echo "FIXME" && false
.PHONY: database pushdb

View File

@ -3,17 +3,10 @@
N := 8
include ../fuzzer.mk
database: build/segbits_bramx.db
build/segbits_bramx.rdb: $(SPECIMENS_OK)
${XRAY_SEGMATCH} -o build/segbits_bramx.rdb $(addsuffix /segdata_bram_[lr].txt,$(SPECIMENS))
build/segbits_bramx.db: build/segbits_bramx.rdb
${XRAY_DBFIXUP} --db-root build --zero-db bits.dbf --seg-fn-in $^ --seg-fn-out $@
database: $(SPECIMENS_OK)
pushdb:
${XRAY_MERGEDB} bram_l build/segbits_bramx.db
${XRAY_MERGEDB} bram_r build/segbits_bramx.db
echo "FIXME" && false
.PHONY: database pushdb

View File

@ -7,10 +7,14 @@ database: $(SPECIMENS_OK)
${XRAY_SEGMATCH} -o build/segbits_dsp_l.db $(addsuffix /segdata_dsp_l_*.txt,$(SPECIMENS))
${XRAY_SEGMATCH} -o build/segbits_dsp_r.db $(addsuffix /segdata_dsp_r_*.txt,$(SPECIMENS))
${XRAY_DBFIXUP} --db-root build --clb-int
${XRAY_MASKMERGE} build/mask_dsp_l.db $(addsuffix /segdata_dsp_l_*.txt,$(SPECIMENS))
${XRAY_MASKMERGE} build/mask_dsp_r.db $(addsuffix /segdata_dsp_r_*.txt,$(SPECIMENS))
pushdb:
${XRAY_MERGEDB} dsp_l build/segbits_dsp_l.db
${XRAY_MERGEDB} dsp_r build/segbits_dsp_r.db
${XRAY_MERGEDB} mask_dsp_l build/segbits_dsp_l.db
${XRAY_MERGEDB} mask_dsp_r build/segbits_dsp_r.db
$(SPECIMENS_OK):
bash generate.sh $(subst /OK,,$@)

28
fuzzers/bram.mk Normal file
View File

@ -0,0 +1,28 @@
# read/write width is relatively slow to resolve
# Even slower with multi bit masks...
N ?= 8
DO_DBFIXUP?=N
include ../fuzzer.mk
database: build/segbits_bramx.db
build/segbits_bramx.rdb: $(SPECIMENS_OK)
${XRAY_SEGMATCH} -o build/segbits_bramx.rdb $(addsuffix /segdata_bram_[lr].txt,$(SPECIMENS))
build/segbits_bramx.db: build/segbits_bramx.rdb
ifeq ($(DO_DBFIXUP),Y)
${XRAY_DBFIXUP} --db-root build --zero-db bits.dbf --seg-fn-in $^ --seg-fn-out $@
else
cp $^ $@
endif
${XRAY_MASKMERGE} build/mask_bramx.db $(addsuffix /segdata_bram_[lr].txt,$(SPECIMENS))
pushdb:
${XRAY_MERGEDB} bram_l build/segbits_bramx.db
${XRAY_MERGEDB} bram_r build/segbits_bramx.db
${XRAY_MERGEDB} mask_bram_l build/mask_bramx.db
${XRAY_MERGEDB} mask_bram_r build/mask_bramx.db
.PHONY: database pushdb

View File

@ -1,32 +1,42 @@
N ?= 1
CLB_DBFIXUP ?=
# Fuzzer that can accept SLICEL data
# ie set to N if only for SLICEM
SLICEL ?= Y
include ../fuzzer.mk
database: build/segbits_clbx.db
build/segbits_clbx.rdb: $(SPECIMENS_OK)
ifeq ($(SLICEL),Y)
${XRAY_SEGMATCH} -o build/segbits_clbx.rdb $(addsuffix /segdata_clbl[lm]_[lr].txt,$(SPECIMENS))
SEGDATAS=$(addsuffix /segdata_clbl[lm]_[lr].txt,$(SPECIMENS))
else
${XRAY_SEGMATCH} -o build/segbits_clbx.rdb $(addsuffix /segdata_clblm_[lr].txt,$(SPECIMENS))
SEGDATAS=$(addsuffix /segdata_clblm_[lr].txt,$(SPECIMENS))
endif
build/segbits_clbx.rdb: $(SPECIMENS_OK)
${XRAY_SEGMATCH} -o build/segbits_clbx.rdb $(SEGDATAS)
build/segbits_clbx.db: build/segbits_clbx.rdb
ifeq ($(CLB_DBFIXUP),Y)
${XRAY_DBFIXUP} --db-root build --zero-db bits.dbf --seg-fn-in $^ --seg-fn-out $@
else
cp $^ $@
endif
${XRAY_MASKMERGE} build/mask_clbx.db $(SEGDATAS)
pushdb:
ifeq ($(SLICEL),Y)
${XRAY_MERGEDB} clbll_l build/segbits_clbx.db
${XRAY_MERGEDB} clbll_r build/segbits_clbx.db
${XRAY_MERGEDB} mask_clbll_l build/mask_clbx.db
${XRAY_MERGEDB} mask_clbll_r build/mask_clbx.db
endif
${XRAY_MERGEDB} clblm_l build/segbits_clbx.db
${XRAY_MERGEDB} clblm_r build/segbits_clbx.db
${XRAY_MERGEDB} mask_clblm_l build/mask_clbx.db
${XRAY_MERGEDB} mask_clblm_r build/mask_clbx.db
.PHONY: database pushdb

View File

@ -27,6 +27,10 @@ export FUZDIR=$(shell pwd)
database: $(SPECIMENS_OK)
${XRAY_SEGMATCH} $(SEGMATCH_FLAGS) -o build/segbits_int_l.db $(shell find build -name segdata_int_l.txt)
${XRAY_SEGMATCH} $(SEGMATCH_FLAGS) -o build/segbits_int_r.db $(shell find build -name segdata_int_r.txt)
${XRAY_MASKMERGE} build/mask_clbll_l.db $(shell find build -name segdata_int_l.txt)
${XRAY_MASKMERGE} build/mask_clbll_r.db $(shell find build -name segdata_int_r.txt)
${XRAY_MASKMERGE} build/mask_clblm_l.db $(shell find build -name segdata_int_l.txt)
${XRAY_MASKMERGE} build/mask_clblm_r.db $(shell find build -name segdata_int_r.txt)
# Keep a copy to track iter progress
# Also is pre-fixup, which drops and converts
cp build/segbits_int_l.db build/$(ITER)/segbits_int_l.db
@ -39,6 +43,10 @@ endif
pushdb:
${XRAY_MERGEDB} int_l build/segbits_int_l.db
${XRAY_MERGEDB} int_r build/segbits_int_r.db
${XRAY_MERGEDB} mask_clbll_l build/mask_clbll_l.db
${XRAY_MERGEDB} mask_clbll_r build/mask_clbll_r.db
${XRAY_MERGEDB} mask_clblm_l build/mask_clblm_l.db
${XRAY_MERGEDB} mask_clblm_r build/mask_clblm_r.db
$(SPECIMENS_OK): build/todo.txt
mkdir -p build/$(ITER)