Commit Graph

68 Commits

Author SHA1 Message Date
Julian Seward
5ec46ea778 Connect up the v8 memory insn tests to the build system, and arrange
for both ARM and Thumb encodings to be tested.

Modify the existing v8 crypto tests so that both ARM and Thumb encodings
are tested.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15943
2016-09-01 15:19:07 +00:00
Julian Seward
6ce2e83f67 Enable test cases for arm32 v8 insns: LDAEX{,B,H,D}, STLEX{,B,H,D}
(load-acquire exclusive, store-release exclusive)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15942
2016-09-01 13:10:55 +00:00
Julian Seward
3e4a4540b1 Add test cases for ARMv8 insns: LDA, LDAB, LDAH, STL, STLB, STLH.
Not connected to the build system yet.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15941
2016-08-28 16:17:12 +00:00
Julian Seward
5ee5496e04 Connect the v8crypto test to the build system, at least somewhat, so
as to make the post-regtest-tests happy.  Still needs configure.ac
checking for "-mfpu=crypto-neon-fp-armv8" gcc flag support.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15935
2016-08-10 22:22:20 +00:00
Julian Seward
ede1952161 none/tests/arm/v8crypto:
* enable all tests in this file
* add an expected output (stderr.exp) file


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15933
2016-08-07 23:36:10 +00:00
Julian Seward
38d065af6a Fix uses of CPSR in these tests, so that (1) the relevant fields are
initialised properly before the test, and (2) after the test, we don't
print implementation-defined parts of the resulting CPSR.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15932
2016-08-06 12:33:59 +00:00
Julian Seward
bafba31e41 do_vldm_vstm_check: don't use caller saved FP ('s') registers to hold
data that we expect to stay alive over calls to printf.  Fixes erratic
failures of this test.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15931
2016-08-06 12:32:37 +00:00
Julian Seward
b8490fbbb9 Add test cases for v8 crypto instructions in 32-bit mode. Is not yet connected
to the build/test system.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15922
2016-08-03 11:44:02 +00:00
Mark Wielaard
50fb5a1834 Squash GCC warning in none/tests/arm/v6media.c
v6media.c: In function ‘gen_cin’:
v6media.c:10:12: warning: type of ‘cin’ defaults to ‘int’ [-Wimplicit-int]
 static int gen_cin(cin)

