@@ -93,12 +93,17 @@ TRIGGER_SKIP_DEFAULT_INST := --skip-default-inst
9393else
9494TRIGGER_SKIP_DEFAULT_INST :=
9595endif
96- # Directory that stores the gnu toolchain
97- GNU_TOOLCHAIN_DIR :=
98- # Directory that stores the gcc cases
99- GCC_CASES_DIR := $(GNU_TOOLCHAIN_DIR ) /gcc/gcc/testsuite/gcc.target/riscv/rvv/gcc-auto-generated
100- # Directory that stores the g++ cases
101- G++_CASES_DIR := $(GNU_TOOLCHAIN_DIR ) /gcc/gcc/testsuite/g++.target/riscv/rvv/g++-auto-generated
96+ # Directory for GNU_TEST_SETUP
97+ GNU_TEST_SETUP := $(DIR ) /../gnu-test-setup
98+
99+ # Directory for GNU Toolchain API tests
100+ GNU_TOOLCHAIN_TEST_DIR := $(CURDIR ) /gnu-toolchain-tests/testsuite/
101+ # # Directory that stores the gnu toolchain
102+ # GNU_TOOLCHAIN_DIR :=
103+ # # Directory that stores the gcc cases
104+ GCC_CASES_DIR := $(GNU_TOOLCHAIN_TEST_DIR ) /gcc
105+ # # Directory that stores the g++ cases
106+ G++_CASES_DIR := $(GNU_TOOLCHAIN_TEST_DIR ) /g++
102107
103108# ##############################################################################
104109# Functions
@@ -557,20 +562,18 @@ run-test:
557562 CC=${COMPILER} \
558563 -f ${API_MAKEFILE} -j${nproc}
559564
560- # Test gnu auto generaged overloaded-api-testing with testing-report
561- report-gnu :
562- cd ${GNU_TOOLCHAIN_DIR} && ./configure --prefix=" ${GNU_TOOLCHAIN_DIR} /install" \
563- --with-arch=rv64gcv \
564- --with-abi=lp64d \
565- --with-isa-spec=20191213 \
566- --with-sim=qemu
567- cd ${GNU_TOOLCHAIN_DIR} && make distclean
568- cd ${GNU_TOOLCHAIN_DIR} && make -j 8
565+ # Test gnu auto generated overloaded-api-testing with testing-report
566+ report-gnu : prepare-gnu
567+ make -C $(GNU_TOOLCHAIN_TEST_DIR ) ../ -j${nproc}
568+
569+ prepare-gnu :
570+ $(call check_defined, TOOLCHAIN_DIR, path to GNU toolchain)
571+ # setup testsuite
569572 mkdir -p $(GCC_CASES_DIR ) /gnu-api-tests
570573 mkdir -p $(GCC_CASES_DIR ) /policy_funcs/gnu-api-tests
571574 mkdir -p $(GCC_CASES_DIR ) /gnu-overloaded-tests
572575 mkdir -p $(GCC_CASES_DIR ) /policy_funcs/gnu-overloaded-tests
573- cp $(DIR ) /../ gcc-auto-generated.exp $(GCC_CASES_DIR ) /auto-generated .exp
576+ cp $(GNU_TEST_SETUP ) / gcc-auto-generated.exp $(GCC_CASES_DIR ) /gcc .exp
574577 cp -r $(DIR ) /gnu-api-tests/* $(GCC_CASES_DIR ) /gnu-api-tests/
575578 cp -r $(DIR ) /policy_funcs/gnu-api-tests/* $(GCC_CASES_DIR ) /policy_funcs/gnu-api-tests/
576579 cp -r $(DIR ) /gnu-overloaded-tests/* $(GCC_CASES_DIR ) /gnu-overloaded-tests/
@@ -579,12 +582,20 @@ report-gnu:
579582 mkdir -p $(G++_CASES_DIR ) /policy_funcs/gnu-api-tests
580583 mkdir -p $(G++_CASES_DIR ) /gnu-overloaded-tests
581584 mkdir -p $(G++_CASES_DIR ) /policy_funcs/gnu-overloaded-tests
582- cp $(DIR ) /../ g++-auto-generated.exp $(G++_CASES_DIR ) /auto-generated .exp
585+ cp $(GNU_TEST_SETUP ) / g++-auto-generated.exp $(G++_CASES_DIR ) /g++ .exp
583586 cp -r $(DIR ) /gnu-api-tests/* $(G++_CASES_DIR ) /gnu-api-tests/
584587 cp -r $(DIR ) /policy_funcs/gnu-api-tests/* $(G++_CASES_DIR ) /policy_funcs/gnu-api-tests/
585588 cp -r $(DIR ) /gnu-overloaded-tests/* $(G++_CASES_DIR ) /gnu-overloaded-tests/
586589 cp -r $(DIR ) /policy_funcs/gnu-overloaded-tests/* $(G++_CASES_DIR ) /policy_funcs/gnu-overloaded-tests/
587- cd ${GNU_TOOLCHAIN_DIR} && make report -j 8 RUNTESTFLAGS=" auto-generated.exp"
590+ # setup the site.exp
591+ cp $(GNU_TEST_SETUP ) /site.exp $(GNU_TOOLCHAIN_TEST_DIR ) /../site.exp
592+ sed -i ' s|TOOLCHAIN_DIR|$(TOOLCHAIN_DIR)|g' $(GNU_TOOLCHAIN_TEST_DIR ) /../site.exp
593+ sed -i ' s|SRCDIR|$(GNU_TOOLCHAIN_TEST_DIR)|g' $(GNU_TOOLCHAIN_TEST_DIR ) /../site.exp
594+ # setup gcc testharness
595+ bash $(GNU_TEST_SETUP ) /fetch-gcc-testharness.sh $(GNU_TOOLCHAIN_TEST_DIR )
596+ # setup makefile
597+ cp $(GNU_TEST_SETUP ) /Makefile.gnu $(GNU_TOOLCHAIN_TEST_DIR ) /../Makefile
598+ sed -i ' s|TESTSUITE_PATH|$(GNU_TOOLCHAIN_TEST_DIR)|g' $(GNU_TOOLCHAIN_TEST_DIR ) /../Makefile
588599
589600# ##############################################################################
590601# Custom Vendor Generator Target
0 commit comments