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 18namespace llvm { 19namespace mca { 20 21class HardwareUnit { 22 HardwareUnit(const HardwareUnit &H) = delete; 23 HardwareUnit &operator=(const HardwareUnit &H) = delete; 24 25public: 26 HardwareUnit() = default; 27 virtual ~HardwareUnit(); 28}; 29 30} // namespace mca 31} // namespace llvm 32#endif // LLVM_MCA_HARDWAREUNITS_HARDWAREUNIT_H 33