Just make the argument an int.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15769
2016-01-22 15:14:16 +00:00
Julian Seward
3e5636a4ca Add test cases for VCVT.{S,U}32.F32, S[n], S[n], #imm.
Pertains to #342783.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15559
2015-08-17 08:23:31 +00:00
Julian Seward
77b6343c0e Add test cases for VFPv4 VFNMA, VFNMS added in vex r2995.
Pertains to #340807.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14736
2014-11-19 16:09:08 +00:00
Julian Seward
02f1067f35 Add tests for VFPv4 VFMA/VMFS. Pertains to #331057.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13967
2014-05-15 00:12:36 +00:00
Julian Seward
c388df8977 Followup to r13958: add reg-trash lists to inline assembly in
TESTINSTPCMISALIGNED TESTINSTPCMISALIGNED_DWORDOUT
TESTINSTPCMISALIGNED_2OUT and nice up the the indentation a bit.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13960
2014-05-13 16:15:56 +00:00
Julian Seward
61a0ca0857 Thumb encoding: add test case for assertion failure caused by
"ldr.w pc, [reg, #imm]".  See #333428.  (dimitry@google.com)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13959
2014-05-13 15:55:00 +00:00
Julian Seward
f6d56584b4 Thumb encoding: add test cases for misaligned loads of the form
LD Rt, [Rn +/- #imm12]  when Rn == PC
See #333145.  (dimitry@google.com)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13958
2014-05-13 14:45:54 +00:00
Julian Seward
9b7f6eeab0 Add test cases for SMMLS, SMLALD, SMLSLD (ARM and Thumb). Pertains to
323036, 323175, 323177.  (vasily.golubev@gmail.com)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13584
2013-09-29 19:49:43 +00:00
Julian Seward
b7081fc1bd Add test cases for LDRHT (Thumb), LDRSHT (Thumb), [LDR,ST]{S}[B,H]T (ARM).
Pertains to 321891, 323035, 324047.  (vasily.golubev@gmail.com)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13583
2013-09-29 18:25:29 +00:00
Julian Seward
535aed86cd Avoid a compiler warning.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13499
2013-08-15 21:18:21 +00:00
Julian Seward
25e9b5634b Add test cases pertaining to vex r2731, for the following instructions:
SSAX SXTAB16 SHASX SHSAX SHSUB16 SHSUB8
  UASX USAX UQADD16 UQASX UQSAX UHASX UHSAX REVSH

Pertaining to
  321363 321364 321466 321467 321468 321619 321704
  321620 321621 321692 321694 321696 321697 321703

(Vasily, w.golubev@mail.ru)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13447
2013-07-04 20:39:53 +00:00
Julian Seward
0f61834992 Add test cases for
(T1) STRBT reg+#imm8
(T1) STRHT reg+#imm8
(T1) LDRBT reg+#imm8
(T1) LDRSBT reg+#imm8

Pertaining to: 319858 319932 320083 321693 321148

(Vasily, w.golubev@mail.ru)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13445
2013-07-04 15:29:07 +00:00
Julian Seward
af4c08f658 Add test case for STRT. See #319395.
(Vasily Golubev, w.golubev@mail.ru)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13397
2013-05-13 10:29:32 +00:00
Julian Seward
025f9149e7 Add test cases for SSAT16. See #318929.
(Vasily Golubev, w.golubev@mail.ru)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13396
2013-05-13 10:03:28 +00:00
Julian Seward
3d0ccce657 Add test cases for SMMLA{R}.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13376
2013-04-23 08:52:35 +00:00
Julian Seward
c990b98d2a Minor changes to how V{LD}{1,2,3,4} are tested:
* print the output 64-bit results in most-to-least-significant
  lane format
* change the memory values used in these tests to ones which
  are reliably able to detect confusion of 8-bit lanes.  The
  previous values couldn't to that reliable.  This change causes
  the diff to be huge because the stdout.exp changes a lot.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13374
2013-04-20 23:43:49 +00:00
Julian Seward
434ec6b7f5 Non-functional changes: flush stdout frequently, so as to make
it easier to sync with stderr output.  Also, add some more helpful
data for testing Neon loads/stores.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13372
2013-04-18 11:52:19 +00:00
Julian Seward
f1c82a29d7 Add test cases for SDIV and UDIV. Pertains to #314178.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13365
2013-04-11 13:58:48 +00:00
Julian Seward
34113acb36 Add test cases for (T1) LDRT reg+#imm8. See #315689.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13364
2013-04-11 10:58:18 +00:00
Julian Seward
3525bf5b27 Add test cases for VCVT.{S,U}32.F64 D[d], D[d], #frac_bits.
Pertains to #315738.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13313
2013-03-06 08:35:12 +00:00
Julian Seward
cbc042d10e Add test cases for VCVT.F64.{SU}32, #imm, including a bunch of dodging and
weaving to work around buggy assemblers.  Pertains to #308717.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13312
2013-03-05 14:27:44 +00:00
Julian Seward
fd4de60b17 Add test cases for SMLAL{BB,BT,TB,TT}. Related to #308718.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13311
2013-03-04 18:35:17 +00:00
Julian Seward
0b16d79838 Add test cases for the UMAAL instruction.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13176
2012-12-12 00:17:33 +00:00
Julian Seward
023cba9950 Add tests for: uqsub16 shadd16 uhsub8 uhsub16. See #304035.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12981
2012-09-17 15:29:53 +00:00
Julian Seward
213bf1ccbc Add test cases for QDADD and QDSUB. See #305199. (Mans Rullgard,
mans@mansr.com)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12888
2012-08-23 20:58:08 +00:00
Julian Seward
63da47e2c2 Add test cases for "VCVT.F32.{S,U}32 S[d], S[d], #frac_bits"
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12808
2012-08-01 22:01:05 +00:00
Julian Seward
73bed921ca Add tests for SMMUL{R}, both ARM and Thumb encodings.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12733
2012-07-11 16:58:59 +00:00
Julian Seward
e08776c783 RM: Implement QADD and QSUB (valgrind side fixes). Fixes #286917.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12727
2012-07-11 13:20:58 +00:00
Julian Seward
c26d658560 Update these for Linaro's pre-release build of Ubuntu 12.04, with
Linaro gcc 4.6.3, running on an A9.  Not sure why these need to be
updated, but they results are same as native on said platform, so am
not worried.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12660
2012-06-22 09:34:58 +00:00
Julian Seward
21ddb56ea2 Add test cases for UHADD16.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12659
2012-06-22 09:28:58 +00:00
Philippe Waroquiers
c523185b76 fix 286270 VG_(env_remove_valgrind_env_stuff)
rev 12001 has introduced a regression in VG_(env_remove_valgrind_env_stuff):
to avoid modifying a possibly read-only env string, the string is duplicated,
and the copy is modified. However, mash_env_column modifies the string
"in-place". The modified string was not put back in the env (and could not,
because the src string is only partially copied).

