When multiple ISA string options are provided, the tool seems to always pick the first one in the list. Even if that option is not present in the isa.yaml. For instance if test has RVTEST_ISA("RV32IB,RV32IZbb,RV32IZbkb,RV32IZk,RV32IZkn,RV32IZks") and spike_isa.yaml ISA string is RV32IMCZicsr_Zifencei_Zba_Zbb_Zbs, the Makefile is produced with -march=rv32ib and not rv32izbb. Moving RV32IZbb up in the list changes this and now the tool will use -march=rv32izbb.
The ISA string in spike_isa.yaml is not passed to spike on spike command line. The Makefile produced has - spike --isa=rv32imc - and none of the Z* options from the ISA string get passed to spike.
I face two issues: