From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:45238) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Vj8wA-0006ba-39 for qemu-devel@nongnu.org; Wed, 20 Nov 2013 09:39:31 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Vj8w3-0003gz-LQ for qemu-devel@nongnu.org; Wed, 20 Nov 2013 09:39:25 -0500 Received: from mail-pd0-x231.google.com ([2607:f8b0:400e:c02::231]:64683) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Vj8w3-0003gX-AG for qemu-devel@nongnu.org; Wed, 20 Nov 2013 09:39:19 -0500 Received: by mail-pd0-f177.google.com with SMTP id q10so4505402pdj.36 for ; Wed, 20 Nov 2013 06:39:18 -0800 (PST) From: Jia Liu Date: Wed, 20 Nov 2013 22:38:38 +0800 Message-Id: <1384958318-9145-8-git-send-email-proljc@gmail.com> In-Reply-To: <1384958318-9145-1-git-send-email-proljc@gmail.com> References: <1384958318-9145-1-git-send-email-proljc@gmail.com> Content-Type: text/plain; charset="utf-8" Subject: [Qemu-devel] [PULL 7/7] target-openrisc: Correct carry flag check of l.addc and l.addic test cases List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: blauwirbel@gmail.com, sebastian@macke.de, aliguori@amazon.com From: Sebastian Macke The test cases did not correctly test for the carry flag. Signed-off-by: Sebastian Macke Reviewed-by: Jia Liu Signed-off-by: Jia Liu --- tests/tcg/openrisc/test_addc.c | 8 +++++--- tests/tcg/openrisc/test_addic.c | 10 ++++++---- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/tests/tcg/openrisc/test_addc.c b/tests/tcg/openrisc/test_addc.c index 05d18f8..a8f756a 100644 --- a/tests/tcg/openrisc/test_addc.c +++ b/tests/tcg/openrisc/test_addc.c @@ -7,9 +7,10 @@ int main(void) b = 0x01; c = 0xffffffff; - result = 1; + result = 0; __asm - ("l.addc %0, %1, %2\n\t" + ("l.add r1, r1, r0\n\t" /* clear carry */ + "l.addc %0, %1, %2\n\t" : "=r"(a) : "r"(b), "r"(c) ); @@ -22,7 +23,8 @@ int main(void) c = 0xffffffff; result = 0x80000001; __asm - ("l.addc %0, %1, %2\n\t" + ("l.add r1, r1, r0\n\t" /* clear carry */ + "l.addc %0, %1, %2\n\t" "l.movhi %2, 0x7fff\n\t" "l.ori %2, %2, 0xffff\n\t" "l.addc %0, %1, %2\n\t" diff --git a/tests/tcg/openrisc/test_addic.c b/tests/tcg/openrisc/test_addic.c index 4ba7432..857aaa1 100644 --- a/tests/tcg/openrisc/test_addic.c +++ b/tests/tcg/openrisc/test_addic.c @@ -6,9 +6,10 @@ int main(void) int result; a = 1; - result = 0x1; + result = 0x0; __asm - ("l.addic %0, %0, 0xffff\n\t" + ("l.add r1, r1, r0\n\t" /* clear carry */ + "l.addic %0, %0, 0xffff\n\t" : "+r"(a) ); if (a != result) { @@ -16,10 +17,11 @@ int main(void) return -1; } - a = 0x1; + a = -1; result = 0x201; __asm - ("l.addic %0, %0, 0xffff\n\t" + ("l.add r1, r1, r0\n\t" /* clear carry */ + "l.addic %0, %0, 0x1\n\t" "l.ori %0, r0, 0x100\n\t" "l.addic %0, %0, 0x100\n\t" : "+r"(a) -- 1.8.3.4 (Apple Git-47)