[PATCH] covoar/Target_aarch64: Swap QEMU taken/not taken bits
Alex White
alex.white at oarcorp.com
Fri Apr 16 19:25:01 UTC 2021
This overrides the `TargetBase` behavior to allow branches to be marked
correctly as either taken or not taken.
Closes #4387
---
tester/covoar/Target_aarch64.cc | 11 +++++++++++
tester/covoar/Target_aarch64.h | 6 ++++++
2 files changed, 17 insertions(+)
diff --git a/tester/covoar/Target_aarch64.cc b/tester/covoar/Target_aarch64.cc
index 64472d6..4d16456 100644
--- a/tester/covoar/Target_aarch64.cc
+++ b/tester/covoar/Target_aarch64.cc
@@ -12,6 +12,7 @@
#include <rld.h>
+#include "qemu-traces.h"
#include "Target_aarch64.h"
namespace Target {
@@ -90,6 +91,16 @@ namespace Target {
);
}
+ uint8_t Target_aarch64::qemuTakenBit()
+ {
+ return TRACE_OP_BR1;
+ }
+
+ uint8_t Target_aarch64::qemuNotTakenBit()
+ {
+ return TRACE_OP_BR0;
+ }
+
TargetBase *Target_aarch64_Constructor(
std::string targetName
)
diff --git a/tester/covoar/Target_aarch64.h b/tester/covoar/Target_aarch64.h
index 26fedb6..08bd1fb 100644
--- a/tester/covoar/Target_aarch64.h
+++ b/tester/covoar/Target_aarch64.h
@@ -54,6 +54,12 @@ namespace Target {
const char* const instruction
);
+ /* Documentation inherited from base class */
+ uint8_t qemuTakenBit() override;
+
+ /* Documentation inherited from base class */
+ uint8_t qemuNotTakenBit() override;
+
private:
};
--
2.27.0
More information about the devel
mailing list