From patchwork Mon Dec 10 15:28:21 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 153283 Delivered-To: patch@linaro.org Received: by 2002:a2e:299d:0:0:0:0:0 with SMTP id p29-v6csp3691177ljp; Mon, 10 Dec 2018 07:34:44 -0800 (PST) X-Google-Smtp-Source: AFSGD/WBnjXqjjJgp/lz5YUAbtpXhmVJGs2v8ed2l5T2k7L3J1vSjOx6mnu21IweFPriTOdavol0 X-Received: by 2002:a37:2808:: with SMTP id o8mr11093940qkh.14.1544456084239; Mon, 10 Dec 2018 07:34:44 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1544456084; cv=none; d=google.com; s=arc-20160816; b=Dg7LSYYrqOx/ZmFtUaJz1Eo0Mpqb5PCK2qo8+cNpMVVulryhHF/mgrY41iNa5TdqqD YglaFDt/WQs7oyEl4m1DHVv/hezOkCL0a6Gsw/DaXpKrUU8ipKKoA0eNz3yDmxFY2Ipb BhN7a1hE1+r+Hilq529gyX44hzR1dvbO2utEMrBRbXLCsqoztggtEd2aNk2fb1rFEYEI i4W52Ci1sKjt8clvFU1jb9sCdxJ1Vc4BcKCMC3SQjNFwxKGwn8CniJ8W+gHhrSYQ6YCw 46fhaUtUym4cxwzR8hpHeNJDWJHrQIuNkYADBv/cPvb8GkY0G/pBcHwAHsaPztp3VelL /ZIg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature; bh=STDK5Wg3WVtNMlneX8YnmoHX7VBhJdtTVlYI7mEXVSo=; b=aEZHJpW/kS9qccRSvlTN4tJzZ/9uYABrogiErredeUYLoH32+vpi11bg6unOWN6F8X 2TzqLXjrLTmawPhIr/HQAJqCBOfPWolOQojFbsKbbQ53oG7waRnmRlFxaH7j5iAbLjMD ysJkIjiIwXJ50noZwN01/+nQArclx/E/jjL1e5Umv10lOY7z09/diXvrNUPRm+9ECtc1 USioj/bzmmIBq5JeB9lnTINlGB34oqPWxDoWXjV3q0wkNqagJbg9Hx1+vy9rMYJNXvzE DefM8qBsfxCdvcE8BuAGFxBD0MCWqOHqBK2gWD3mLccQeqdDbEQFZSPySiNZTVLsZCLb BFXA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=fQYAqBd2; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id b2si2849166qti.171.2018.12.10.07.34.43 for (version=TLS1 cipher=AES128-SHA bits=128/128); Mon, 10 Dec 2018 07:34:44 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=fQYAqBd2; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:33361 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gWNZy-0004qw-TP for patch@linaro.org; Mon, 10 Dec 2018 10:34:42 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43296) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gWNU6-00086F-Fa for qemu-devel@nongnu.org; Mon, 10 Dec 2018 10:28:40 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gWNU4-0000VQ-DT for qemu-devel@nongnu.org; Mon, 10 Dec 2018 10:28:38 -0500 Received: from mail-wr1-x443.google.com ([2a00:1450:4864:20::443]:45987) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gWNU4-0000Uq-3f for qemu-devel@nongnu.org; Mon, 10 Dec 2018 10:28:36 -0500 Received: by mail-wr1-x443.google.com with SMTP id b14so10888130wru.12 for ; Mon, 10 Dec 2018 07:28:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=STDK5Wg3WVtNMlneX8YnmoHX7VBhJdtTVlYI7mEXVSo=; b=fQYAqBd2QdWy4O0lyh0z9TPeFV0tfP5A2sZLpQn3R8KVa2BncaODg1SLDeHrXJCRBb RbrJZQdUX/RjEiNgHqlqFhD1G9Q/cqKUtPfX2zKvjzFhDMRwqIVtXLOO1aeBAbSkyR+H rCBJNSUHZrWjT95R+8NnwQq22LlaD6w6BFJ2M= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=STDK5Wg3WVtNMlneX8YnmoHX7VBhJdtTVlYI7mEXVSo=; b=qR/foE4ePStuBYyuXnHlHwHp9KP3evOFabKOiLy86V/DOreOyB7A2t+LSU7PXFKKaq 9SETxGSn0tmwRp5oEtIlxnXfNkYGJfQ4X5pHuLJ2/eOcTfx7vpAkNGfWwB8jj2AdEUH2 4GsugfAAESbtT+AqYMRqVLiOQqUqoKs/o9CGWsaOPPkkM7ww3gdd+3FOTqtwWi1dUbq0 UnbxjJaDyuCR68YNotHMcf07UzA69jB8hn/EnXtltvLnVjQvAj6zJsC4iUJX1SxowKS0 AeHcyxDz3htEh8Y1/OU4KkOUUtpx4lKsaN3VO0raeimhCWUYwt1RB6cu7a23asehkqKe CY/g== X-Gm-Message-State: AA+aEWbNkyVYn5rl2xY4mzMSQ4WLhpF/DDhmFyXgx/9bZ5R1m8qWHpug NJIoYqyAeCGcMA7SDnxP307j8A== X-Received: by 2002:adf:8001:: with SMTP id 1mr9771257wrk.23.1544455714967; Mon, 10 Dec 2018 07:28:34 -0800 (PST) Received: from zen.linaro.local ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id l197sm37598535wma.44.2018.12.10.07.28.31 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 10 Dec 2018 07:28:33 -0800 (PST) Received: from zen.linaroharston (localhost [127.0.0.1]) by zen.linaro.local (Postfix) with ESMTP id 409D53E059D; Mon, 10 Dec 2018 15:28:30 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Date: Mon, 10 Dec 2018 15:28:21 +0000 Message-Id: <20181210152829.29271-6-alex.bennee@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20181210152829.29271-1-alex.bennee@linaro.org> References: <20181210152829.29271-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::443 Subject: [Qemu-devel] [RFC PATCH 05/13] tests/tcg/mips: enable mips64 system tests (WIP) X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Stefan Markovic , jcmvbkbc@gmail.com, michael@walle.cc, amarkovic@wavecomp.com, edgar.iglesias@gmail.com, shorne@gmail.com, =?utf-8?q?Alex_Benn=C3=A9e?= , aurelien@aurel32.net Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" The mips64-dsp and mips64-dspr2 tests are softmmu tests. Tweaks the makefiles to use the tcg tests build system. [WIP: currently won't link but the flags for HEAD vs CFLAGS seem odd] Signed-off-by: Alex Bennée --- tests/tcg/mips/Makefile.softmmu-target | 20 ++ tests/tcg/mips/mips64-dsp/Makefile | 336 ++++--------------------- 2 files changed, 64 insertions(+), 292 deletions(-) create mode 100644 tests/tcg/mips/Makefile.softmmu-target -- 2.17.1 diff --git a/tests/tcg/mips/Makefile.softmmu-target b/tests/tcg/mips/Makefile.softmmu-target new file mode 100644 index 0000000000..79781ae03c --- /dev/null +++ b/tests/tcg/mips/Makefile.softmmu-target @@ -0,0 +1,20 @@ +# -*- Mode: makefile -*- +# +# MIPS Softmmu Targets - included from tests/tcg/Makefile.target +# +# The system tests for mips cover a number of different devices and +# softmmu builds so we include only the one appropriate for the +# current target. +# + +# Set search path for all sources. As there are clashing files in both +# the mips64-dsp and mips64-dspr2 directories we build the rules +# explicitly including the directory so VPATH only needs to be the top +# of the MIPS tests. +MIPS_SRC = $(SRC_PATH)/tests/tcg/mips +VPATH += $(MIPS_SRC) + +ifeq ($(TARGET_NAME),mips64el) +-include $(MIPS_SRC)/mips64-dsp/Makefile +#-include $(MIPS_SRC)/mips64-dspr2/Makefile +endif diff --git a/tests/tcg/mips/mips64-dsp/Makefile b/tests/tcg/mips/mips64-dsp/Makefile index b2ac6b3ffd..55198f3cc9 100644 --- a/tests/tcg/mips/mips64-dsp/Makefile +++ b/tests/tcg/mips/mips64-dsp/Makefile @@ -1,306 +1,58 @@ - -CROSS_COMPILE ?= mips64el-unknown-linux-gnu- - -SIM = qemu-system-mips64el -SIMFLAGS = -nographic -cpu mips64dspr2 -kernel - -AS = $(CROSS_COMPILE)as -LD = $(CROSS_COMPILE)ld -CC = $(CROSS_COMPILE)gcc -AR = $(CROSS_COMPILE)ar -NM = $(CROSS_COMPILE)nm -STRIP = $(CROSS_COMPILE)strip -RANLIB = $(CROSS_COMPILE)ranlib -OBJCOPY = $(CROSS_COMPILE)objcopy -OBJDUMP = $(CROSS_COMPILE)objdump - -VECTORS_OBJ ?= ./head.o ./printf.o - -HEAD_FLAGS ?= -nostdinc -mabi=64 -G 0 -mno-abicalls -fno-pic -pipe \ - -msoft-float -march=mips64 -Wa,-mips64 -Wa,--trap \ - -msym32 -DKBUILD_64BIT_SYM32 -I./ - -CFLAGS ?= -nostdinc -mabi=64 -G 0 -mno-abicalls -fno-pic -fno-builtin \ +# +# MIPS64-DSP softmmu tests +# + +MIPS64_DSP_SRC = $(SRC_PATH)/tests/tcg/mips/mips64-dsp +MIPS64_DSP_ALL = $(wildcard $(MIPS64_DSP_SRC)/*.c) +MIPS64_DSP_TESTS = $(patsubst $(MIPS64_DSP_SRC)/%.c, %, $(MIPS64_DSP_ALL)) +# for now filter out these +MIPS64_DSP_BROKEN_TESTS = dappend preceq_l_pwl preceq_l_pwr precequ_qh_obla precequ_qh_obl +MIPS64_DSP_BROKEN_TESTS += precequ_qh_obra precequ_qh_obr precr_ob_qh precr_sra_qh_pw +MIPS64_DSP_BROKEN_TESTS += precr_sra_r_qh_pw prependd prependw raddu_l_ob +MIPS64_DSP_BROKEN_TESTS += shra_ob shra_r_ob shrl_qh shrlv_qh +MIPS64_DSP_USABLE_TESTS = $(patsubst %,mips64-dsp/%, $(filter-out $(MIPS64_DSP_BROKEN_TESTS), $(MIPS64_DSP_TESTS))) +MIPS64_DSP_RUNS = $(patsubst %, run-%, $(MIPS64_DSP_USABLE_TESTS)) + +# add to the list of tests +TESTS += $(MIPS64_DSP_USABLE_TESTS) + +.PHONY: mips64-dsp.build +mips64-dsp.build: + mkdir -p mips64-dsp + +# head objects (linked into other binaries) +VECTORS_OBJ = mips64-dsp/head.o mips64-dsp/printf.o +.PRECIOUS: $(VECTOR_OBJS) + +HEAD_FLAGS = -nostdinc -mabi=64 -G 0 -mno-abicalls -fno-pic -pipe \ + -msoft-float -march=mips64 -Wa,-mips64 -Wa,--trap \ + -msym32 -DKBUILD_64BIT_SYM32 -I./ + +CFLAGS = -nostdinc -mabi=64 -G 0 -mno-abicalls -fno-pic -fno-builtin \ -pipe -march=mips64r2 -mgp64 -mdsp -static -Wa,--trap -msym32 \ -DKBUILD_64BIT_SYM32 -I./ -LDFLAGS = -T./mips_boot.lds -L./ +LDFLAGS = -T$(MIPS64_DSP_SRC)/mips_boot.lds -L./mips64-dsp FLAGS = -nostdlib -mabi=64 -march=mips64r2 -mgp64 -mdsp +mips64-dsp/head.o: mips64-dsp/head.S | mips64-dsp.build + $(CC) $(HEAD_FLAGS) -D"STACK_TOP=0xffffffff80200000" -c $< -o $@ -#TESTCASES = absq_s_ob.tst -TESTCASES = absq_s_ph.tst -TESTCASES += absq_s_pw.tst -TESTCASES += absq_s_qh.tst -TESTCASES += absq_s_w.tst -TESTCASES += addq_ph.tst -TESTCASES += addq_pw.tst -TESTCASES += addq_qh.tst -TESTCASES += addq_s_ph.tst -TESTCASES += addq_s_pw.tst -TESTCASES += addq_s_qh.tst -TESTCASES += addq_s_w.tst -TESTCASES += addsc.tst -TESTCASES += addu_ob.tst -TESTCASES += addu_qb.tst -TESTCASES += addu_s_ob.tst -TESTCASES += addu_s_qb.tst -TESTCASES += addwc.tst -TESTCASES += bitrev.tst -TESTCASES += bposge32.tst -TESTCASES += bposge64.tst -TESTCASES += cmp_eq_ph.tst -TESTCASES += cmp_eq_pw.tst -TESTCASES += cmp_eq_qh.tst -TESTCASES += cmpgu_eq_ob.tst -TESTCASES += cmpgu_eq_qb.tst -TESTCASES += cmpgu_le_ob.tst -TESTCASES += cmpgu_le_qb.tst -TESTCASES += cmpgu_lt_ob.tst -TESTCASES += cmpgu_lt_qb.tst -TESTCASES += cmp_le_ph.tst -TESTCASES += cmp_le_pw.tst -TESTCASES += cmp_le_qh.tst -TESTCASES += cmp_lt_ph.tst -TESTCASES += cmp_lt_pw.tst -TESTCASES += cmp_lt_qh.tst -TESTCASES += cmpu_eq_ob.tst -TESTCASES += cmpu_eq_qb.tst -TESTCASES += cmpu_le_ob.tst -TESTCASES += cmpu_le_qb.tst -TESTCASES += cmpu_lt_ob.tst -TESTCASES += cmpu_lt_qb.tst -#TESTCASES += dappend.tst -TESTCASES += dextp.tst -TESTCASES += dextpdp.tst -TESTCASES += dextpdpv.tst -TESTCASES += dextpv.tst -TESTCASES += dextr_l.tst -TESTCASES += dextr_r_l.tst -TESTCASES += dextr_rs_l.tst -TESTCASES += dextr_rs_w.tst -TESTCASES += dextr_r_w.tst -TESTCASES += dextr_s_h.tst -TESTCASES += dextrv_l.tst -TESTCASES += dextrv_r_l.tst -TESTCASES += dextrv_rs_l.tst -TESTCASES += dextrv_rs_w.tst -TESTCASES += dextrv_r_w.tst -TESTCASES += dextrv_s_h.tst -TESTCASES += dextrv_w.tst -TESTCASES += dextr_w.tst -TESTCASES += dinsv.tst -TESTCASES += dmadd.tst -TESTCASES += dmaddu.tst -TESTCASES += dmsub.tst -TESTCASES += dmsubu.tst -TESTCASES += dmthlip.tst -TESTCASES += dpaq_sa_l_pw.tst -TESTCASES += dpaq_sa_l_w.tst -TESTCASES += dpaq_s_w_ph.tst -TESTCASES += dpaq_s_w_qh.tst -TESTCASES += dpau_h_obl.tst -TESTCASES += dpau_h_obr.tst -TESTCASES += dpau_h_qbl.tst -TESTCASES += dpau_h_qbr.tst -TESTCASES += dpsq_sa_l_pw.tst -TESTCASES += dpsq_sa_l_w.tst -TESTCASES += dpsq_s_w_ph.tst -TESTCASES += dpsq_s_w_qh.tst -TESTCASES += dpsu_h_obl.tst -TESTCASES += dpsu_h_obr.tst -TESTCASES += dpsu_h_qbl.tst -TESTCASES += dpsu_h_qbr.tst -TESTCASES += dshilo.tst -TESTCASES += dshilov.tst -TESTCASES += extp.tst -TESTCASES += extpdp.tst -TESTCASES += extpdpv.tst -TESTCASES += extpv.tst -TESTCASES += extr_rs_w.tst -TESTCASES += extr_r_w.tst -TESTCASES += extr_s_h.tst -TESTCASES += extrv_rs_w.tst -TESTCASES += extrv_r_w.tst -TESTCASES += extrv_s_h.tst -TESTCASES += extrv_w.tst -TESTCASES += extr_w.tst -TESTCASES += insv.tst -TESTCASES += lbux.tst -TESTCASES += lhx.tst -TESTCASES += lwx.tst -TESTCASES += ldx.tst -TESTCASES += madd.tst -TESTCASES += maddu.tst -TESTCASES += maq_sa_w_phl.tst -TESTCASES += maq_sa_w_phr.tst -TESTCASES += maq_sa_w_qhll.tst -TESTCASES += maq_sa_w_qhlr.tst -TESTCASES += maq_sa_w_qhrl.tst -TESTCASES += maq_sa_w_qhrr.tst -TESTCASES += maq_s_l_pwl.tst -TESTCASES += maq_s_l_pwr.tst -TESTCASES += maq_s_w_phl.tst -TESTCASES += maq_s_w_phr.tst -TESTCASES += maq_s_w_qhll.tst -TESTCASES += maq_s_w_qhlr.tst -TESTCASES += maq_s_w_qhrl.tst -TESTCASES += maq_s_w_qhrr.tst -TESTCASES += mfhi.tst -TESTCASES += mflo.tst -TESTCASES += modsub.tst -TESTCASES += msub.tst -TESTCASES += msubu.tst -TESTCASES += mthi.tst -TESTCASES += mthlip.tst -TESTCASES += mtlo.tst -TESTCASES += muleq_s_pw_qhl.tst -TESTCASES += muleq_s_pw_qhr.tst -TESTCASES += muleq_s_w_phl.tst -TESTCASES += muleq_s_w_phr.tst -TESTCASES += muleu_s_ph_qbl.tst -TESTCASES += muleu_s_ph_qbr.tst -TESTCASES += muleu_s_qh_obl.tst -TESTCASES += muleu_s_qh_obr.tst -TESTCASES += mulq_rs_ph.tst -TESTCASES += mulq_rs_qh.tst -TESTCASES += mulsaq_s_l_pw.tst -TESTCASES += mulsaq_s_w_qh.tst -TESTCASES += mult.tst -TESTCASES += multu.tst -TESTCASES += packrl_ph.tst -TESTCASES += packrl_pw.tst -TESTCASES += pick_ob.tst -TESTCASES += pick_ph.tst -TESTCASES += pick_pw.tst -TESTCASES += pick_qb.tst -TESTCASES += pick_qh.tst -#TESTCASES += preceq_l_pwl.tst -#TESTCASES += preceq_l_pwr.tst -TESTCASES += preceq_pw_qhla.tst -TESTCASES += preceq_pw_qhl.tst -TESTCASES += preceq_pw_qhra.tst -TESTCASES += preceq_pw_qhr.tst -TESTCASES += precequ_ph_qbla.tst -TESTCASES += precequ_ph_qbl.tst -TESTCASES += precequ_ph_qbra.tst -TESTCASES += precequ_ph_qbr.tst -#TESTCASES += precequ_qh_obla.tst -#TESTCASES += precequ_qh_obl.tst -#TESTCASES += precequ_qh_obra.tst -#TESTCASES += precequ_qh_obr.tst -TESTCASES += preceq_w_phl.tst -TESTCASES += preceq_w_phr.tst -TESTCASES += preceu_ph_qbla.tst -TESTCASES += preceu_ph_qbl.tst -TESTCASES += preceu_ph_qbra.tst -TESTCASES += preceu_ph_qbr.tst -TESTCASES += preceu_qh_obla.tst -TESTCASES += preceu_qh_obl.tst -TESTCASES += preceu_qh_obra.tst -TESTCASES += preceu_qh_obr.tst -#TESTCASES += precr_ob_qh.tst -TESTCASES += precrq_ob_qh.tst -TESTCASES += precrq_ph_w.tst -TESTCASES += precrq_pw_l.tst -TESTCASES += precrq_qb_ph.tst -TESTCASES += precrq_qh_pw.tst -TESTCASES += precrq_rs_ph_w.tst -TESTCASES += precrq_rs_qh_pw.tst -TESTCASES += precrqu_s_ob_qh.tst -TESTCASES += precrqu_s_qb_ph.tst -#TESTCASES += precr_sra_qh_pw.tst -#TESTCASES += precr_sra_r_qh_pw.tst -#TESTCASES += prependd.tst -#TESTCASES += prependw.tst -#TESTCASES += raddu_l_ob.tst -TESTCASES += raddu_w_qb.tst -TESTCASES += rddsp.tst -TESTCASES += repl_ob.tst -TESTCASES += repl_ph.tst -TESTCASES += repl_pw.tst -TESTCASES += repl_qb.tst -TESTCASES += repl_qh.tst -TESTCASES += replv_ob.tst -TESTCASES += replv_ph.tst -TESTCASES += replv_pw.tst -TESTCASES += replv_qb.tst -TESTCASES += shilo.tst -TESTCASES += shilov.tst -TESTCASES += shll_ob.tst -TESTCASES += shll_ph.tst -TESTCASES += shll_pw.tst -TESTCASES += shll_qb.tst -TESTCASES += shll_qh.tst -TESTCASES += shll_s_ph.tst -TESTCASES += shll_s_pw.tst -TESTCASES += shll_s_qh.tst -TESTCASES += shll_s_w.tst -TESTCASES += shllv_ob.tst -TESTCASES += shllv_ph.tst -TESTCASES += shllv_pw.tst -TESTCASES += shllv_qb.tst -TESTCASES += shllv_qh.tst -TESTCASES += shllv_s_ph.tst -TESTCASES += shllv_s_pw.tst -TESTCASES += shllv_s_qh.tst -TESTCASES += shllv_s_w.tst -#TESTCASES += shra_ob.tst -TESTCASES += shra_ph.tst -TESTCASES += shra_pw.tst -TESTCASES += shra_qh.tst -#TESTCASES += shra_r_ob.tst -TESTCASES += shra_r_ph.tst -TESTCASES += shra_r_pw.tst -TESTCASES += shra_r_qh.tst -TESTCASES += shra_r_w.tst -TESTCASES += shrav_ph.tst -TESTCASES += shrav_pw.tst -TESTCASES += shrav_qh.tst -TESTCASES += shrav_r_ph.tst -TESTCASES += shrav_r_pw.tst -TESTCASES += shrav_r_qh.tst -TESTCASES += shrav_r_w.tst -TESTCASES += shrl_ob.tst -TESTCASES += shrl_qb.tst -#TESTCASES += shrl_qh.tst -TESTCASES += shrlv_ob.tst -TESTCASES += shrlv_qb.tst -#TESTCASES += shrlv_qh.tst -TESTCASES += subq_ph.tst -TESTCASES += subq_pw.tst -TESTCASES += subq_qh.tst -TESTCASES += subq_s_ph.tst -TESTCASES += subq_s_pw.tst -TESTCASES += subq_s_qh.tst -TESTCASES += subq_s_w.tst -TESTCASES += subu_ob.tst -TESTCASES += subu_qb.tst -TESTCASES += subu_s_ob.tst -TESTCASES += subu_s_qb.tst -TESTCASES += wrdsp.tst - -all: build - -head.o : head.S - $(Q)$(CC) $(HEAD_FLAGS) -D"STACK_TOP=0xffffffff80200000" -c $< -o $@ - -%.o : %.S +mips64-dsp/%.o: mips64-dsp/%.S | mips64-dsp.build $(CC) $(CFLAGS) -c $< -o $@ -%.o : %.c +mips64-dsp/%.o: mips64-dsp/%.c | mips64-dsp.build $(CC) $(CFLAGS) -c $< -o $@ -%.tst: %.o $(VECTORS_OBJ) +mips64-dsp/%: mips64-dsp/%.o $(VECTORS_OBJ) $(CC) $(VECTORS_OBJ) $(FLAGS) $(LDFLAGS) $< -o $@ -build: $(VECTORS_OBJ) $(MIPSSOC_LIB) $(TESTCASES) +# +# Runners +# -check: $(VECTORS_OBJ) $(MIPSSOC_LIB) $(TESTCASES) - @for case in $(TESTCASES); do \ - echo $(SIM) $(SIMFLAGS) ./$$case; \ - $(SIM) $(SIMFLAGS) ./$$case & (sleep 1; killall $(SIM)); \ - done +$(MIPS64_DSP_RUNS): QEMU_OPTS=-nographic -cpu mips64dspr2 -kernel -clean: - $(Q)rm -f *.o *.tst *.a +# FIXME: I don't know why the general rule in tests/tcg/Makefile isn't enough +run-mips64-dsp/%: mips64-dsp/% + $(call run-test, $<, $(QEMU) $(QEMU_OPTS) $<, "$< on $(TARGET_NAME) $(QEMU_OPTS)")