]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Add test cases for 128-bit shadow loads with
authorJulian Seward <jseward@acm.org>
Mon, 12 Aug 2013 16:10:38 +0000 (16:10 +0000)
committerJulian Seward <jseward@acm.org>
Mon, 12 Aug 2013 16:10:38 +0000 (16:10 +0000)
--partial-loads-ok={yes,no} for x86 targets.  Bug #294285.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13493

13 files changed:
memcheck/tests/amd64/sh-mem-vec128-plo-no.stdout.exp [new file with mode: 0644]
memcheck/tests/amd64/sh-mem-vec128-plo-yes.stdout.exp [new file with mode: 0644]
memcheck/tests/common/sh-mem-vec128-plo-no.stderr.exp-32bit-le
memcheck/tests/common/sh-mem-vec128-plo-yes.stderr.exp-32bit-le
memcheck/tests/common/sh-mem-vec128.tmpl.c
memcheck/tests/x86/Makefile.am
memcheck/tests/x86/sh-mem-vec128-plo-no.stderr.exp [new symlink]
memcheck/tests/x86/sh-mem-vec128-plo-no.stdout.exp [new file with mode: 0644]
memcheck/tests/x86/sh-mem-vec128-plo-no.vgtest [new file with mode: 0644]
memcheck/tests/x86/sh-mem-vec128-plo-yes.stderr.exp [new symlink]
memcheck/tests/x86/sh-mem-vec128-plo-yes.stdout.exp [new file with mode: 0644]
memcheck/tests/x86/sh-mem-vec128-plo-yes.vgtest [new file with mode: 0644]
memcheck/tests/x86/sh-mem-vec128.c [new file with mode: 0644]

diff --git a/memcheck/tests/amd64/sh-mem-vec128-plo-no.stdout.exp b/memcheck/tests/amd64/sh-mem-vec128-plo-no.stdout.exp
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/memcheck/tests/amd64/sh-mem-vec128-plo-yes.stdout.exp b/memcheck/tests/amd64/sh-mem-vec128-plo-yes.stdout.exp
new file mode 100644 (file)
index 0000000..e69de29
index 1e31a7298dae5f9cb5ea5383ffed10719882f9f1..7c85e8ea6c716be14098d50c1ad8cb9d7d77112c 100644 (file)
@@ -1,8 +1,5 @@
-==31009== Memcheck, a memory error detector
-==31009== Copyright (C) 2002-2012, and GNU GPL'd, by Julian Seward et al.
-==31009== Using Valgrind-3.9.0.SVN and LibVEX; rerun with -h for copyright info
-==31009== Command: ./memcheck/tests/sh-mem-vec-32
-==31009== 
+
+sh-mem-vec128: config: little-endian, 32-bit word size
 
 20537   136   171    75    38    63   139    23     5   110    66   421   194    86   232   115 
    56   198   303    65   285   137   309   203   147    37   179   137    65   181   379   118 
