Commit Graph

50 Commits

Author SHA1 Message Date
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
Julian Seward
9258157b08 Add VFP test cases, as per bug 244493 comment 1. Minorly cleaned up
version of a patch by (Dmitry Zhurikhin, zhur@ispras.ru)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11374
2010-09-23 01:26:06 +00:00
Julian Seward
0bbcbaab63 Add more test cases for {U,S}{ADD,SUB}16.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11372
2010-09-22 01:00:06 +00:00
Julian Seward
f63ccaefa1 Add test cases for SSUB8 and UHADD8.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11370
2010-09-21 09:05:20 +00:00
Julian Seward
1701d0550d Add tests for new insns in vex r2033 (SADD16, SSUB16, SASX, SMLAWB, SMLAWT)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11369
2010-09-20 22:54:25 +00:00
Julian Seward
f3758af494 Add tests for RBIT (bit-reverse) instruction (Thumb only).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11344
2010-09-08 08:46:15 +00:00
Julian Seward
0d2ba7f37b Improved test cases for Neon VLDn/VSTn instructions.
(Kirill Batuzov <batuzovk@ispras.ru>)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11309
2010-08-31 09:47:25 +00:00
Julian Seward
0349add9cf Add test cases for v6 media instructions in both ARM and Thumb mode.
(Donna Robinson, donna@valgrind.org).


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11303
2010-08-29 12:35:37 +00:00
Julian Seward
9b9a112a99 Add tests for all {ARM,Thumb} x {integer,NEON} instructions.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11286
2010-08-22 18:23:29 +00:00
Julian Seward
573dc1f1fc Merge from branches/THUMB: test programs for NEON and Thumb.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11285
2010-08-22 12:24:47 +00:00
Julian Seward
fc54d10f02 Add tests for UXTAB and SXTAH.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11084
2010-03-08 15:09:06 +00:00
Julian Seward
d86efc229c Add tests for PLD (cache-prefetch-hint) instructions.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11024
2010-01-09 11:44:21 +00:00
Julian Seward
d547bf3a85 Add a test program for ARM v5 integer instructions, and also for some
v6 instructions.  (Johan Björk)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11003
2010-01-03 23:46:03 +00:00
Julian Seward
d02140ffba Add the default stderr_filter for this directory; else no tests work.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11002
2010-01-03 23:44:34 +00:00
Julian Seward
e66de48efb Further buildsystem bashing, in order to try and get something
make-dist-able.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11000
2010-01-03 21:25:08 +00:00
Julian Seward
e6e6bf27bb Try to integrate none/tests/arm properly in the build system.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10998
2010-01-03 17:40:07 +00:00
Julian Seward
e9de458500 Merge from branches/ARM, all parts of the ARM-Linux port except for
the changes to do with reading and using ELF and DWARF3 info.
This breaks all targets except amd64-linux and x86-linux.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10982
2010-01-01 11:59:33 +00:00
Nicholas Nethercote
fbf8653c8b Removed the remnants of the attempt at an ARM port, because it had
bit-rotted badly and was clogging up the code.

I put the useful remnants in docs/porting-to-ARM in case anyone ever
wants to try porting to ARM again.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4092
2005-07-02 23:13:59 +00:00
Nicholas Nethercote
4399d9700f Added beginnings of an ARM port, to the point where it compiles. It does not
run, though.  There are lots of stubs to be filled in.  (The asm ones currently
just have "swi" in them, which seems to cause seg faults.) 

Also, some of the macros are decided dubious, especially:

  ARCH_* are bogus
  SYSCALL_RET is bogus
  PLATFORM_SET_SYSCALL_RESULT is bogus
  not sure about SET_SYSCALL_RETVAL
  FIRST_STACK_FRAME et al -- bogus?
  VG_MAX_JUMPS ?

And in stage2.lds, the 0x8048000 is almost certainly wrong


This required some tweakings of the core:
- some of the vki_*.h kernel types were fixed up

- had to disable the AM_PROG_CC_C_O macro in configure.in, because automake
  (autoconf?) didn't like it...

- some "#ifdef __x86__" guards were introduced, for nasty x86 things I don't
  yet know how to factor out (trampoline page muck, sysinfo page muck).

- fixed a minor stupidity in vg_proxylwp.c.

- moved the ptrace wrapper into the x86-linux part

- had to change the intercept mangling scheme, to use 'J' instead of '$' as the
  escape char because GCC didn't like '$'.  This is all very dubious, and only
  works because none of our intercepted symbols contains a 'J'.  To be fixed up
  ASAP.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3120
2004-11-26 19:34:36 +00:00