From c1e040d81aa6fe0dcd9ecce1d4bf4b3cef60f894 Mon Sep 17 00:00:00 2001 From: Ciro Santilli Date: Fri, 31 May 2019 16:08:09 +0100 Subject: [PATCH] arch-arm: implement VMINNM scalar thumb VMINNM was implemented at Iabbbca2932557cf6c98ce36690c385c3ddf39ed8 but the thumb scalar encoding was missing. This patch implements it. Change-Id: Ia29ec77dbd82f6be6b3d040a0e737794f52c33bf Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/19108 Reviewed-by: Andreas Sandberg Maintainer: Andreas Sandberg Tested-by: kokoro --- src/arch/arm/isa/formats/fp.isa | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/arch/arm/isa/formats/fp.isa b/src/arch/arm/isa/formats/fp.isa index da439acb8..434a69c32 100644 --- a/src/arch/arm/isa/formats/fp.isa +++ b/src/arch/arm/isa/formats/fp.isa @@ -2539,6 +2539,23 @@ let {{ } } case 0x8: + if (machInst.condCode == 0xF) { + const bool op = bits(machInst, 6); + const uint32_t size = bits(machInst, 9, 8); + if (op) { + if (size == 1) { + return new FailUnimplemented("vminnm.f16", machInst); + } + return decodeNeonSizeSingleDouble( + size, machInst, vd, vn, vm); + } else { + if (size == 1) { + return new FailUnimplemented("vmaxnm.f16", machInst); + } + return decodeNeonSizeSingleDouble( + size, machInst, vd, vn, vm); + } + } if ((opc3 & 0x1) == 0) { if (single) { return decodeVfpRegRegRegOp( -- 2.30.2