@@ -28,777 +25,517 @@ Expect 2 x no error
 
 Expect 2 x error
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x8048FFC: main (sh-mem-vec.c:276)
-==31009==  Address 0x403505f is 1 bytes before a block of size 80,000 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048ADB: main (sh-mem-vec.c:205)
-==31009== 
-==31009== Invalid write of size 8
-==31009==    at 0x804858F: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x8049005: main (sh-mem-vec.c:277)
-==31009==  Address 0x403505f is 1 bytes before a block of size 80,000 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048ADB: main (sh-mem-vec.c:205)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes before a block of size 80,000 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
+Invalid write of size 8
+   ...
+ Address 0x........ is 1 bytes before a block of size 80,000 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 Expect 2 x no error
 
 Expect 2 x error
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804907C: main (sh-mem-vec.c:285)
-==31009==  Address 0x40488d1 is 79,985 bytes inside a block of size 80,000 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048ADB: main (sh-mem-vec.c:205)
-==31009== 
-==31009== Invalid write of size 8
-==31009==    at 0x804858F: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x8049085: main (sh-mem-vec.c:286)
-==31009==  Address 0x40488d9 is 79,993 bytes inside a block of size 80,000 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048ADB: main (sh-mem-vec.c:205)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 79,985 bytes inside a block of size 80,000 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
+Invalid write of size 8
+   ...
+ Address 0x........ is 79,993 bytes inside a block of size 80,000 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 ------ PL Aligned case with 0 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x80485AE: apply (sh-mem-vec.c:91)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009==  Address 0x4048950 is 0 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x80485AE: apply (sh-mem-vec.c:91)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 0 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dUddUddUddUddUdd
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x80485AE: apply (sh-mem-vec.c:91)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 1 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x80485BF: apply (sh-mem-vec.c:92)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009==  Address 0x4048a00 is 0 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x80485BF: apply (sh-mem-vec.c:92)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 0 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 ddUddUddUddUddUd
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x80485BF: apply (sh-mem-vec.c:92)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 2 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x80485D0: apply (sh-mem-vec.c:93)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009==  Address 0x4048ab0 is 0 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x80485D0: apply (sh-mem-vec.c:93)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 0 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dddUddUddUddUddU
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x80485D0: apply (sh-mem-vec.c:93)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 3 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x80485E1: apply (sh-mem-vec.c:94)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009==  Address 0x4048b60 is 0 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x80485E1: apply (sh-mem-vec.c:94)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 0 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 ddddUddUddUddUdd
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x80485E1: apply (sh-mem-vec.c:94)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 4 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x80485F2: apply (sh-mem-vec.c:95)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009==  Address 0x4048c10 is 0 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x80485F2: apply (sh-mem-vec.c:95)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 0 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dddddUddUddUddUd
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x80485F2: apply (sh-mem-vec.c:95)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 5 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x8048603: apply (sh-mem-vec.c:96)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009==  Address 0x4048cc0 is 0 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x8048603: apply (sh-mem-vec.c:96)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 0 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 ddddddUddUddUddU
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x8048603: apply (sh-mem-vec.c:96)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 6 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x8048614: apply (sh-mem-vec.c:97)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009==  Address 0x4048d70 is 0 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x8048614: apply (sh-mem-vec.c:97)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 0 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dddddddUddUddUdd
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x8048614: apply (sh-mem-vec.c:97)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 7 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x8048625: apply (sh-mem-vec.c:98)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009==  Address 0x4048e20 is 0 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x8048625: apply (sh-mem-vec.c:98)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 0 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 ddddddddUddUddUd
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x8048625: apply (sh-mem-vec.c:98)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 8 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x8048636: apply (sh-mem-vec.c:99)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009==  Address 0x4048ed0 is 0 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x8048636: apply (sh-mem-vec.c:99)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 0 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dddddddddUddUddU
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x8048636: apply (sh-mem-vec.c:99)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 9 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x8048647: apply (sh-mem-vec.c:100)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009==  Address 0x4048f80 is 0 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x8048647: apply (sh-mem-vec.c:100)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 0 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 ddddddddddUddUdd
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x8048647: apply (sh-mem-vec.c:100)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 10 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x8048658: apply (sh-mem-vec.c:101)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009==  Address 0x4049030 is 0 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x8048658: apply (sh-mem-vec.c:101)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 0 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dddddddddddUddUd
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x8048658: apply (sh-mem-vec.c:101)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 11 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x8048669: apply (sh-mem-vec.c:102)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009==  Address 0x40490e0 is 0 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x8048669: apply (sh-mem-vec.c:102)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 0 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 ddddddddddddUddU
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x8048669: apply (sh-mem-vec.c:102)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 12 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x804867A: apply (sh-mem-vec.c:103)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009==  Address 0x4049190 is 0 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x804867A: apply (sh-mem-vec.c:103)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 0 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dddddddddddddUdd
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x804867A: apply (sh-mem-vec.c:103)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 13 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x804868B: apply (sh-mem-vec.c:104)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009==  Address 0x4049240 is 0 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x804868B: apply (sh-mem-vec.c:104)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 0 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 ddddddddddddddUd
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x804868B: apply (sh-mem-vec.c:104)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 14 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x804869C: apply (sh-mem-vec.c:105)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009==  Address 0x40492f0 is 0 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x804869C: apply (sh-mem-vec.c:105)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 0 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dddddddddddddddU
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x804869C: apply (sh-mem-vec.c:105)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 15 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x80486AD: apply (sh-mem-vec.c:106)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009==  Address 0x40493a0 is 0 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x80486AD: apply (sh-mem-vec.c:106)
-==31009==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 0 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dddddddddddddddd
 
 
 ------ PL Unaligned case with 0 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x80485AE: apply (sh-mem-vec.c:91)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009==  Address 0x4049451 is 1 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x80485AE: apply (sh-mem-vec.c:91)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dUddUddUddUddUdd
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x80485AE: apply (sh-mem-vec.c:91)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 1 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x80485BF: apply (sh-mem-vec.c:92)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009==  Address 0x4049501 is 1 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x80485BF: apply (sh-mem-vec.c:92)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 ddUddUddUddUddUd
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x80485BF: apply (sh-mem-vec.c:92)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 2 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x80485D0: apply (sh-mem-vec.c:93)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009==  Address 0x40495b1 is 1 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x80485D0: apply (sh-mem-vec.c:93)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dddUddUddUddUddU
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x80485D0: apply (sh-mem-vec.c:93)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 3 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x80485E1: apply (sh-mem-vec.c:94)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009==  Address 0x4049661 is 1 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x80485E1: apply (sh-mem-vec.c:94)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 ddddUddUddUddUdd
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x80485E1: apply (sh-mem-vec.c:94)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 4 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x80485F2: apply (sh-mem-vec.c:95)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009==  Address 0x4049711 is 1 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x80485F2: apply (sh-mem-vec.c:95)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dddddUddUddUddUd
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x80485F2: apply (sh-mem-vec.c:95)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 5 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x8048603: apply (sh-mem-vec.c:96)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009==  Address 0x40497c1 is 1 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x8048603: apply (sh-mem-vec.c:96)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 ddddddUddUddUddU
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x8048603: apply (sh-mem-vec.c:96)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 6 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x8048614: apply (sh-mem-vec.c:97)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009==  Address 0x4049871 is 1 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x8048614: apply (sh-mem-vec.c:97)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dddddddUddUddUdd
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x8048614: apply (sh-mem-vec.c:97)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 7 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x8048625: apply (sh-mem-vec.c:98)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009==  Address 0x4049921 is 1 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x8048625: apply (sh-mem-vec.c:98)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 ddddddddUddUddUd
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x8048625: apply (sh-mem-vec.c:98)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 8 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x8048636: apply (sh-mem-vec.c:99)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009==  Address 0x40499d1 is 1 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x8048636: apply (sh-mem-vec.c:99)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dddddddddUddUddU
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x8048636: apply (sh-mem-vec.c:99)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 9 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x8048647: apply (sh-mem-vec.c:100)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009==  Address 0x4049a81 is 1 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x8048647: apply (sh-mem-vec.c:100)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 ddddddddddUddUdd
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x8048647: apply (sh-mem-vec.c:100)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 10 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x8048658: apply (sh-mem-vec.c:101)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009==  Address 0x4049b31 is 1 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x8048658: apply (sh-mem-vec.c:101)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dddddddddddUddUd
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x8048658: apply (sh-mem-vec.c:101)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 11 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x8048669: apply (sh-mem-vec.c:102)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009==  Address 0x4049be1 is 1 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x8048669: apply (sh-mem-vec.c:102)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 ddddddddddddUddU
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x8048669: apply (sh-mem-vec.c:102)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 12 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x804867A: apply (sh-mem-vec.c:103)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009==  Address 0x4049c91 is 1 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x804867A: apply (sh-mem-vec.c:103)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dddddddddddddUdd
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x804867A: apply (sh-mem-vec.c:103)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 13 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x804868B: apply (sh-mem-vec.c:104)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009==  Address 0x4049d41 is 1 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x804868B: apply (sh-mem-vec.c:104)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 ddddddddddddddUd
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x804868B: apply (sh-mem-vec.c:104)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 14 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x804869C: apply (sh-mem-vec.c:105)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009==  Address 0x4049df1 is 1 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x804869C: apply (sh-mem-vec.c:105)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dddddddddddddddU
 
