From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:39521) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1c1fHd-0001hV-NQ for qemu-devel@nongnu.org; Tue, 01 Nov 2016 16:03:46 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1c1fHY-0001Ho-NX for qemu-devel@nongnu.org; Tue, 01 Nov 2016 16:03:45 -0400 Received: from mout.kundenserver.de ([212.227.126.135]:50235) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1c1fHY-0001HZ-EI for qemu-devel@nongnu.org; Tue, 01 Nov 2016 16:03:40 -0400 From: Laurent Vivier Date: Tue, 1 Nov 2016 21:03:28 +0100 Message-Id: <1478030610-18111-1-git-send-email-laurent@vivier.eu> Subject: [Qemu-devel] [PATCH v4 0/2] 680x0 mul and div instructions List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: schwab@linux-m68k.org, agraf@suse.de, Richard Henderson , gerg@uclinux.org, Laurent Vivier This series is another subset of the series I sent in May: https://lists.gnu.org/archive/html/qemu-devel/2016-05/msg00501.html It must be applied on top of series: "target-m68k: 680x0 instruction set, part 2" This subset contains reworked patches of mul and div instructions: - "add 64bit mull": correctly set QREG_CC_V, - "inline divu/divs": don't inline divu/divs, but update existing functions to manage 680x0 div instructions I've checked it doesn't break coldfire support: http://wiki.qemu.org/download/coldfire-test-0.1.tar.bz2 but it can't boot a 680x0 processor kernel. v4: - divull/divsll: build correctly the 64bit num value check overflow as it is done in divsw v3: - mull: manage the case where Dl == Dh - divu/divs: move all the mechanic to helpers, and pass the register number to directly set the result v2: - Free "rem" and "quot" in "divl". Laurent Vivier (2): target-m68k: add 64bit mull target-m68k: add 680x0 divu/divs variants linux-user/main.c | 7 ++ target-m68k/cpu.h | 4 -- target-m68k/helper.h | 8 ++- target-m68k/op_helper.c | 182 +++++++++++++++++++++++++++++++++++++++++------- target-m68k/qregs.def | 2 - target-m68k/translate.c | 146 +++++++++++++++++++++++++------------- 6 files changed, 267 insertions(+), 82 deletions(-) -- 2.7.4