diff options
Diffstat (limited to 'scripts/wrapper')
-rwxr-xr-x | scripts/wrapper/qemu/riscv64-unknown-linux-gnu-run | 6 | ||||
-rwxr-xr-x | scripts/wrapper/spike/riscv64-unknown-linux-gnu-run | 13 |
2 files changed, 11 insertions, 8 deletions
diff --git a/scripts/wrapper/qemu/riscv64-unknown-linux-gnu-run b/scripts/wrapper/qemu/riscv64-unknown-linux-gnu-run index 93dfccf..fe5b1dc 100755 --- a/scripts/wrapper/qemu/riscv64-unknown-linux-gnu-run +++ b/scripts/wrapper/qemu/riscv64-unknown-linux-gnu-run @@ -10,6 +10,8 @@ do shift done -xlen="$(march-to-cpu-opt --get-elf-class $1)" +xlen="$(march-to-cpu-opt --elf-file-path $1 --print-xlen)" +qemu_cpu="$(march-to-cpu-opt --elf-file-path $1 --print-qemu-cpu)" -QEMU_CPU="$(march-to-cpu-opt --get-riscv-tag $1)" qemu-riscv$xlen -r 5.10 "${qemu_args[@]}" -L ${RISC_V_SYSROOT} "$@" +QEMU_CPU="${qemu_cpu}" qemu-riscv${xlen} -r 5.10 "${qemu_args[@]}" \ + -L ${RISC_V_SYSROOT} "$@" diff --git a/scripts/wrapper/spike/riscv64-unknown-linux-gnu-run b/scripts/wrapper/spike/riscv64-unknown-linux-gnu-run index 6f5ba83..819ac7a 100755 --- a/scripts/wrapper/spike/riscv64-unknown-linux-gnu-run +++ b/scripts/wrapper/spike/riscv64-unknown-linux-gnu-run @@ -1,7 +1,8 @@ -#!/bin/sh +#!/bin/bash -xlen="$(readelf -h $1 | grep 'Class' | cut -d: -f 2 | xargs echo | sed 's/^ELF//')" -arch="${ARCH_STR#*=}" -spike \ - --isa=${arch} \ - ${PK_PATH}/pk${xlen} "$@" +xlen="$(march-to-cpu-opt --elf-file-path $1 --print-xlen)" +isa="$(march-to-cpu-opt --elf-file-path $1 --print-spike-isa)" +varch="$(march-to-cpu-opt --elf-file-path $1 --print-spike-varch)" + +[[ -z ${varch} ]] && spike --isa=${isa} ${PK_PATH}/pk${xlen} "$@" +[[ ! -z ${varch} ]] && spike --isa=${isa} --varch=${varch} ${PK_PATH}/pk${xlen} "$@" |