-==31009== Conditional jump or move depends on uninitialised value(s)
-==31009==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31009==    by 0x804869C: apply (sh-mem-vec.c:105)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 15 leading acc+def bytes ------
 
-==31009== Invalid read of size 16
-==31009==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31009==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31009==    by 0x80486AD: apply (sh-mem-vec.c:106)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009==  Address 0x4049ea1 is 1 bytes inside a block of size 64 alloc'd
-==31009==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31009==    by 0x80487BA: memalign16 (malloc.h:21)
-==31009==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31009==    by 0x80486AD: apply (sh-mem-vec.c:106)
-==31009==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31009== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dddddddddddddddd
 
 
-==31009== 
-==31009== HEAP SUMMARY:
-==31009==     in use at exit: 0 bytes in 0 blocks
-==31009==   total heap usage: 33 allocs, 33 frees, 82,048 bytes allocated
-==31009== 
-==31009== All heap blocks were freed -- no leaks are possible
-==31009== 
-==31009== For counts of detected and suppressed errors, rerun with: -v
-==31009== Use --track-origins=yes to see where uninitialised values come from
-==31009== ERROR SUMMARY: 66 errors from 66 contexts (suppressed: 0 from 0)
+
+HEAP SUMMARY:
+    in use at exit: 0 bytes in 0 blocks
+  total heap usage: 33 allocs, 33 frees, 82,048 bytes allocated
+
+For a detailed leak analysis, rerun with: --leak-check=full
+
+For counts of detected and suppressed errors, rerun with: -v
+Use --track-origins=yes to see where uninitialised values come from
+ERROR SUMMARY: 66 errors from 66 contexts (suppressed: 0 from 0)
index 92ef670791069a46ec7de24c7d45d7bf1c2215c4..d65328981ff51d1910cf2616c54fd4678a401c92 100644 (file)
@@ -1,8 +1,5 @@
-==31013== Memcheck, a memory error detector
-==31013== Copyright (C) 2002-2012, and GNU GPL'd, by Julian Seward et al.
-==31013== Using Valgrind-3.9.0.SVN and LibVEX; rerun with -h for copyright info
-==31013== Command: ./memcheck/tests/sh-mem-vec-32
-==31013== 
+
+sh-mem-vec128: config: little-endian, 32-bit word size
 
 20537   136   171    75    38    63   139    23     5   110    66   421   194    86   232   115 
    56   198   303    65   285   137   309   203   147    37   179   137    65   181   379   118 