This means that the valgrind preload strings were not cleaned up and
when a 32 bit executable execs a 64 bits (or vice versa: 64 bit execs 32 bits),
LD_PRELOAD contains both the 32 bits and 64 bits versions of Valgrind
vgpreload.... => ld.so then gives an error msg, as it can't preload either
the 32 or the 64 bits version.


The patch fixes this by duplicating the whole env string, and passing
to mash_colon_env a pointer to the correct offset in the whole env string.
The duplicated string is replacing the original entry in envp.

This patch adds two regression tests : none/tests/allexec32 and 
none/tests/allexec64. On a bi-arch valgrind, these will be 32bits and 64 bits
executables, exec-ing each other. On a single arch, one will be a symlink
to the other (to avoid different .exp files, and still test exec).



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12287
2011-12-11 16:29:43 +00:00
Julian Seward
cfe0e65b27 Add (well, actually, enable existing) test cases for Thumb2 ROR
(register) encoding T2.  See #284472.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12176
2011-10-20 12:43:16 +00:00
Julian Seward
492f3fd0d1 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
2011-07-19 15:49:55 +00:00
Julian Seward
79cc4f3d4d Fix regtest: the delta value printed by the VSTn with register
post-index is bogus due to an accidental stringification in the macro.
Bug 277689.  (Mans Rullgard, mans@mansr.com)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11902
2011-07-19 08:10:38 +00:00
Julian Seward
61b540db5e Add test cases for NEON VMUL by float scalar.
Bug 277663.  (Mans Rullgard, mans@mansr.com)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11901
2011-07-19 07:39:18 +00:00
Julian Seward
3898fc46fc Add regression tests for {ADD,SUB}W reg, reg, #uimm12 (vex r2170)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11863
2011-07-08 15:46:33 +00:00
Julian Seward
d54e321de7 Add test cases for SMSAD{X}, SMLSD{X}, USAD{A}8, added in vex r2067.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11455
2010-10-18 16:35:38 +00:00
Julian Seward
9decf216bf Add tests for NOP cases.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11427
2010-10-11 18:55:24 +00:00
Julian Seward
d8c8293925 Improve NEON instruction set tests, so as to run tests with
different data in high and low d-register halves.
(Dmitry Zhurikhin, zhur@ispras.ru)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11426
2010-10-11 17:41:46 +00:00
Julian Seward
b132b8b282 Add tests for all encodings of REV and REV16 in both ARM and Thumb mode.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11381
2010-09-26 00:51:12 +00:00
Julian Seward
d1853b294d Add tests for ORN (immediate) and ORN (register).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11380
2010-09-25 22:07:01 +00:00
Julian Seward
82792e19c7 Test for RBIT in ARM mode.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11379
2010-09-24 23:51:42 +00:00