diff options
author | Gabe Black <gblack@eecs.umich.edu> | 2010-06-02 12:58:04 -0500 |
---|---|---|
committer | Gabe Black <gblack@eecs.umich.edu> | 2010-06-02 12:58:04 -0500 |
commit | 2f3102f1ef02977a4489fa0442ba7d6aed8e2855 (patch) | |
tree | b956e8b03db885e5a8e942fea77f0e6429b5ba0a /src | |
parent | 739f23c64c88c2c5d57085eae7687e16cb0a90f6 (diff) | |
download | gem5-2f3102f1ef02977a4489fa0442ba7d6aed8e2855.tar.xz |
ARM: Add templates for VFP load/store multiple instructions.
Diffstat (limited to 'src')
-rw-r--r-- | src/arch/arm/isa/templates/macromem.isa | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/arch/arm/isa/templates/macromem.isa b/src/arch/arm/isa/templates/macromem.isa index de5279392..400342a29 100644 --- a/src/arch/arm/isa/templates/macromem.isa +++ b/src/arch/arm/isa/templates/macromem.isa @@ -131,3 +131,30 @@ def template MacroMemConstructor {{ } }}; + +def template MacroVFPMemDeclare {{ +/** + * Static instructions class for a store multiple instruction + */ +class %(class_name)s : public %(base_class)s +{ + public: + // Constructor + %(class_name)s(ExtMachInst machInst, IntRegIndex rn, + RegIndex vd, bool single, bool up, bool writeback, + bool load, uint32_t offset); + %(BasicExecPanic)s +}; +}}; + +def template MacroVFPMemConstructor {{ +%(class_name)s::%(class_name)s(ExtMachInst machInst, IntRegIndex rn, + RegIndex vd, bool single, bool up, bool writeback, bool load, + uint32_t offset) + : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s, rn, + vd, single, up, writeback, load, offset) +{ + %(constructor)s; +} + +}}; |