@@ -28,590 +25,424 @@ Expect 2 x no error
 
 Expect 2 x error
 
-==31013== Invalid read of size 16
-==31013==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31013==    by 0x8048FFC: main (sh-mem-vec.c:276)
-==31013==  Address 0x403505f is 1 bytes before a block of size 80,000 alloc'd
-==31013==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31013==    by 0x80487BA: memalign16 (malloc.h:21)
-==31013==    by 0x8048ADB: main (sh-mem-vec.c:205)
-==31013== 
-==31013== Invalid write of size 8
-==31013==    at 0x804858F: vector16_copy (sh-mem-vec.c:15)
-==31013==    by 0x8049005: main (sh-mem-vec.c:277)
-==31013==  Address 0x403505f is 1 bytes before a block of size 80,000 alloc'd
-==31013==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31013==    by 0x80487BA: memalign16 (malloc.h:21)
-==31013==    by 0x8048ADB: main (sh-mem-vec.c:205)
-==31013== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes before a block of size 80,000 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
+Invalid write of size 8
+   ...
+ Address 0x........ is 1 bytes before a block of size 80,000 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 Expect 2 x no error
 
 Expect 2 x error
 
-==31013== Invalid read of size 16
-==31013==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31013==    by 0x804907C: main (sh-mem-vec.c:285)
-==31013==  Address 0x40488d1 is 79,985 bytes inside a block of size 80,000 alloc'd
-==31013==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31013==    by 0x80487BA: memalign16 (malloc.h:21)
-==31013==    by 0x8048ADB: main (sh-mem-vec.c:205)
-==31013== 
-==31013== Invalid write of size 8
-==31013==    at 0x804858F: vector16_copy (sh-mem-vec.c:15)
-==31013==    by 0x8049085: main (sh-mem-vec.c:286)
-==31013==  Address 0x40488d9 is 79,993 bytes inside a block of size 80,000 alloc'd
-==31013==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31013==    by 0x80487BA: memalign16 (malloc.h:21)
-==31013==    by 0x8048ADB: main (sh-mem-vec.c:205)
-==31013== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 79,985 bytes inside a block of size 80,000 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
+Invalid write of size 8
+   ...
+ Address 0x........ is 79,993 bytes inside a block of size 80,000 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 ------ PL Aligned case with 0 leading acc+def bytes ------
 
 
 UUdUUdUUdUUdUUdU
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x80485AE: apply (sh-mem-vec.c:91)
-==31013==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 1 leading acc+def bytes ------
 
 
 dUUdUUdUUdUUdUUd
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x80485BF: apply (sh-mem-vec.c:92)
-==31013==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 2 leading acc+def bytes ------
 
 
 ddUUdUUdUUdUUdUU
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x80485D0: apply (sh-mem-vec.c:93)
-==31013==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 3 leading acc+def bytes ------
 
 
 dddUUdUUdUUdUUdU
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x80485E1: apply (sh-mem-vec.c:94)
-==31013==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 4 leading acc+def bytes ------
 
 
 ddddUUdUUdUUdUUd
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x80485F2: apply (sh-mem-vec.c:95)
-==31013==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 5 leading acc+def bytes ------
 
 
 dddddUUdUUdUUdUU
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x8048603: apply (sh-mem-vec.c:96)
-==31013==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 6 leading acc+def bytes ------
 
 
 ddddddUUdUUdUUdU
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x8048614: apply (sh-mem-vec.c:97)
-==31013==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 7 leading acc+def bytes ------
 
 
 dddddddUUdUUdUUd
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x8048625: apply (sh-mem-vec.c:98)
-==31013==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 8 leading acc+def bytes ------
 
 
 ddddddddUUdUUdUU
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x8048636: apply (sh-mem-vec.c:99)
-==31013==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 9 leading acc+def bytes ------
 
 
 dddddddddUUdUUdU
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x8048647: apply (sh-mem-vec.c:100)
-==31013==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 10 leading acc+def bytes ------
 
 
 ddddddddddUUdUUd
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x8048658: apply (sh-mem-vec.c:101)
-==31013==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 11 leading acc+def bytes ------
 
 
 dddddddddddUUdUU
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x8048669: apply (sh-mem-vec.c:102)
-==31013==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 12 leading acc+def bytes ------
 
 
 ddddddddddddUUdU
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x804867A: apply (sh-mem-vec.c:103)
-==31013==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 13 leading acc+def bytes ------
 
 
 dddddddddddddUUd
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x804868B: apply (sh-mem-vec.c:104)
-==31013==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 14 leading acc+def bytes ------
 
 
 ddddddddddddddUU
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x804869C: apply (sh-mem-vec.c:105)
-==31013==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Aligned case with 15 leading acc+def bytes ------
 
 
 dddddddddddddddU
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x80486AD: apply (sh-mem-vec.c:106)
-==31013==    by 0x80490B8: main (sh-mem-vec.c:292)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 0 leading acc+def bytes ------
 
