diff options
author | Alex White <alex.white@oarcorp.com> | 2021-04-16 13:24:15 -0500 |
---|---|---|
committer | Joel Sherrill <joel@rtems.org> | 2021-04-16 17:27:40 -0500 |
commit | 0c4884a0d071dd56e6eb8f67ea6d1a5092d6830e (patch) | |
tree | f75474a196956d54dee965d15d3ae79c765a737a | |
parent | Revert "covoar/TargetBase: Fix QEMU branch info" (diff) | |
download | rtems-tools-0c4884a0d071dd56e6eb8f67ea6d1a5092d6830e.tar.bz2 |
covoar/Target_aarch64: Swap QEMU taken/not taken bits
This overrides the `TargetBase` behavior to allow branches to be marked
correctly as either taken or not taken.
Closes #4387
-rw-r--r-- | tester/covoar/Target_aarch64.cc | 11 | ||||
-rw-r--r-- | tester/covoar/Target_aarch64.h | 6 |
2 files changed, 17 insertions, 0 deletions
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: }; |