diff options
author | Alex White <alex.white@oarcorp.com> | 2021-02-24 15:53:22 -0600 |
---|---|---|
committer | Joel Sherrill <joel@rtems.org> | 2021-03-30 13:15:57 -0500 |
commit | d9454cae2abe34a189f5956f93f8fb47c4a04834 (patch) | |
tree | 48030163aea7e6f93a7ca5c4081f467c6721b510 /tester/covoar/Target_aarch64.h | |
parent | covoar/TargetBase: Rename branchInstructions to conditionalBranchInstructions (diff) | |
download | rtems-tools-d9454cae2abe34a189f5956f93f8fb47c4a04834.tar.bz2 |
covoar: Add aarch64 target
Diffstat (limited to 'tester/covoar/Target_aarch64.h')
-rw-r--r-- | tester/covoar/Target_aarch64.h | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/tester/covoar/Target_aarch64.h b/tester/covoar/Target_aarch64.h new file mode 100644 index 0000000..26fedb6 --- /dev/null +++ b/tester/covoar/Target_aarch64.h @@ -0,0 +1,77 @@ +/*! @file Target_aarch64.h + * @brief Target_aarch64 Specification + * + * This file contains the specification of the Target_aarch64 class. + */ + +#ifndef __TARGET_AARCH64_H__ +#define __TARGET_AARCH64_H__ + +#include <list> +#include <string> +#include "TargetBase.h" + +namespace Target { + + /*! @class Target_aarch64 + * + * This class is the Target class for the aarch64 processor. + * + */ + class Target_aarch64: public TargetBase { + + public: + + /*! + * This method constructs an Target_aarch64 instance. + */ + Target_aarch64( std::string targetName ); + + /*! + * This method destructs an Target_aarch64 instance. + */ + virtual ~Target_aarch64(); + + /*! + * This method determines whether the specified line from a + * objdump file is a nop instruction. + * + * @param[in] line contains the object dump line to check + * @param[out] size is set to the size in bytes of the nop + * + * @return Returns TRUE if the instruction is a nop, FALSE otherwise. + */ + bool isNopLine( + const char* const line, + int& size + ); + + /*! + * This method determines if the specified line from an + * objdump file is a branch instruction. + */ + bool isBranch( + const char* const instruction + ); + + private: + + }; + + //! + //! @brief Constructor Helper + //! + //! This is a constructor helper for this class which can be used in support + //! of factories. + //! + //! @param [in] Targetname is the name of the Target being constructed. + //! + //! @return This method constructs a new instance of the Target and returns + //! that to the caller. + //! + TargetBase *Target_aarch64_Constructor( + std::string targetName + ); + +} +#endif |