-==31013== Invalid read of size 16
-==31013==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31013==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31013==    by 0x80485AE: apply (sh-mem-vec.c:91)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013==  Address 0x4049451 is 1 bytes inside a block of size 64 alloc'd
-==31013==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31013==    by 0x80487BA: memalign16 (malloc.h:21)
-==31013==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31013==    by 0x80485AE: apply (sh-mem-vec.c:91)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dUddUddUddUddUdd
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x80485AE: apply (sh-mem-vec.c:91)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 1 leading acc+def bytes ------
 
-==31013== Invalid read of size 16
-==31013==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31013==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31013==    by 0x80485BF: apply (sh-mem-vec.c:92)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013==  Address 0x4049501 is 1 bytes inside a block of size 64 alloc'd
-==31013==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31013==    by 0x80487BA: memalign16 (malloc.h:21)
-==31013==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31013==    by 0x80485BF: apply (sh-mem-vec.c:92)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 ddUddUddUddUddUd
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x80485BF: apply (sh-mem-vec.c:92)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 2 leading acc+def bytes ------
 
-==31013== Invalid read of size 16
-==31013==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31013==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31013==    by 0x80485D0: apply (sh-mem-vec.c:93)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013==  Address 0x40495b1 is 1 bytes inside a block of size 64 alloc'd
-==31013==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31013==    by 0x80487BA: memalign16 (malloc.h:21)
-==31013==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31013==    by 0x80485D0: apply (sh-mem-vec.c:93)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dddUddUddUddUddU
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x80485D0: apply (sh-mem-vec.c:93)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 3 leading acc+def bytes ------
 
-==31013== Invalid read of size 16
-==31013==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31013==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31013==    by 0x80485E1: apply (sh-mem-vec.c:94)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013==  Address 0x4049661 is 1 bytes inside a block of size 64 alloc'd
-==31013==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31013==    by 0x80487BA: memalign16 (malloc.h:21)
-==31013==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31013==    by 0x80485E1: apply (sh-mem-vec.c:94)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 ddddUddUddUddUdd
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x80485E1: apply (sh-mem-vec.c:94)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 4 leading acc+def bytes ------
 
