Age | Commit message (Collapse) | Author | Files | Lines |
|
The current sim lacks any sort of tests. Start a basic framework and
add a simple one to test the add insn.
|
|
Most of these prototypes have been killed off, but we have a few left
in the sim tree. Clean them up so we can enable the -W flag for it.
|
|
|
|
I meant for this script to be +x, but missed when doing the initial CVS
commit. It wasn't possible to fix w/CVS, but it is w/git, so do it.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-12-03 Mike Frysinger <vapier@gentoo.org>
* run-tests.sh: Add +x file mode.
|
|
libtool.m4.
|
|
|
|
Since the sim has a few fake debug insns that the hardware does not, we
need to check for those before attempting to run them. Otherwise we'll
randomly trigger the sim debug asserts/aborts/halts insns. On the
hardware, these are proper invalid insns, and the table catches that.
|
|
The main body of the "all insn" test is executed once per tested insn, and
we test millions of insns here. Any shrinkage we can do in this loop will
speed things up nicely (since it's multiplied per tested insn).
To that end, simplify the end-of-table test into one less insn, and omit
the SSYNC when we build for the sim. When we build to run on the hardware,
this insn matters, but the sim doesn't have write store buffers in the chip
that might get in the way (memory writes are atomic).
|
|
|
|
|
|
|
|
Since these insns run in usermode, there should be no need to setup
RET[ENI] to safe values. They won't be dereferenced, and any insn
that returns via them are valid only in supervisor mode. Since this
is in the main exception code path, saving any insn at all is good
as it gets multiplied quickly (as in O(n^2) times).
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
From: Jayant R. Sonar <Jayant.Sonar@kpitcummins.com>
This patch adds simulator support for handling the armv7 instructions
'movw (immediate)' and 'movt'.
Compiler frequently use these instructions to load the 32bit addresses of
global variables, string pointers etc. into the general registers.
In absence of support of these instructions:
1. GDB run simulator fails to print even simple "hello world" string
on console.
2. Loading of global variable addresses into the registers fail causing
arithmetic operation failures.
Patch has been regression tested for arm-none-eabi (-march=armv7-a).
|
|
Two modifications:
1. The addition of 2013 to the copyright year range for every file;
2. The use of a single year range, instead of potentially multiple
year ranges, as approved by the FSF.
|
|
sim/ChangeLog:
Update old contact info in GPL license notices.
|
|
gdb/sim/ChangeLog:
Update the non-FSF-copyrighted files in sim to GPLv3 or later.
|
|
* common/Make-common.in: Use lt_cv_dlopen_libs under PLUGINS
condition.
* common/acinclude.m4: Define lt_cv_dlopen_libs.
* arm/configure: Regenerate.
* avr/configure: Regenerate.
* bfin/configure: Regenerate.
* common/configure: Regenerate.
* cr16/configure: Regenerate.
* cris/configure: Regenerate.
* d10v/configure: Regenerate.
* erc32/configure: Regenerate.
* frv/configure: Regenerate.
* h8300/configure: Regenerate.
* igen/configure: Regenerate.
* iq2000/configure: Regenerate.
* lm32/configure: Regenerate.
* m32c/configure: Regenerate.
* m32r/configure: Regenerate.
* m68hc11/configure: Regenerate.
* mcore/configure: Regenerate.
* microblaze/configure: Regenerate.
* mips/configure: Regenerate.
* mn10300/configure: Regenerate.
* moxie/configure: Regenerate.
* ppc/configure: Regenerate.
* rl78/configure: Regenerate.
* rx/configure: Regenerate.
* sh/configure: Regenerate.
* sh64/configure: Regenerate.
* testsuite/configure: Regenerate.
* v850/configure: Regenerate.
|
|
* mips/basic.exp: Add mips*-mti-elf* target.
* configure.ac: Add mips*-mti-elf* target.
* configure: Regenerate.
|
|
Some of the common includes in include/gdb such as callback.h
include bfd.h. But there was a recent change in bfd-in.h to
require that config.h be included before bfd.h can be included:
/* PR 14072: Ensure that config.h is included first. */
#if !defined PACKAGE && !defined PACKAGE_VERSION
#error config.h must be included before this header
#endif
PACKAGE_VERSION is always defined by default by the AC_INIT autoconf
macro, but PACKAGE isn't. This patch updates the SIM_AC_COMMON macro
to define it, and then regenerates all configure scripts and config.in
files.
sim/common/changeLog:
* acinclude.m4 (SIM_AC_COMMON): Define PACKAGE.
* config.in, configure: Regenerate.
sim/ChangeLog:
* configure: Regenerate.
sim/arm/ChangeLog:
* config.in, configure: Regenerate.
sim/avr/ChangeLog:
* config.in, configure: Regenerate.
sim/bfin/ChangeLog:
* config.in, configure: Regenerate.
sim/cr16/ChangeLog:
* config.in, configure: Regenerate.
sim/cris/ChangeLog:
* config.in, configure: Regenerate.
sim/d10v/ChangeLog:
* config.in, configure: Regenerate.
sim/erc32/ChangeLog:
* config.in, configure: Regenerate.
sim/frv/ChangeLog:
* config.in, configure: Regenerate.
sim/h8300/ChangeLog:
* config.in, configure: Regenerate.
sim/iq2000/ChangeLog:
* config.in, configure: Regenerate.
sim/lm32/ChangeLog:
* config.in, configure: Regenerate.
sim/m32c/ChangeLog:
* config.in, configure: Regenerate.
sim/m32r/ChangeLog:
* config.in, configure: Regenerate.
sim/m68hc11/ChangeLog:
* config.in, configure: Regenerate.
sim/mcore/ChangeLog:
* config.in, configure: Regenerate.
sim/microblaze/ChangeLog:
* config.in, configure: Regenerate.
sim/mips/ChangeLog:
* config.in, configure: Regenerate.
sim/mn10300/ChangeLog:
* config.in, configure: Regenerate.
sim/moxie/ChangeLog:
* config.in, configure: Regenerate.
sim/ppc/ChangeLog:
* configure: Regenerate.
sim/rl78/ChangeLog:
* config.in, configure: Regenerate.
sim/rx/ChangeLog:
* config.in, configure: Regenerate.
sim/sh/ChangeLog:
* config.in, configure: Regenerate.
sim/sh64/ChangeLog:
* config.in, configure: Regenerate.
sim/v850/ChangeLog:
* config.in, configure: Regenerate.
sim/testsuite/ChangeLog:
* configure: Regenerate.
|
|
These are randomly generated tests to track down issues in ASTAT
handling with shift insns.
Signed-off-by: Robin Getz <robin.getz@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
These are the randomly generated tests that directed some of the recent
astat related fixes.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
Now that we check for valid sub-insns in parallel insns, we can
enable the tests that explicitly validate those code paths.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
Now that we have the se_all helpers together and working, we can see
what pieces are duplicated in each test and unify them in the common
header file.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
Similar to logic in the cris exp, attempt a simple compile and if it fails
(presumably due to the compiler being broken), skip all the related tests.
Fortunately, most tests (~600 out of ~800) are pure assembly, so people should
still get pretty good coverage.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
|
|
Truncate constants that are larger than 32bits but get loaded into 32bit
registers. These high bits don't get used and don't really make sense.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The current se_all*opcodes tests are very similar in how they work.
In preparation for adding more tests along these lines, unify the
common bits into a framework that others can include and build off
of easily.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
|
|
|
|
|
|
The 32bit allopcodes test had quite a bit of optimization added to it
so that it ran in a reasonable amount of time out of uncached memory.
Port those changes over to the 16bit test so the two share common code.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
gdb/ChangeLog:
Copyright year update in most files of the GDB Project.
|
|
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
The VIT_MAX insns can be used in parallel, so we need to use the store
buffer so we don't clobber the output register before we get a chance
to do a memory store with it.
Reported-by: Kai Iskratsch <kai@stella.at>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
* sim/arm/iwmmxt/wcmpgt.cgs: Remove expectation of failure.
* sim/arm/iwmmxt/wmac.cgs: Remove expectation of failure.
* sim/arm/iwmmxt/wsra.cgs: Remove expectation of failure.
* sim/arm/xscale/blx.cgs: Remove expectation of failure.
|
|
Signed-off-by: Robin Getz <robin.getz@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
|
|
Now that the common sim testsuite code supports .S and .c files, we
can import the Blackfin testsuite. There are about ~800 tests here,
so I'm only attaching a compressed patch of them. Other than adding
files to sim/testsuite/sim/bfin/, the sim/configure.tgt file was
updated to mark Blackfin as having a testsuite, and sim/configure
regenerated.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
Rather than requiring all sim tests to be preprocessed .s files, add
support for .S and .c files so we can easily write code using a higher
level language like C.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
|
|
* sim/arm/iwmmxt/wcmpgt.cgs, sim/arm/iwmmxt/wmac.cgs,
sim/arm/iwmmxt/wsra.cgs, sim/arm/xscale/blx.cgs: Kfail.
|
|
* configure.host (xscale*): Don't handle target.
* configure.tgt (thumb*-*-* | strongarm*-*-* | xscale-*-*): Don't
handle targets.
gdb/gdbserver:
* README: Don't mention xscale*-*-linux*.
* configure.srv (xscale*-*-linux*): Don't handle target.
gdb/testsuite:
* gdb.base/a2-run.exp (strongarm-*-coff): Don't handle target.
* gdb.base/float.exp (xscale*-*-*, strongarm*-*-*): Don't handle
targets.
* gdb.base/long_long.exp (xscale*-*-*, strongarm*-*-*): Don't
handle targets.
sim:
* configure.tgt (thumb*-*-* | strongarm*-*-* | xscale-*-*): Don't
handle targets.
* configure: Regenerate.
sim/testsuite:
* configure: Regenerate.
* sim/arm/allinsn.exp (xscale*-*-*): Don't handle target.
* sim/arm/misc.exp (thumb*-*-*, xscale*-*-*): Don't handle
targets.
* sim/arm/iwmmxt/iwmmxt.exp: Test for arm*-*-* instead of
xscale*-*-*.
* sim/arm/thumb/allthumb.exp (thumb*-*-*): Don't handle target.
* sim/arm/xscale/xscale.exp: Test for arm*-*-* instead of
xscale*-*-*.
|
|
copyright update.
* utils-dsp.inc, utils-fpu.inc, utils-mdmx.inc: Ditto.
|
|
|
|
|