1 //===-------------------------- HardwareUnit.h ------------------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 /// \file
9 ///
10 /// This file defines a base class for describing a simulated hardware
11 /// unit.  These units are used to construct a simulated backend.
12 ///
13 //===----------------------------------------------------------------------===//
14 
15 #ifndef LLVM_MCA_HARDWAREUNIT_H
16 #define LLVM_MCA_HARDWAREUNIT_H
17 
18 namespace llvm {
19 namespace mca {
20 
21 class HardwareUnit {
22   HardwareUnit(const HardwareUnit &H) = delete;
23   HardwareUnit &operator=(const HardwareUnit &H) = delete;
24 
25 public:
26   HardwareUnit() = default;
27   virtual ~HardwareUnit();
28 };
29 
30 } // namespace mca
31 } // namespace llvm
32 #endif // LLVM_MCA_HARDWAREUNIT_H
33