-==31013== Invalid read of size 16
-==31013==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31013==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31013==    by 0x80485F2: apply (sh-mem-vec.c:95)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013==  Address 0x4049711 is 1 bytes inside a block of size 64 alloc'd
-==31013==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31013==    by 0x80487BA: memalign16 (malloc.h:21)
-==31013==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31013==    by 0x80485F2: apply (sh-mem-vec.c:95)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dddddUddUddUddUd
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x80485F2: apply (sh-mem-vec.c:95)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 5 leading acc+def bytes ------
 
-==31013== Invalid read of size 16
-==31013==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31013==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31013==    by 0x8048603: apply (sh-mem-vec.c:96)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013==  Address 0x40497c1 is 1 bytes inside a block of size 64 alloc'd
-==31013==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31013==    by 0x80487BA: memalign16 (malloc.h:21)
-==31013==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31013==    by 0x8048603: apply (sh-mem-vec.c:96)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 ddddddUddUddUddU
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x8048603: apply (sh-mem-vec.c:96)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 6 leading acc+def bytes ------
 
-==31013== Invalid read of size 16
-==31013==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31013==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31013==    by 0x8048614: apply (sh-mem-vec.c:97)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013==  Address 0x4049871 is 1 bytes inside a block of size 64 alloc'd
-==31013==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31013==    by 0x80487BA: memalign16 (malloc.h:21)
-==31013==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31013==    by 0x8048614: apply (sh-mem-vec.c:97)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dddddddUddUddUdd
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x8048614: apply (sh-mem-vec.c:97)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 7 leading acc+def bytes ------
 
-==31013== Invalid read of size 16
-==31013==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31013==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31013==    by 0x8048625: apply (sh-mem-vec.c:98)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013==  Address 0x4049921 is 1 bytes inside a block of size 64 alloc'd
-==31013==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31013==    by 0x80487BA: memalign16 (malloc.h:21)
-==31013==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31013==    by 0x8048625: apply (sh-mem-vec.c:98)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 ddddddddUddUddUd
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x8048625: apply (sh-mem-vec.c:98)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 8 leading acc+def bytes ------
 
-==31013== Invalid read of size 16
-==31013==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31013==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31013==    by 0x8048636: apply (sh-mem-vec.c:99)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013==  Address 0x40499d1 is 1 bytes inside a block of size 64 alloc'd
-==31013==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31013==    by 0x80487BA: memalign16 (malloc.h:21)
-==31013==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31013==    by 0x8048636: apply (sh-mem-vec.c:99)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dddddddddUddUddU
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x8048636: apply (sh-mem-vec.c:99)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 9 leading acc+def bytes ------
 
-==31013== Invalid read of size 16
-==31013==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31013==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31013==    by 0x8048647: apply (sh-mem-vec.c:100)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013==  Address 0x4049a81 is 1 bytes inside a block of size 64 alloc'd
-==31013==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31013==    by 0x80487BA: memalign16 (malloc.h:21)
-==31013==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31013==    by 0x8048647: apply (sh-mem-vec.c:100)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 ddddddddddUddUdd
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x8048647: apply (sh-mem-vec.c:100)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 10 leading acc+def bytes ------
 
-==31013== Invalid read of size 16
-==31013==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31013==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31013==    by 0x8048658: apply (sh-mem-vec.c:101)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013==  Address 0x4049b31 is 1 bytes inside a block of size 64 alloc'd
-==31013==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31013==    by 0x80487BA: memalign16 (malloc.h:21)
-==31013==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31013==    by 0x8048658: apply (sh-mem-vec.c:101)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dddddddddddUddUd
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x8048658: apply (sh-mem-vec.c:101)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 11 leading acc+def bytes ------
 
-==31013== Invalid read of size 16
-==31013==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31013==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31013==    by 0x8048669: apply (sh-mem-vec.c:102)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013==  Address 0x4049be1 is 1 bytes inside a block of size 64 alloc'd
-==31013==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31013==    by 0x80487BA: memalign16 (malloc.h:21)
-==31013==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31013==    by 0x8048669: apply (sh-mem-vec.c:102)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 ddddddddddddUddU
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x8048669: apply (sh-mem-vec.c:102)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 12 leading acc+def bytes ------
 
