Age | Commit message (Collapse) | Author | Files | Lines |
|
Since libgloss provides a default syscall table for arches, use that
to provide the default syscall table for ports. Only the exceptions
need to be enumerated now with the common logic as the default.
|
|
Force this on for all ports. We have a few common models that can
be used, so make them generally available. If the port doesn't use
any hardware (the default), then behavior is unchanged.
|
|
Every port using this sets the 1st arg to yes and the 2nd arg to "".
These are the defaults we probably want anyways in order to unify the
codebase, so move them to the macro and only allow ports to declare
extra hardware models.
|
|
This updates the sim so that it unconditionally uses sys/time.h. This
is in agreement with existing code, and a recent change to BFD.
I also think that sys/times.h is never needed by the sim, so this
patch removes the check and the one spot that was conditionally
including it.
sim/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* m4/sim_ac_common.m4 (SIM_AC_COMMON): Don't check for sys/time.h
or sys/times.h.
sim/aarch64/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/arm/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/avr/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/bfin/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/bpf/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/common/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* sim-utils.c: Update includes.
sim/cr16/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* simops.c: Update includes.
* configure, config.in: Rebuild.
sim/cris/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* rvdummy.c: Update includes.
* dv-rv.c: Update includes.
* configure, config.in: Rebuild.
sim/d10v/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/erc32/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/example-synacor/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/frv/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/ft32/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/h8300/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/iq2000/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/lm32/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/m32c/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/m32r/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/m68hc11/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/mcore/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/microblaze/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/mips/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/mn10300/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/moxie/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/msp430/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/or1k/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/ppc/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* mon.c: Update includes.
* emul_unix.c: Update includes.
(do_unix_gettimeofday): Update condition.
sim/pru/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/riscv/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/rl78/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/rx/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
sim/sh/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* interp.c: Update includes.
* configure, config.in: Rebuild.
sim/v850/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure, config.in: Rebuild.
|
|
GDB has required GNU make for quite some time, and this patch applies
this approach to the sim as well. Requiring GNU make means that
automatic dependency tracking can be simple and reliable, and it also
makes other refactorings simpler.
sim/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* m4/sim_ac_common.m4 (SIM_AC_COMMON): Don't check for make.
sim/aarch64/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/arm/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/avr/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/bfin/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/common/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* Make-common.in: Require GNU make.
sim/cr16/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/cris/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/d10v/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/erc32/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/example-synacor/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/frv/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/ft32/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/h8300/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/iq2000/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/lm32/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/m32c/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/m32r/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/m68hc11/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/mcore/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/microblaze/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/mips/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/mn10300/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/moxie/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/msp430/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/or1k/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/pru/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/riscv/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/rl78/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/rx/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/sh/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
sim/v850/ChangeLog
2021-04-22 Tom Tromey <tom@tromey.com>
* configure: Rebuild.
|
|
When building with clang, we get:
error: unknown warning option '-Wmissing-parameter-type' [-Werror,-Wunknown-warning-option]
This is because clang only warns by default when encountering an unknown
warning option, and the probe for supported warning flags is done
without -Werror. All flags are therefore accepted by configure, but
then it breaks when actually compiling a source file with -Werror.
This is equivalent to this commit in gdb:
3e019bdc20eb81b91ab5bc774386201b874c0bac
gdb: Use -Werror when checking for (un)supported warning flags
We then see some other compilation errors when building with clang and
-Werror, they can be dealt with later.
|
|
This avoids duplicate tests for headers between common m4, arches,
and any other sources that would trigger header tests.
|
|
This avoids duplicate tests for functions between common m4, arches,
and any other sources that would trigger func tests.
Also manually delete known duplicate function tests between the m4,
bfin, and v850 ports.
|
|
Provide a simple example simulator for people porting to new targets
to use as a reference. This one has the advantage of being used by
people and having a fun program available for it.
It doesn't require a special target -- the example simulators can be
built for any existing port.
|
|
Now that we have the common automake build with support for build-time
programs working, we can integrate the common tests into the default
`make check` flow.
|
|
This doesn't actually create one `run` program like other projects,
but creates multiple `run-$arch` targets. While it might not seem
that useful initially, this has some nice properties:
- Allows us to quickly build all sim targets in a single tree.
- Positions us better for converting targets over to a proper
multitarget build+install.
We don't have the ability to actually run tests against them, but
that's due to a limitation in gas: it doesn't support multitarget.
If that ever changes, we should be able to turn on our tests too.
We can improve the test framework to fallback to a system toolchain
if available to help mitigate that.
|
|
This simplifies the build a bit (especially for deps in port subdirs),
and avoids recursive make. This in turn speeds up the build, and sets
us up for multi-target.
|
|
The toplevel, common, and igen dirs all have their own code for
setting up toolchain settings. Unify all of that in a new macro.
|
|
The sim's recently switch to using Automake caused a build failure for
me, because I didn't have the correct auto* tools in my path.
However, the rule in the tree is that this is not needed in general.
This patch adds a call to AM_MAINTAINER_MODE, to align the sim with
the way the rest of the tree works here.
sim/ChangeLog
2021-03-08 Tom Tromey <tromey@adacore.com>
* aclocal.m4, configure, Makefile.in: Rebuild.
* configure.ac: Use AM_MAINTAINER_MODE.
|
|
This allows us to delete most of our custom test logic,
and avoids a recursive make for minor speed up.
|
|
This doesn't gain us much by itself, but it sets us up for using more
features as we try to unify ports and avoid recursive make.
|
|
Some sim dirs were already setting up CFLAGS_FOR_BUILD in inconsistent
ways. Move it to a common place for reuse.
|
|
Rather than require $AR be set and then default to `ar`, use the
standard AC_CHECK_TOOL helper to find a good prefixed tool. In
practice this shouldn't change much as we seem to have macros in
the tree that were already setting it up, but we shouldn't rely
on that implicitly.
|
|
All the scripts were using this implicitly already, so there's no real
change for them, but we want to call it explicitly as the CPP tool is
used to generate nltvals.def.
|
|
This was last used 15 years ago, so clearly not important enough to
keep around. Punt it.
|
|
We don't need a variable to add a dependency to the "all" target, and
having one doesn't really add value. Switch to the target directly for
the few ports that actually use this.
|
|
This file is quite large and is getting unmanageable. Split it apart
to follow aclocal best practices by putting one-macro-per-file. There
shouldn't be any real functional changes here as can be seen in the
configure script regens.
|
|
One fewer file to worry about & manage.
|
|
* Renamed obsolete UJ/SB types and RVC types, also added CSS/CL(CS) types,
[VALID/EXTRACT/ENCODE macros]
BTYPE_IMM: Renamed from SBTYPE_IMM.
JTYPE_IMM: Renamed from UJTYPE_IMM.
CITYPE_IMM: Renamed from RVC_IMM.
CITYPE_LUI_IMM: Renamed from RVC_LUI_IMM.
CITYPE_ADDI16SP_IMM: Renamed from RVC_ADDI16SP_IMM.
CITYPE_LWSP_IMM: Renamed from RVC_LWSP_IMM.
CITYPE_LDSP_IMM: Renamed from RVC_LDSP_IMM.
CIWTYPE_IMM: Renamed from RVC_UIMM8.
CIWTYPE_ADDI4SPN_IMM: Renamed from RVC_ADDI4SPN_IMM.
CSSTYPE_IMM: Added for .insn without special encoding.
CSSTYPE_SWSP_IMM: Renamed from RVC_SWSP_IMM.
CSSTYPE_SDSP_IMM: Renamed from RVC_SDSP_IMM.
CLTYPE_IMM: Added for .insn without special encoding.
CLTYPE_LW_IMM: Renamed from RVC_LW_IMM.
CLTYPE_LD_IMM: Renamed from RVC_LD_IMM.
RVC_SIMM3: Unused and removed.
CBTYPE_IMM: Renamed from RVC_B_IMM.
CJTYPE_IMM: Renamed from RVC_J_IMM.
* Added new operands and removed the unused ones,
C5: Unsigned CL(CS) immediate, added for .insn directive.
C6: Unsigned CSS immediate, added for .insn directive.
Ci: Unused and removed.
C<: Unused and removed.
bfd/
PR 27158
* elfnn-riscv.c (perform_relocation): Updated encoding macros.
(_bfd_riscv_relax_call): Likewise.
(_bfd_riscv_relax_lui): Likewise.
* elfxx-riscv.c (howto_table): Likewise.
gas/
PR 27158
* config/tc-riscv.c (riscv_ip): Updated encoding macros.
(md_apply_fix): Likewise.
(md_convert_frag_branch): Likewise.
(validate_riscv_insn): Likewise. Also arranged operands, including
added C5 and C6 operands, and removed unused Ci and C< operands.
* doc/c-riscv.texi: Updated and added CSS/CL/CS types.
* testsuite/gas/riscv/insn.d: Added CSS/CL/CS instructions.
* testsuite/gas/riscv/insn.s: Likewise.
gdb/
PR 27158
* riscv-tdep.c (decode_ci_type_insn): Updated encoding macros.
(decode_j_type_insn): Likewise.
(decode_cj_type_insn): Likewise.
(decode_b_type_insn): Likewise.
(decode): Likewise.
include/
PR 27158
* opcode/riscv.h: Updated encoding macros.
opcodes/
PR 27158
* riscv-dis.c (print_insn_args): Updated encoding macros.
* riscv-opc.c (MASK_RVC_IMM): defined to ENCODE_CITYPE_IMM.
(match_c_addi16sp): Updated encoding macros.
(match_c_lui): Likewise.
(match_c_lui_with_hint): Likewise.
(match_c_addi4spn): Likewise.
(match_c_slli): Likewise.
(match_slli_as_c_slli): Likewise.
(match_c_slli64): Likewise.
(match_srxi_as_c_srxi): Likewise.
(riscv_insn_types): Added .insn css/cl/cs.
sim/
PR 27158
* riscv/sim-main.c (execute_i): Updated encoding macros.
|
|
This is needed to move to automake & its dejagnu-provided logic,
and eventually by the unified sim logic. The $arch is used only
to figure out which `run` program to use when running tests, and
as we move to a single top-level build, we can delete this and
use sim/run directly.
|
|
Rather than hand maintain m4 includes in various autotool files,
use AC_CONFIG_MACRO_DIRS to declare the relevant search paths.
This simplifies the code, makes it more robust, and cleans out
unused logic from configure.
|
|
Few arches implement STATE_WATCHPOINTS()->pc while all of them implement
sim_pc_get. Lets switch the sim-watch core for monitoring pc events to
the sim_pc_get API so this module works for all ports, and then we can
delete this old back channel of snooping in the port's cpu state -- the
code needs the pointer to the pc storage so that it can read out bytes
and compare them to the watchrange.
This also fixes the logic on multi-cpu sims by removing the limitation
of only being able to watch CPU0's state.
|
|
These settings might have made sense in darker compiler times, but I
think they're largely obsolete now. Looking through the values that
get used in HDEFINES, it's quite limited, and configure itself should
handle them. If we still need something, we can leverage standard
autoconf macros instead, after we get a clear user report.
TDEFINES was never set anywhere and was always empty, so prune that.
|
|
This is a hand-written implementation that should have fairly complete
coverage for the base integer instruction set ("i"), and for the atomic
("a") and integer multiplication+division ("m") extensions. It also
covers 32-bit & 64-bit targets.
The unittest coverage is a bit weak atm, but should get better.
|
|
This tool is only run by developers and not in a release build,
so rewrite it in Python to make it more maintainable.
|
|
Existing ports already have sizeof_pc set to the same size as sim_cia,
so simply make that part of the core code. We already assume this in
places by way of sim_pc_{get,set}, and this is how it's documented in
the sim-base.h API.
There is code to allow sims to pick different register word sizes from
address sizes, but most ports use the defaults for both (32-bits), and
the few that support multiple register sizes never change the address
size (so address defaults to register). I can't think of any machine
where the register hardware size would be larger than the address word
size either. We have ABIs that behave that way (e.g. x32), but the
hardware is still equivalent register sized.
|
|
|
|
This was mostly orphaned a while back, but left behind so people could
still run `make headers`. Merge that one target to the top sim dir and
delete all the build logic. This should avoid confusing people further.
|
|
It's not 1996 anymore, so stop writing shell code like it is, and
rewrite it with modern POSIX shell standards. This makes it much
more user friendly.
Then regenerate the file with latest newlib sources to verify.
|
|
Now that we've moved all ports to dejagnu & testsuite/sim/, the only
thing the testsuite/configure script has been doing is filling in the
sim_arch field in the testsuite/Makefile. We can simply let the top
sim/configure script do that for us now. This simplifies & speeds up
the build a bit by killing an entire configure script.
|
|
The run.c interface was deleted long ago and everyone moved to nrun.c
(which is also the default), so no one needs to declare this anymore.
|
|
Support for sh64 was dropped from bfd et al in 2018. Without
that, the sim port is useless. So clean up this code too.
|
|
This was purged from the tree when we upgraded to autoconf-2.69,
but a few references in the sim tree were missed.
|
|
With GDB requiring a C++11 compiler now, this hopefully shouldn't
be a big deal. It's been 10 years since C11 came out, so should
be plenty of time to upgrade.
This will allow us to start cleaning up random header logic and
many of our non-standard custom types.
|
|
We don't want arch-specific entries in the common ChangeLog files.
Most arches do this already, so clean up the recent additions, and
move some older entries down to help avoid confusing newcomers.
|
|
I noticed a little diff when re-generating the configure file in this
directory.
sim/ChangeLog:
* bpf/configure: Re-generate.
Change-Id: Ieb26be2cc1be8108d4b08387255f45b57f288171
|
|
Moves some ChangeLog entries under sim/ into the correct files.
|
|
number.
bfd * po/es.po: Fix printf format
binutils * windmc.c: Fix printf format
gas * config/tc-arc.c: Fix printf format
opcodes * po/es.po: Fix printf format
sim * arm/armos.c: Fix printf format
* ppc/emul_netbsd.c: Fix printf format
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
|
|
The div and mod eBPF instructions are unsigned, but the semantic
specification for the simulator incorrectly used signed operators.
Correct them to unsigned versions, and correct the ALU tests in
the simulator (which incorrectly assumed signed semantics).
Tested in bpf-unknown-none.
cpu/ChangeLog:
2020-09-08 David Faust <david.faust@oracle.com>
* bpf.cpu (define-alu-instructions): Correct semantic operators
for div, mod to unsigned versions.
sim/ChangeLog:
2020-09-08 David Faust <david.faust@oracle.com>
* bpf/sem-be.c: Regenerate.
* bpf/sem-le.c: Likewise.
sim/testsuite/ChangeLog:
2020-09-08 David Faust <david.faust@oracle.com>
* sim/bpf/alu.s: Correct div and mod tests.
* sim/bpf/alu32.s: Likewise.
|
|
This patch fixes the following problems:
- Missing includes in several files leading to implicit function
declarations.
- Missing prototype for bpf_trace_printk in bpf-helpers.h
- The simulator bitsize was set to 32 bits, causing truncation of
the program counter.
Tested in bpf-unknown-none.
sim/ChangeLog:
2020-09-03 Jose E. Marchesi <jose.marchesi@oracle.com>
* bpf/bpf.c: Include bpf-helpers.h.
* bpf/bpf-helpers.h: Provide a prototype for bpf_trace_printk.
* bpf/configure.ac: Set simulator bitsize to 64.
* bpf/configure (includedir): Regenerate.
* bpf/sim-if.c: Include stdlib.h.
* bpf/traps.c: Likewise.
|
|
When building with a primary target that doesn't feature a simulator,
one would expect for nothing to be done in sim/. However, a
$(top_builddir)/sim/testsuite directory is created, with a Makefile
containing a rule like:
check-DEJAGNU: site.exp
echo "Dejagnu-checking in `pwd` directory ..."
rootme=`pwd`; export rootme; echo rootme = $$rootme; \
srcdir=`cd ${srcdir}; pwd`; export srcdir ; echo srcdir = $$srcdir; \
EXPECT=${EXPECT} ; export EXPECT ; echo EXPECT = $$EXPECT; \
if [ -f $$rootme/../../expect/expect ]; then \
TCL_LIBRARY=`cd $$srcdir/../../tcl/library && pwd`; \
export TCL_LIBRARY; \
fi; \
echo TCL_LIBRARY = $$TCL_LIBRARY; \
runtest=$(RUNTEST); echo runtest = $$runtest; \
if $(SHELL) -c "$$runtest --version" > /dev/null 2>&1; then \
$$runtest $(RUNTESTFLAGS); \
else echo "WARNING: could not find \`runtest'" 1>&2; :;\
fi
Consequently, when `make check' recurses into sim/testsuite, the above
rule is executed. Until now, the desired effect (of doing nothing)
was achieved because `runtest --version' fails due to a malformed
site.exp being generated in objdir: it is malformed because the
primary target doesn't configure a $sim_arch. i.e. this was doing the
right thing just by chance.
However, the git version of dejagnu seems to have changed in a way
runtest doesn't try to load site.exp when it gets --version. The net
effect is that the rule above tries to actually run the tests, failing
miserably.
This little patch makes sim/configure to not recurse into
sim/testsuite if the primary target didn't configure a simulator.
Tested with:
- A simulator target (bpf-unkonwn-none).
- A simulator-less target (x86_64-linux-gnu).
- A simulator-less target and --build-targets=all.
sim/ChangeLog:
2020-09-03 Jose E. Marchesi <jose.marchesi@oracle.com>
* configure.ac: Do not configure sim/testsuite nor sim/igen if the
primary target doesn't have a simulator.
* configure: Regenerate.
|
|
This patch adds the CGEN generated files for the eBPF simulator.
sim/ChangeLog:
2020-08-04 Jose E. Marchesi <jose.marchesi@oracle.com>
David Faust <david.faust@oracle.com>
* bpf/arch.c: Likewise.
* bpf/arch.h: Likewise.
* bpf/cpu.c: Likewise.
* bpf/cpu.h: Likewise.
* bpf/cpuall.h: Likewise.
* bpf/decode-be.c: Likewise.
* bpf/decode-be.h: Likewise.
* bpf/decode-le.c: Likewise.
* bpf/decode-le.h: Likewise.
* bpf/defs-be.h: Likewise.
* bpf/defs-le.h: Likewise.
* bpf/sem-be.c: Likewise.
* bpf/sem-le.c: Likewise.
|
|
This patch introduces the basics of an instruction-simulator for eBPF.
The simulator is based on CGEN.
gdb/ChangeLog:
2020-08-04 Jose E. Marchesi <jose.marchesi@oracle.com>
* configure.tgt: Set gdb_sim for bpf-*-* targets.
sim/ChangeLog:
2020-08-04 Jose E. Marchesi <jose.marchesi@oracle.com>
David Faust <david.faust@oracle.com>
* configure.tgt (sim_arch): Add entry for bpf-*-*.
* configure: Regenerate.
* MAINTAINERS: Add maintainer for the BPF simulator.
* bpf/Makefile.in: New file.
* bpf/bpf-helpers.c: Likewise.
* bpf/bpf-helpers.def: Likewise.
* bpf/bpf-helpers.h: Likewise.
* bpf/bpf-sim.h: Likewise.
* bpf/bpf.c: Likewise.
* bpf/config.in: Likewise.
* bpf/configure.ac: Likewise.
* bpf/decode.h: Likewise.
* bpf/eng.h: Likewise.
* bpf/mloop.in: Likewise.
* bpf/sim-if.c: Likewise.
* bpf/sim-main.h: Likewise.
* bpf/traps.c: Likewise.
* bpf/configure: Generate.
* bpf/aclocal.m4: Likewise.
sim/testsuite/ChangeLog:
2020-08-04 David Faust <david.faust@oracle.com>
Jose E. Marchesi <jose.marchesi@oracle.com>
* configure: Regenerate.
* sim/bpf/allinsn.exp: New file.
* sim/bpf/alu.s: Likewise.
* sim/bpf/alu32.s: Likewise.
* sim/bpf/endbe.s: Likewise.
* sim/bpf/endle.s: Likewise.
* sim/bpf/jmp.s: Likewise.
* sim/bpf/jmp32.s: Likewise.
* sim/bpf/ldabs.s: Likewise.
* sim/bpf/mem.s: Likewise.
* sim/bpf/mov.s: Likewise.
* sim/bpf/testutils.inc: Likewise.
* sim/bpf/xadd.s: Likewise.
|
|
PR build/24572 notes that "make install-strip" fails. For me, it
works in every directory except "sim", so this patch adds
install-strip targets to the Makefiles that appear there.
sim/ChangeLog
2019-12-19 Tom Tromey <tromey@adacore.com>
PR build/24572:
* Makefile.in (install-strip): New target.
sim/common/ChangeLog
2019-12-19 Tom Tromey <tromey@adacore.com>
PR build/24572:
* Makefile.in (install-strip): New target.
sim/igen/ChangeLog
2019-12-19 Tom Tromey <tromey@adacore.com>
PR build/24572:
* Makefile.in (install-strip): New target.
sim/ppc/ChangeLog
2019-12-19 Tom Tromey <tromey@adacore.com>
PR build/24572:
* Makefile.in (install-strip): New target.
sim/testsuite/ChangeLog
2019-12-19 Tom Tromey <tromey@adacore.com>
PR build/24572:
* Makefile.in (install-strip): New target.
Change-Id: I76613bc5c7e7812284f33826f8a5d914477fcdc5
|
|
A simulator port for the TI PRU I/O processor.
v1: https://sourceware.org/ml/gdb-patches/2016-12/msg00143.html
v2: https://sourceware.org/ml/gdb-patches/2017-02/msg00397.html
v3: https://sourceware.org/ml/gdb-patches/2017-02/msg00516.html
v4: https://sourceware.org/ml/gdb-patches/2018-06/msg00484.html
v5: https://sourceware.org/ml/gdb-patches/2019-08/msg00584.html
v6: https://sourceware.org/ml/gdb-patches/2019-09/msg00036.html
gdb/ChangeLog:
* NEWS: Mention new simulator port for PRU.
sim/ChangeLog:
* MAINTAINERS: Add myself as PRU maintainer.
* configure: Regenerated.
* configure.tgt: Add PRU.
sim/common/ChangeLog:
* gennltvals.sh: Add PRU libgloss target.
* nltvals.def: Regenerate from the latest libgloss sources.
sim/pru/ChangeLog:
* Makefile.in: New file.
* aclocal.m4: Regenerated.
* config.in: Regenerated.
* configure: Regenerated.
* configure.ac: New file.
* interp.c: New file.
* pru.h: New file.
* pru.isa: New file.
* sim-main.h: New file.
|