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_HARDWAREUNITS_HARDWAREUNIT_H 16 #define LLVM_MCA_HARDWAREUNITS_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_HARDWAREUNITS_HARDWAREUNIT_H 33