-==31013== Invalid read of size 16
-==31013==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31013==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31013==    by 0x804867A: apply (sh-mem-vec.c:103)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013==  Address 0x4049c91 is 1 bytes inside a block of size 64 alloc'd
-==31013==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31013==    by 0x80487BA: memalign16 (malloc.h:21)
-==31013==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31013==    by 0x804867A: apply (sh-mem-vec.c:103)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dddddddddddddUdd
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x804867A: apply (sh-mem-vec.c:103)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 13 leading acc+def bytes ------
 
-==31013== Invalid read of size 16
-==31013==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31013==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31013==    by 0x804868B: apply (sh-mem-vec.c:104)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013==  Address 0x4049d41 is 1 bytes inside a block of size 64 alloc'd
-==31013==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31013==    by 0x80487BA: memalign16 (malloc.h:21)
-==31013==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31013==    by 0x804868B: apply (sh-mem-vec.c:104)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 ddddddddddddddUd
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x804868B: apply (sh-mem-vec.c:104)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 14 leading acc+def bytes ------
 
-==31013== Invalid read of size 16
-==31013==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31013==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31013==    by 0x804869C: apply (sh-mem-vec.c:105)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013==  Address 0x4049df1 is 1 bytes inside a block of size 64 alloc'd
-==31013==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31013==    by 0x80487BA: memalign16 (malloc.h:21)
-==31013==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31013==    by 0x804869C: apply (sh-mem-vec.c:105)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dddddddddddddddU
 
-==31013== Conditional jump or move depends on uninitialised value(s)
-==31013==    at 0x8048A8F: do_partial_load_case (sh-mem-vec.c:190)
-==31013==    by 0x804869C: apply (sh-mem-vec.c:105)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Conditional jump or move depends on uninitialised value(s)
+   ...
+
 
 ------ PL Unaligned case with 15 leading acc+def bytes ------
 
-==31013== Invalid read of size 16
-==31013==    at 0x804858C: vector16_copy (sh-mem-vec.c:15)
-==31013==    by 0x804898B: do_partial_load_case (sh-mem-vec.c:171)
-==31013==    by 0x80486AD: apply (sh-mem-vec.c:106)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013==  Address 0x4049ea1 is 1 bytes inside a block of size 64 alloc'd
-==31013==    at 0x400602A: memalign (vg_replace_malloc.c:755)
-==31013==    by 0x80487BA: memalign16 (malloc.h:21)
-==31013==    by 0x8048861: do_partial_load_case (sh-mem-vec.c:149)
-==31013==    by 0x80486AD: apply (sh-mem-vec.c:106)
-==31013==    by 0x80490D3: main (sh-mem-vec.c:295)
-==31013== 
+Invalid read of size 16
+   ...
+ Address 0x........ is 1 bytes inside a block of size 64 alloc'd
+   at 0x........: memalign (vg_replace_malloc.c:...)
+   ...
+
 
 dddddddddddddddd
 
 
