arch-arm: Fix printing of the data cache maintenance instructions
authorNikos Nikoleris <nikos.nikoleris@arm.com>
Wed, 20 Dec 2017 12:13:08 +0000 (12:13 +0000)
committerNikos Nikoleris <nikos.nikoleris@arm.com>
Wed, 7 Feb 2018 16:14:39 +0000 (16:14 +0000)
Change-Id: I2322c7bf65b38cb07a1ea2b5dc25dfc5a0496cf0
Reviewed-by: Jack Travaglini <giacomo.travaglini@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/7825
Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com>
src/arch/arm/insts/mem64.cc
src/arch/arm/insts/misc.cc
src/arch/arm/insts/misc.hh
src/arch/arm/isa/insts/data64.isa
src/arch/arm/isa/insts/misc.isa

index 0aee63f2c787b5b060fa799893aa4417d91acbf0..fa8fdf0af72a3f9e08a9536b19498fe9e046c589 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011-2013 ARM Limited
+ * Copyright (c) 2011-2013,2018 ARM Limited
  * All rights reserved
  *
  * The license below extends only to copyright in the software and shall
@@ -53,9 +53,8 @@ SysDC64::generateDisassembly(Addr pc, const SymbolTable *symtab) const
 {
     std::stringstream ss;
     printMnemonic(ss, "", false);
-    ccprintf(ss, ", [");
+    ccprintf(ss, ", ");
     printIntReg(ss, base);
-    ccprintf(ss, "]");
     return ss.str();
 }
 
index ba97eff091698504fd9d7ffb24a14b670fc95489..9c7a051f5dabac10fe839578d978d7ea923e11d2 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2012-2013, 2017 ARM Limited
+ * Copyright (c) 2010, 2012-2013, 2017-2018 ARM Limited
  * Copyright (c) 2013 Advanced Micro Devices, Inc.
  * All rights reserved
  *
@@ -321,16 +321,6 @@ RegImmRegShiftOp::generateDisassembly(Addr pc, const SymbolTable *symtab) const
     return ss.str();
 }
 
-std::string
-MiscRegRegImmMemOp::generateDisassembly(Addr pc,
-                                        const SymbolTable *symtab) const
-{
-    std::stringstream ss;
-    printMnemonic(ss);
-    printIntReg(ss, op1);
-    return ss.str();
-}
-
 std::string
 UnknownOp::generateDisassembly(Addr pc, const SymbolTable *symtab) const
 {
index 72d1694c9389638a15f20fd316b7ade1174d6231..5c387a5007a8cbb942d12c806538cebbaed5f35c 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2012-2013, 2017 ARM Limited
+ * Copyright (c) 2010, 2012-2013, 2017-2018 ARM Limited
  * All rights reserved
  *
  * The license below extends only to copyright in the software and shall
@@ -344,23 +344,6 @@ class RegImmRegShiftOp : public PredOp
     std::string generateDisassembly(Addr pc, const SymbolTable *symtab) const;
 };
 
-class MiscRegRegImmMemOp : public PredOp
-{
-  protected:
-    MiscRegIndex dest;
-    IntRegIndex op1;
-    uint64_t imm;
-
-    MiscRegRegImmMemOp(const char *mnem, ExtMachInst _machInst,
-                       OpClass __opClass, MiscRegIndex _dest, IntRegIndex _op1,
-                       uint64_t _imm) :
-        PredOp(mnem, _machInst, __opClass),
-        dest(_dest), op1(_op1), imm(_imm)
-    {}
-
-    std::string generateDisassembly(Addr pc, const SymbolTable *symtab) const;
-};
-
 class UnknownOp : public PredOp
 {
   protected:
index 41e36d350716f548decbb2ecf4b0178dc11244e3..dd87bed626a5486969d94561f68de3996b7c937e 100644 (file)
@@ -417,7 +417,7 @@ let {{
 
    '''
 
-    msrDCZVAIop = InstObjParams("dczva", "Dczva", "SysDC64",
+    msrDCZVAIop = InstObjParams("dc zva", "Dczva", "SysDC64",
                 { "ea_code" : msrdczva_ea_code,
                   "memacc_code" : ";", "use_uops" : 0,
                   "op_wb" : ";", "fa_code" : ";"}, ['IsStore', 'IsMemRef']);
index 8745e86bc83e379318c108fdd37d7ad3c6f5af38..cf3d0e00fe46d5bc71fc4255a0ff9690124b3429 100644 (file)
@@ -1,6 +1,6 @@
 // -*- mode:c++ -*-
 
-// Copyright (c) 2010-2013,2017 ARM Limited
+// Copyright (c) 2010-2013,2017-2018 ARM Limited
 // All rights reserved
 //
 // The license below extends only to copyright in the software and shall
@@ -1073,8 +1073,8 @@ let {{
                                             Request::DST_POC);
         EA = Op1;
     '''
-    McrDcimvacIop = InstObjParams("mcr dcimvac", "McrDcimvac",
-                                  "MiscRegRegImmMemOp",
+    McrDcimvacIop = InstObjParams("mcr", "McrDcimvac",
+                                  "MiscRegRegImmOp",
                                   {"memacc_code": McrDcCheckCode,
                                    "postacc_code": "",
                                    "ea_code": McrDcimvacCode,
@@ -1092,8 +1092,8 @@ let {{
                                             Request::DST_POC);
         EA = Op1;
     '''
-    McrDccmvacIop = InstObjParams("mcr dccmvac", "McrDccmvac",
-                                  "MiscRegRegImmMemOp",
+    McrDccmvacIop = InstObjParams("mcr", "McrDccmvac",
+                                  "MiscRegRegImmOp",
                                   {"memacc_code": McrDcCheckCode,
                                    "postacc_code": "",
                                    "ea_code": McrDccmvacCode,
@@ -1111,8 +1111,8 @@ let {{
                                             Request::DST_POU);
         EA = Op1;
     '''
-    McrDccmvauIop = InstObjParams("mcr dccmvau", "McrDccmvau",
-                                  "MiscRegRegImmMemOp",
+    McrDccmvauIop = InstObjParams("mcr", "McrDccmvau",
+                                  "MiscRegRegImmOp",
                                   {"memacc_code": McrDcCheckCode,
                                    "postacc_code": "",
                                    "ea_code": McrDccmvauCode,
@@ -1131,8 +1131,8 @@ let {{
                                             Request::DST_POC);
         EA = Op1;
     '''
-    McrDccimvacIop = InstObjParams("mcr dccimvac", "McrDccimvac",
-                                  "MiscRegRegImmMemOp",
+    McrDccimvacIop = InstObjParams("mcr", "McrDccimvac",
+                                  "MiscRegRegImmOp",
                                   {"memacc_code": McrDcCheckCode,
                                    "postacc_code": "",
                                    "ea_code": McrDccimvacCode,