History log of /gem5/util/m5/m5op_arm.S
Revision Date Author Comments
# 12157:c27b548bad70 27-Jul-2017 Andreas Sandberg <andreas.sandberg@arm.com>

util: Move the m5ops.h file to a shared directory

The header file m5ops.h contains a list of constants that should be
shared between the simulator and utilities. Move this header file to a
new top-level directory for shared files and rename constants to make
them suitable for inclusion in the main simulator.

The structure of the shared include directory is as follows:

include/gem5: Files that can be included from C code.
include/gem5/asm: Files that can be included from assembly code.
asm/generic/: Files that aren't guest ISA specific
asm/${isa}/: Files that are guest ISA specific

Change-Id: I1aa511057bcaa80cc2d566109ff26581558c4a41
Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com>
Reviewed-by: Jose Marinho <jose.marinho@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/4261
Reviewed-by: Jason Lowe-Power <jason@lowepower.com>


# 11411:2201a8c86538 30-Mar-2016 Andreas Sandberg <andreas.sandberg@arm.com>

arm: Clean up m5ops assembly library

The m5ops assembly library contains a lot of repetitive code. This
changeset adds two macros, FOREACH_M5OP and FOREACH_M5_ANNOTATION, to
m5ops.h that simplify architecture-specific implementations. The ARM
and ARMv8 m5op implementations have been updated to use the new
macros.

Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com>
Reviewed-by: Curtis Dunham <curtis.dunham@arm.com>


# 9949:7890c22dad25 31-Oct-2013 Ali Saidi <Ali.Saidi@ARM.com>

arm: fix m5ops binary for ARM and add m5fail.

Changes to make m5ops work under virtualization seemed to break them working
with non-virtualized systems and the recently added m5 fail command makes
the m5op binary not compile. For now remove the code for virtualization.


# 9687:22e9258c06bb 14-May-2013 Andreas Sandberg <andreas@sandberg.pp.se>

arm: Add support for the m5fail pseudo-op


# 9686:13a4419f09c5 14-May-2013 Andreas Sandberg <andreas@sandberg.pp.se>

arm: Fix compilation error in m5 utility

Changeset 5ca6098b9560 accidentally broke the m5 utility. This
changeset adds the missing co-processor call used to trigger the
pseudo-op in ARM mode and fixes an alignment issue that caused some
pseudo-ops to leave thumb mode.


# 9660:5ca6098b9560 22-Apr-2013 Andreas Sandberg <Andreas.Sandberg@ARM.com>

kvm: Add support for pseudo-ops on ARM

This changeset adds support for m5 pseudo-ops when running in
kvm-mode. Unfortunately, we can't trap the normal gem5 co-processor
entry in KVM (it doesn't seem to be possible to trap accesses to
non-existing co-processors). We therefore use BZJ instructions to
cause a trap from virtualized mode into gem5. The BZJ instruction is
becomes a normal branch to the gem5 fallback code when running in
simulated mode, which means that this patch does not need to change
the ARM ISA-specific code.

Note: This requires a patched host kernel.


# 8987:a5add07e066c 10-May-2012 Ali Saidi <Ali.Saidi@ARM.com>

ARM: Update m5op assembly for thumb compilation.


# 8734:79592b2b1d55 31-Jan-2012 Dam Sunwoo <dam.sunwoo@arm.com>

util: implements "writefile" gem5 op to export file from guest to host filesystem

Usage: m5 writefile <filename>

File will be created in the gem5 output folder with the identical filename.
Implementation is largely based on the existing "readfile" functionality.
Currently does not support exporting of folders.


# 8355:89071b71691e 17-Jun-2011 Ali Saidi <Ali.Saidi@ARM.com>

ARM: Cleanup m5ops usage of r0 and r1 a bit.


# 8354:26be660e365a 17-Jun-2011 Gedare Bloom <gedare@gwmail.gwu.edu>

ARM: Add m5ops and related support for workbegin() and workend() to ARM ISA.


# 7732:a2c660de7787 08-Nov-2010 Ali Saidi <Ali.Saidi@ARM.com>

ARM: Add support for M5 ops in the ARM ISA