From: Julian Seward Date: Tue, 19 Jul 2011 15:49:55 +0000 (+0000) Subject: Add test cases for bug 277780. (fix for VMOV.F32). X-Git-Tag: svn/VALGRIND_3_7_0~334 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=492f3fd0d106599fe087479595a3985785ad34a0;p=thirdparty%2Fvalgrind.git Add test cases for bug 277780. (fix for VMOV.F32). Bug 277780. (Mans Rullgard, mans@mansr.com) git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11903 --- diff --git a/none/tests/arm/neon128.c b/none/tests/arm/neon128.c index 97c3d4c538..401b65da98 100644 --- a/none/tests/arm/neon128.c +++ b/none/tests/arm/neon128.c @@ -362,6 +362,8 @@ int main(int argc, char **argv) TESTINSN_imm("vmov.i32 q13", q13, 0x7FF); TESTINSN_imm("vmov.i32 q14", q14, 0x7FFFF); TESTINSN_imm("vmov.i64 q15", q15, 0xFF0000FF00FFFF00); + TESTINSN_imm("vmov.f32 q0", q0, 0.328125); + TESTINSN_imm("vmov.f32 q0", q0, -0.328125); printf("----- VMVN (immediate) -----\n"); TESTINSN_imm("vmvn.i32 q0", q0, 0x7); diff --git a/none/tests/arm/neon128.stdout.exp b/none/tests/arm/neon128.stdout.exp index 96329623b4..aee0ebce55 100644 --- a/none/tests/arm/neon128.stdout.exp +++ b/none/tests/arm/neon128.stdout.exp @@ -19,6 +19,10 @@ vmov.i32 q14, #0x7FFFF :: Qd 0x0007ffff 0x0007ffff 0x0007ffff 0x0007ffff vmov.i32 q14, #0x7FFFF :: Qd 0x0007ffff 0x0007ffff 0x0007ffff 0x0007ffff vmov.i64 q15, #0xFF0000FF00FFFF00 :: Qd 0xff0000ff 0x00ffff00 0xff0000ff 0x00ffff00 vmov.i64 q15, #0xFF0000FF00FFFF00 :: Qd 0xff0000ff 0x00ffff00 0xff0000ff 0x00ffff00 +vmov.f32 q0, #0.328125 :: Qd 0x3ea80000 0x3ea80000 0x3ea80000 0x3ea80000 +vmov.f32 q0, #0.328125 :: Qd 0x3ea80000 0x3ea80000 0x3ea80000 0x3ea80000 +vmov.f32 q0, #-0.328125 :: Qd 0xbea80000 0xbea80000 0xbea80000 0xbea80000 +vmov.f32 q0, #-0.328125 :: Qd 0xbea80000 0xbea80000 0xbea80000 0xbea80000 ----- VMVN (immediate) ----- vmvn.i32 q0, #0x7 :: Qd 0xfffffff8 0xfffffff8 0xfffffff8 0xfffffff8 vmvn.i32 q0, #0x7 :: Qd 0xfffffff8 0xfffffff8 0xfffffff8 0xfffffff8 diff --git a/none/tests/arm/neon64.c b/none/tests/arm/neon64.c index 8284f6ac7c..8d6f6cd21b 100644 --- a/none/tests/arm/neon64.c +++ b/none/tests/arm/neon64.c @@ -623,6 +623,8 @@ int main(int argc, char **argv) TESTINSN_imm("vmov.i32 d13", d13, 0x7FF); TESTINSN_imm("vmov.i32 d14", d14, 0x7FFFF); TESTINSN_imm("vmov.i64 d15", d15, 0xFF0000FF00FFFF00); + TESTINSN_imm("vmov.f32 d0", d0, 0.328125); + TESTINSN_imm("vmov.f32 d0", d0, -0.328125); printf("----- VMVN (immediate) -----\n"); TESTINSN_imm("vmvn.i32 d0", d0, 0x7); diff --git a/none/tests/arm/neon64.stdout.exp b/none/tests/arm/neon64.stdout.exp index 8ba7a588a6..f238063cbe 100644 --- a/none/tests/arm/neon64.stdout.exp +++ b/none/tests/arm/neon64.stdout.exp @@ -19,6 +19,10 @@ vmov.i32 d14, #0x7FFFF :: Qd 0x0007ffff 0x0007ffff vmov.i32 d14, #0x7FFFF :: Qd 0x0007ffff 0x0007ffff vmov.i64 d15, #0xFF0000FF00FFFF00 :: Qd 0xff0000ff 0x00ffff00 vmov.i64 d15, #0xFF0000FF00FFFF00 :: Qd 0xff0000ff 0x00ffff00 +vmov.f32 d0, #0.328125 :: Qd 0x3ea80000 0x3ea80000 +vmov.f32 d0, #0.328125 :: Qd 0x3ea80000 0x3ea80000 +vmov.f32 d0, #-0.328125 :: Qd 0xbea80000 0xbea80000 +vmov.f32 d0, #-0.328125 :: Qd 0xbea80000 0xbea80000 ----- VMVN (immediate) ----- vmvn.i32 d0, #0x7 :: Qd 0xfffffff8 0xfffffff8 vmvn.i32 d0, #0x7 :: Qd 0xfffffff8 0xfffffff8