summaryrefslogtreecommitdiff
path: root/none
diff options
context:
space:
mode:
authorsewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9>2011-07-19 15:49:55 +0000
committersewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9>2011-07-19 15:49:55 +0000
commit24ec9f82e6e98e3b7db681052f1ce8650ae6437a (patch)
tree41139df7e77884bc3025f597e8e27c970b6b9bba /none
parente8c5c388bf60fe8ee00e299e8bc48a2233746671 (diff)
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 a5019735-40e9-0310-863c-91ae7b9d1cf9
Diffstat (limited to 'none')
-rw-r--r--none/tests/arm/neon128.c2
-rw-r--r--none/tests/arm/neon128.stdout.exp4
-rw-r--r--none/tests/arm/neon64.c2
-rw-r--r--none/tests/arm/neon64.stdout.exp4
4 files changed, 12 insertions, 0 deletions
diff --git a/none/tests/arm/neon128.c b/none/tests/arm/neon128.c
index 97c3d4c5..401b65da 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 96329623..aee0ebce 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 8284f6ac..8d6f6cd2 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 8ba7a588..f238063c 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