Giacomo Gabrielli has uploaded this change for review. (
https://gem5-review.googlesource.com/c/public/gem5/+/13522
Change subject: arch-arm: Treat SVE prefetch instructions as no-ops
......................................................................
arch-arm: Treat SVE prefetch instructions as no-ops
Change-Id: Ife0424e274dd65d6dc4f6e5cc5e37d17b03be0d8
Signed-off-by: Giacomo Gabrielli <[email protected]>
---
M src/arch/arm/isa/formats/sve_2nd_level.isa
1 file changed, 10 insertions(+), 6 deletions(-)
diff --git a/src/arch/arm/isa/formats/sve_2nd_level.isa
b/src/arch/arm/isa/formats/sve_2nd_level.isa
index a0e450a..a9c0ec9 100644
--- a/src/arch/arm/isa/formats/sve_2nd_level.isa
+++ b/src/arch/arm/isa/formats/sve_2nd_level.isa
@@ -2837,11 +2837,11 @@
uint8_t b14_13 = bits(machInst, 14, 13);
if (b14_13 == 0x2 && bits(machInst, 4) == 0) {
// TODO: SVE contiguous prefetch (scalar plus
scalar)
- return new Unknown64(machInst);
+ return new NopInst(machInst);
} else if (b14_13 == 0x3 && bits(machInst, 4) == 0) {
// TODO: SVE 32-bit gather prefetch (vector plus
// immediate)
- return new Unknown64(machInst);
+ return new NopInst(machInst);
}
}
}
@@ -2870,7 +2870,7 @@
case 0x0:
if (bits(machInst, 21) && bits(machInst, 4) == 0) {
// TODO: SVE 32-bit gather prefetch (vector plus
immediate)
- break;
+ return new NopInst(machInst);
}
break;
case 0x1:
@@ -2947,6 +2947,10 @@
uint64_t imm = sext<9>((bits(machInst, 21, 16) << 3) |
bits(machInst, 12, 10));
return new SveLdrVec(machInst, zt, rn, imm);
+ } else if (bits(machInst, 22) == 1 &&
+ bits(machInst, 4) == 0) {
+ // TODO: SVE contiguous prefetch (scalar plus
immediate)
+ return new NopInst(machInst);
}
break;
}
@@ -3117,7 +3121,7 @@
} else {
if (bits(machInst, 14, 13) == 0x3 && bits(machInst, 4) ==
0) {
// TODO: SVE 64-bit gather prefetch (vector plus
immediate)
- break;
+ return new NopInst(machInst);
}
}
break;
@@ -3144,7 +3148,7 @@
} else if (bits(machInst, 4) == 0) {
// TODO: SVE 64-bit gather prefetch (scalar plus unpacked
// 32-bit scaled offsets)
- return new Unknown64(machInst);
+ return new NopInst(machInst);
}
break;
case 0x3:
@@ -3187,7 +3191,7 @@
} else if (bits(machInst, 4) == 0) {
// TODO: SVE 64-bit gather prefetch (scalar plus 64-bit
// scaled offsets)
- break;
+ return new NopInst(machInst);
}
}
break;
--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/13522
To unsubscribe, or for help writing mail filters, visit
https://gem5-review.googlesource.com/settings
Gerrit-Project: public/gem5
Gerrit-Branch: master
Gerrit-Change-Id: Ife0424e274dd65d6dc4f6e5cc5e37d17b03be0d8
Gerrit-Change-Number: 13522
Gerrit-PatchSet: 1
Gerrit-Owner: Giacomo Gabrielli <[email protected]>
Gerrit-MessageType: newchange
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev