summaryrefslogtreecommitdiffstats
path: root/meta-linaro/recipes-devtools/qemu/files/target-ppc_fix_bit_extraction.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-linaro/recipes-devtools/qemu/files/target-ppc_fix_bit_extraction.patch')
-rw-r--r--meta-linaro/recipes-devtools/qemu/files/target-ppc_fix_bit_extraction.patch70
1 files changed, 70 insertions, 0 deletions
diff --git a/meta-linaro/recipes-devtools/qemu/files/target-ppc_fix_bit_extraction.patch b/meta-linaro/recipes-devtools/qemu/files/target-ppc_fix_bit_extraction.patch
new file mode 100644
index 0000000..631d23b
--- /dev/null
+++ b/meta-linaro/recipes-devtools/qemu/files/target-ppc_fix_bit_extraction.patch
@@ -0,0 +1,70 @@
1Delivered-To: raj.khem@gmail.com
2Received: by 10.50.216.195 with SMTP id os3csp11191igc;
3 Thu, 15 Aug 2013 04:32:45 -0700 (PDT)
4X-Received: by 10.180.98.3 with SMTP id ee3mr1508103wib.48.1376566364872;
5 Thu, 15 Aug 2013 04:32:44 -0700 (PDT)
6Return-Path: <aurelien@aurel32.net>
7Received: from hall.aurel32.net (hall.aurel32.net. [2001:470:1f0b:4a8::1])
8 by mx.google.com with ESMTPS id vv5si15578100wjc.49.2013.08.15.04.32.44
9 for <raj.khem@gmail.com>
10 (version=TLSv1.2 cipher=RC4-SHA bits=128/128);
11 Thu, 15 Aug 2013 04:32:44 -0700 (PDT)
12Received-SPF: pass (google.com: best guess record for domain of aurelien@aurel32.net designates 2001:470:1f0b:4a8::1 as permitted sender) client-ip=2001:470:1f0b:4a8::1;
13Authentication-Results: mx.google.com;
14 spf=pass (google.com: best guess record for domain of aurelien@aurel32.net designates 2001:470:1f0b:4a8::1 as permitted sender) smtp.mail=aurelien@aurel32.net
15Received: from [2001:470:d4ed:1:2db:dfff:fe14:52d] (helo=ohm.aurel32.net)
16 by hall.aurel32.net with esmtpsa (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128)
17 (Exim 4.80)
18 (envelope-from <aurelien@aurel32.net>)
19 id 1V9vnG-0006cO-NN; Thu, 15 Aug 2013 13:32:42 +0200
20Received: from aurel32 by ohm.aurel32.net with local (Exim 4.80)
21 (envelope-from <aurelien@aurel32.net>)
22 id 1V9vnF-0002Lw-7L; Thu, 15 Aug 2013 13:32:41 +0200
23From: Aurelien Jarno <aurelien@aurel32.net>
24To: qemu-devel@nongnu.org
25Cc: Khem Raj <raj.khem@gmail.com>,
26 Alexander Graf <agraf@suse.de> ,
27 qemu-stable@nongnu.org,
28 qemu-ppc@nongnu.org,
29 Aurelien Jarno <aurelien@aurel32.net>
30Subject: [PATCH] target-ppc: fix bit extraction for FPBF and FPL
31Date: Thu, 15 Aug 2013 13:32:38 +0200
32Message-Id: <1376566358-8989-1-git-send-email-aurelien@aurel32.net>
33X-Mailer: git-send-email 1.7.10.4
34
35Bit extraction for the FP BF and L field of the MTFSFI and MTFSF
36instructions is wrong and doesn't match the reference manual (which
37explain the bit number in big endian format). It has been broken in
38commit 7d08d85645def18eac2a9d672c1868a35e0bcf79.
39
40This patch fixes this, which in turn fixes the problem reported by
41Khem Raj about the floor() function of libm.
42
43Reported-by: Khem Raj <raj.khem@gmail.com>
44Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
45
46Upstream-Status: Backport
47
48---
49 target-ppc/translate.c | 4 ++--
50 1 file changed, 2 insertions(+), 2 deletions(-)
51
52I don't know if we still have time to get this into 1.6, hence the Cc:
53to stable. In anycase it also needs to be fixed in 1.5.
54
55Index: qemu-1.5.0/target-ppc/translate.c
56===================================================================
57--- qemu-1.5.0.orig/target-ppc/translate.c 2013-05-20 08:34:40.000000000 -0700
58+++ qemu-1.5.0/target-ppc/translate.c 2013-08-15 06:49:25.028144352 -0700
59@@ -428,9 +428,9 @@
60 EXTRACT_HELPER(SR, 16, 4);
61
62 /* mtfsf/mtfsfi */
63-EXTRACT_HELPER(FPBF, 19, 3);
64+EXTRACT_HELPER(FPBF, 23, 3);
65 EXTRACT_HELPER(FPIMM, 12, 4);
66-EXTRACT_HELPER(FPL, 21, 1);
67+EXTRACT_HELPER(FPL, 25, 1);
68 EXTRACT_HELPER(FPFLM, 17, 8);
69 EXTRACT_HELPER(FPW, 16, 1);
70