Refactor tests

This commit is contained in:
2025-11-06 17:23:09 +01:00
parent a42235b6fd
commit 2ee9cc66b9

View File

@@ -42,7 +42,7 @@ SRC_SW := $(shell find $(BENCH_DIR) -name '*.s' -type f | sed 's/^bench\///g')
SRC_SW += $(wildcard $(BENCH_DIR)/*.c) # Contient tous les .s et .c du projet SRC_SW += $(wildcard $(BENCH_DIR)/*.c) # Contient tous les .s et .c du projet
SRC_TESTS_SW := $(shell find $(BENCH_DIR)/tests -name '*.s' -type f | sed 's/^bench\///g') SRC_TESTS_SW := $(shell find $(BENCH_DIR)/tests -name '*.s' -type f | sed 's/^bench\///g')
MEM = $(addprefix $(MEM_DIR)/, $(addsuffix .mem, $(basename $(SRC_SW)))) # Tous les .mem du projet MEM = $(addprefix $(MEM_DIR)/, $(addsuffix .mem, $(basename $(SRC_SW)))) # Tous les .mem du projet
MEM_TESTS = $(addprefix $(MEM_DIR)/, $(addsuffix .mem, $(basename $(SRC_TESTS_SW)))) # Tous les .mem du projet MEM_TESTS = $(addprefix test-, $(addprefix $(MEM_DIR)/, $(addsuffix .mem, $(basename $(SRC_TESTS_SW))))) # Tous les .mem du projet en test
PREFIX := $(shell command -v riscv64-unknown-elf-gcc >/dev/null 2>&1 && echo riscv64-unknown-elf- || echo /matieres/3MMFMN/riscv32/bin/riscv32-unknown-elf-) PREFIX := $(shell command -v riscv64-unknown-elf-gcc >/dev/null 2>&1 && echo riscv64-unknown-elf- || echo /matieres/3MMFMN/riscv32/bin/riscv32-unknown-elf-)
CC := $(PREFIX)gcc CC := $(PREFIX)gcc
OBJDUMP := $(PREFIX)objdump OBJDUMP := $(PREFIX)objdump
@@ -56,8 +56,7 @@ ODFLAGS :=-j .text -j .rodata -j .data -s
.PRECIOUS: $(MEM_DIR)/%.elf .PRECIOUS: $(MEM_DIR)/%.elf
.PHONY: synthese fpga clean compile autotest simulation force .PHONY: synthese fpga clean compile autotest simulation
force:
compile: $(MEM) compile: $(MEM)
$(MEM_DIR): $(MEM_DIR):
@@ -73,9 +72,8 @@ $(MEM_DIR)/%.elf: $(BENCH_DIR)/%.s |$(MEM_DIR)
$(MEM_DIR)/%.mem: $(MEM_DIR)/%.elf |$(MEM_DIR) $(MEM_DIR)/%.mem: $(MEM_DIR)/%.elf |$(MEM_DIR)
$(OBJDUMP) $(ODFLAGS) $< | awk -f $(OBTOMEM) | awk -f common/fix_mem.awk > $@ $(OBJDUMP) $(ODFLAGS) $< | awk -f $(OBTOMEM) | awk -f common/fix_mem.awk > $@
$(MEM_DIR)/tests/%.mem: $(MEM_DIR)/tests/%.elf force |$(MEM_DIR) test-$(MEM_DIR)/%.mem: $(MEM_DIR)/%.mem |$(MEM_DIR)
$(OBJDUMP) $(ODFLAGS) $< | awk -f $(OBTOMEM) | awk -f common/fix_mem.awk > $@ @PROG="$(shell echo $< | sed "s/^bench\/mem\///g" | sed "s/\.mem$$//g")" PROOT=$(shell pwd) ./mill TPchisel.test.testOnly $(TOP_REP).$(TOP_TEST) -- -z "$(shell echo $< | sed "s/^bench\/mem\///g" | sed "s/\.mem$$//g")"
@PROG="$(shell echo $@ | sed "s/^bench\/mem\///g" | sed "s/\.mem$$//g")" PROOT=$(shell pwd) ./mill TPchisel.test.testOnly $(TOP_REP).$(TOP_TEST) -- -z "$(shell echo $@ | sed "s/^bench\/mem\///g" | sed "s/\.mem$$//g")"
############################################################################### ###############################################################################
@@ -98,7 +96,7 @@ mill:
@curl -L https://raw.githubusercontent.com/lefou/millw/0.4.11/millw > mill @curl -L https://raw.githubusercontent.com/lefou/millw/0.4.11/millw > mill
@chmod +x mill @chmod +x mill
autotest: mill bench/mem/tests/$(PROG).mem ##! Lance la simulation automatique pour tous les tests ou juste celui fourni dans PROG autotest: mill test-bench/mem/tests/$(PROG).mem ##! Lance la simulation automatique pour tous les tests ou juste celui fourni dans PROG
testall: mill $(MEM_TESTS) testall: mill $(MEM_TESTS)