tests/docker: Use binaries for debian-tricore-cross
since binutils is pretty old, it fails our CI repeatedly during the compilation of tricore-binutils. We created a precompiled version using the debian docker image and download it instead of building it ourself. We also updated the package to include a newer version of binutils, gcc, and newlib. The default TriCore ISA version used by tricore-as changed from the old version, so we have to specify it now. If we don't 'test_fadd' fails with 'unknown opcode'. The new assembler also picks a new encoding in ld.h which fails the 'test_ld_h' test. We fix that by using the newest TriCore CPU for QEMU. The old assembler accepted an extra ')' in 'test_imask'. The new one does not, so lets remove it. Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de> Message-Id: <20230209145812.46730-1-kbastian@mail.uni-paderborn.de> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20230228190653.1602033-12-alex.bennee@linaro.org>
This commit is contained in:
parent
267fe57c23
commit
3c471b0701
@ -20,6 +20,7 @@ RUN apt update && \
|
|||||||
bzip2 \
|
bzip2 \
|
||||||
ca-certificates \
|
ca-certificates \
|
||||||
ccache \
|
ccache \
|
||||||
|
curl \
|
||||||
flex \
|
flex \
|
||||||
g++ \
|
g++ \
|
||||||
gcc \
|
gcc \
|
||||||
@ -34,13 +35,8 @@ RUN apt update && \
|
|||||||
python3-setuptools \
|
python3-setuptools \
|
||||||
python3-wheel
|
python3-wheel
|
||||||
|
|
||||||
RUN git clone --single-branch \
|
RUN curl -#SL https://github.com/bkoppelmann/package_940/releases/download/tricore-toolchain-9.40/tricore-toolchain-9.4.0.tar.gz \
|
||||||
https://github.com/bkoppelmann/tricore-binutils.git \
|
| tar -xzC /usr/local/
|
||||||
/usr/src/binutils && \
|
|
||||||
cd /usr/src/binutils && chmod +x missing && \
|
|
||||||
CFLAGS=-w ./configure --prefix=/usr/local --disable-nls --target=tricore && \
|
|
||||||
make && make install && \
|
|
||||||
rm -rf /usr/src/binutils
|
|
||||||
|
|
||||||
# This image can only build a very minimal QEMU as well as the tests
|
# This image can only build a very minimal QEMU as well as the tests
|
||||||
ENV DEF_TARGET_LIST tricore-softmmu
|
ENV DEF_TARGET_LIST tricore-softmmu
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
TESTS_PATH = $(SRC_PATH)/tests/tcg/tricore
|
TESTS_PATH = $(SRC_PATH)/tests/tcg/tricore
|
||||||
|
|
||||||
LDFLAGS = -T$(TESTS_PATH)/link.ld
|
LDFLAGS = -T$(TESTS_PATH)/link.ld --mcpu=tc162
|
||||||
ASFLAGS =
|
ASFLAGS = -mtc162
|
||||||
|
|
||||||
TESTS += test_abs.tst
|
TESTS += test_abs.tst
|
||||||
TESTS += test_bmerge.tst
|
TESTS += test_bmerge.tst
|
||||||
@ -19,7 +19,7 @@ TESTS += test_madd.tst
|
|||||||
TESTS += test_msub.tst
|
TESTS += test_msub.tst
|
||||||
TESTS += test_muls.tst
|
TESTS += test_muls.tst
|
||||||
|
|
||||||
QEMU_OPTS += -M tricore_testboard -nographic -kernel
|
QEMU_OPTS += -M tricore_testboard -cpu tc27x -nographic -kernel
|
||||||
|
|
||||||
%.pS: $(TESTS_PATH)/%.S
|
%.pS: $(TESTS_PATH)/%.S
|
||||||
$(HOST_CC) -E -o $@ $<
|
$(HOST_CC) -E -o $@ $<
|
||||||
|
@ -174,7 +174,7 @@ test_ ## num: \
|
|||||||
TEST_CASE_E(num, res_lo, res_hi, \
|
TEST_CASE_E(num, res_lo, res_hi, \
|
||||||
LI(DREG_RS1, rs1); \
|
LI(DREG_RS1, rs1); \
|
||||||
rstv; \
|
rstv; \
|
||||||
insn EREG_CALC_RESULT, imm1, DREG_RS1, imm2); \
|
insn EREG_CALC_RESULT, imm1, DREG_RS1, imm2; \
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user