-==31013== 
-==31013== HEAP SUMMARY:
-==31013==     in use at exit: 0 bytes in 0 blocks
-==31013==   total heap usage: 33 allocs, 33 frees, 82,048 bytes allocated
-==31013== 
-==31013== All heap blocks were freed -- no leaks are possible
-==31013== 
-==31013== For counts of detected and suppressed errors, rerun with: -v
-==31013== Use --track-origins=yes to see where uninitialised values come from
-==31013== ERROR SUMMARY: 51 errors from 51 contexts (suppressed: 0 from 0)
+
+HEAP SUMMARY:
+    in use at exit: 0 bytes in 0 blocks
+  total heap usage: 33 allocs, 33 frees, 82,048 bytes allocated
+
+For a detailed leak analysis, rerun with: --leak-check=full
+
+For counts of detected and suppressed errors, rerun with: -v
+Use --track-origins=yes to see where uninitialised values come from
+ERROR SUMMARY: 51 errors from 51 contexts (suppressed: 0 from 0)
index e49eeaeaf32131d14d0f47333150fdb161fa6eab..c2f3dd0132d289a21869fb52fa10a9ec7d4ad6a9 100644 (file)
@@ -209,8 +209,8 @@ static void do_partial_load_case ( U4 nInitialValid, Bool aligned )
 
 int main ( void )
 {
-  fprintf(stderr, "sh-mem-vec128: config: %s-endian, %lu-bit word size\n",
-                  get_endianness(), 8 * sizeof(void*));
+  fprintf(stderr, "sh-mem-vec128: config: %s-endian, %d-bit word size\n",
+          get_endianness(), (int)(8 * sizeof(void*)));
 
   U4 i;
   U1* buf = memalign16(N_BYTES);
index f2c740cd2272727921ee494d36c7664c81b6cdac..557de6b11a62142e9fffd79805d8620f1495b978 100644 (file)
@@ -16,6 +16,12 @@ EXTRA_DIST = \
        pushfpopf.stderr.exp pushfpopf.stdout.exp pushfpopf.vgtest \
        pushfw_x86.vgtest pushfw_x86.stdout.exp pushfw_x86.stderr.exp \
        pushpopmem.stderr.exp pushpopmem.stdout.exp pushpopmem.vgtest \
+       sh-mem-vec128-plo-no.vgtest \
+               sh-mem-vec128-plo-no.stderr.exp \
+               sh-mem-vec128-plo-no.stdout.exp \
+       sh-mem-vec128-plo-yes.vgtest \
+               sh-mem-vec128-plo-yes.stderr.exp \
+               sh-mem-vec128-plo-yes.stdout.exp \
        sse1_memory.stderr.exp sse1_memory.stdout.exp sse1_memory.vgtest \
        sse2_memory.stderr.exp sse2_memory.stdout.exp sse2_memory.vgtest \
        tronical.stderr.exp tronical.vgtest \
@@ -34,6 +40,7 @@ check_PROGRAMS = \
        pushfpopf \
        pushfw_x86 \
        pushpopmem \
+       sh-mem-vec128 \
        sse_memory \
        tronical \
        xor-undef-x86
diff --git a/memcheck/tests/x86/sh-mem-vec128-plo-no.stderr.exp b/memcheck/tests/x86/sh-mem-vec128-plo-no.stderr.exp
new file mode 120000 (symlink)
index 0000000..febbbdb
--- /dev/null
@@ -0,0 +1 @@
+../common/sh-mem-vec128-plo-no.stderr.exp-32bit-le
\ No newline at end of file
diff --git a/memcheck/tests/x86/sh-mem-vec128-plo-no.stdout.exp b/memcheck/tests/x86/sh-mem-vec128-plo-no.stdout.exp
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/memcheck/tests/x86/sh-mem-vec128-plo-no.vgtest b/memcheck/tests/x86/sh-mem-vec128-plo-no.vgtest
new file mode 100644 (file)
index 0000000..160b95b
--- /dev/null
@@ -0,0 +1,3 @@
+prog: sh-mem-vec128
+args: -q
+vgopts: --partial-loads-ok=no
diff --git a/memcheck/tests/x86/sh-mem-vec128-plo-yes.stderr.exp b/memcheck/tests/x86/sh-mem-vec128-plo-yes.stderr.exp
new file mode 120000 (symlink)
index 0000000..f9a7b65
--- /dev/null
@@ -0,0 +1 @@
+../common/sh-mem-vec128-plo-yes.stderr.exp-32bit-le
\ No newline at end of file
diff --git a/memcheck/tests/x86/sh-mem-vec128-plo-yes.stdout.exp b/memcheck/tests/x86/sh-mem-vec128-plo-yes.stdout.exp
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/memcheck/tests/x86/sh-mem-vec128-plo-yes.vgtest b/memcheck/tests/x86/sh-mem-vec128-plo-yes.vgtest
new file mode 100644 (file)
index 0000000..76585dd
--- /dev/null
@@ -0,0 +1,3 @@
+prog: sh-mem-vec128
+args: -q
+vgopts: --partial-loads-ok=yes
diff --git a/memcheck/tests/x86/sh-mem-vec128.c b/memcheck/tests/x86/sh-mem-vec128.c
new file mode 100644 (file)
index 0000000..a5d0a1d
--- /dev/null
@@ -0,0 +1,16 @@
+
+// Set up the 128-bit shadow memory test, by defining the
+// required vector-copy function, and then including the
+// template.
+
+static __attribute__((noinline))
+void vector16_copy ( void* dst, void* src )
+{
+  __asm__ __volatile__(
+     "movups (%1), %%xmm7 ; movups %%xmm7, (%0)"
+     : /*OUT*/ : /*IN*/ "r"(dst), "r"(src) : "memory","xmm7" 
+  );
+}
+
+// Include the test body, which refers to the above function
+#include "../common/sh-mem-vec128.tmpl.c"