source: rtems-tools/tester/covoar/Target_aarch64.h @ d9454ca

Last change on this file since d9454ca was d9454ca, checked in by Alex White <alex.white@…>, on Feb 24, 2021 at 9:53:22 PM

covoar: Add aarch64 target

  • Property mode set to 100644
File size: 1.7 KB
Line 
1/*! @file Target_aarch64.h
2 *  @brief Target_aarch64 Specification
3 *
4 *  This file contains the specification of the Target_aarch64 class.
5 */
6
7#ifndef __TARGET_AARCH64_H__
8#define __TARGET_AARCH64_H__
9
10#include <list>
11#include <string>
12#include "TargetBase.h"
13
14namespace Target {
15
16  /*! @class Target_aarch64
17   *
18   *  This class is the Target class for the aarch64 processor.
19   *
20   */
21  class Target_aarch64: public TargetBase {
22
23  public:
24
25    /*!
26     *  This method constructs an Target_aarch64 instance.
27     */
28    Target_aarch64( std::string targetName );
29
30    /*!
31     *  This method destructs an Target_aarch64 instance.
32     */
33    virtual ~Target_aarch64();
34
35    /*!
36     *  This method determines whether the specified line from a
37     *  objdump file is a nop instruction.
38     *
39     *  @param[in] line contains the object dump line to check
40     *  @param[out] size is set to the size in bytes of the nop
41     *
42     *  @return Returns TRUE if the instruction is a nop, FALSE otherwise.
43     */
44    bool isNopLine(
45      const char* const line,
46      int&              size
47    );
48
49    /*!
50     *  This method determines if the specified line from an
51     *  objdump file is a branch instruction.
52     */
53    bool isBranch(
54      const char* const instruction
55    );
56
57  private:
58
59  };
60
61  //!
62  //! @brief Constructor Helper
63  //!
64  //! This is a constructor helper for this class which can be used in support
65  //! of factories.
66  //!
67  //! @param [in] Targetname is the name of the Target being constructed.
68  //!
69  //! @return This method constructs a new instance of the Target and returns
70  //!         that to the caller.
71  //!
72  TargetBase *Target_aarch64_Constructor(
73    std::string          targetName
74  );
75
76}
77#endif
Note: See TracBrowser for help on using the repository browser.