changeset 96dee874a9ba in /z/repo/gem5
details: http://repo.gem5.org/gem5?cmd=changeset;node=96dee874a9ba
description:
        arm: Add m5_fail support for aarch64

        Change-Id: Id2acbc09772be310a0eb9e33295afab07e08a4fa
        Reviewed-by: Andreas Sandberg <[email protected]>

diffstat:

 src/arch/arm/isa/formats/aarch64.isa |   1 +
 src/arch/arm/isa/insts/m5ops.isa     |  14 ++++++++++++++
 2 files changed, 15 insertions(+), 0 deletions(-)

diffs (42 lines):

diff -r 40c951e58c2b -r 96dee874a9ba src/arch/arm/isa/formats/aarch64.isa
--- a/src/arch/arm/isa/formats/aarch64.isa      Thu Sep 15 18:01:20 2016 +0100
+++ b/src/arch/arm/isa/formats/aarch64.isa      Thu Sep 15 18:21:24 2016 +0100
@@ -2013,6 +2013,7 @@
           case 0x11: return new Deprecated_ivle(machInst);
           case 0x20: return new Deprecated_exit (machInst);
           case 0x21: return new M5exit64(machInst);
+          case 0x22: return new M5fail64(machInst);
           case 0x31: return new Loadsymbol(machInst);
           case 0x30: return new Initparam64(machInst);
           case 0x40: return new Resetstats64(machInst);
diff -r 40c951e58c2b -r 96dee874a9ba src/arch/arm/isa/insts/m5ops.isa
--- a/src/arch/arm/isa/insts/m5ops.isa  Thu Sep 15 18:01:20 2016 +0100
+++ b/src/arch/arm/isa/insts/m5ops.isa  Thu Sep 15 18:21:24 2016 +0100
@@ -247,6 +247,11 @@
     m5fail_code = '''
         PseudoInst::m5fail(xc->tcBase(), join32to64(R1, R0), join32to64(R3, 
R2));
     '''
+
+    m5fail_code64 = '''
+        PseudoInst::m5fail(xc->tcBase(), X0, X1);
+    '''
+
     m5failIop = InstObjParams("m5fail", "M5fail", "PredOp",
                                    { "code": m5fail_code,
                                      "predicate_test": predicateTest },
@@ -255,6 +260,15 @@
     decoder_output += BasicConstructor.subst(m5failIop)
     exec_output += PredOpExecute.subst(m5failIop)
 
+    m5failIop = InstObjParams("m5fail", "M5fail64", "PredOp",
+                                   { "code": m5fail_code64,
+                                     "predicate_test": predicateTest },
+                                     ["No_OpClass", "IsNonSpeculative"])
+    header_output += BasicDeclare.subst(m5failIop)
+    decoder_output += BasicConstructor.subst(m5failIop)
+    exec_output += PredOpExecute.subst(m5failIop)
+
+
     m5exitIop = InstObjParams("m5exit", "M5exit64", "PredOp",
                                    { "code": m5exit_code64,
                                      "predicate_test": predicateTest },
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to