llvm-project/llvm/lib/MCA/HardwareUnits
Andrea Di Biagio dd0d9e01ee [MCA] Introduce class LSUnitBase and let LSUnit derive from it.
Class LSUnitBase provides a abstract interface for all the concrete LS units in
llvm-mca.

Methods exposed by the public abstract LSUnitBase interface are:
 - Status isAvailable(const InstRef&);
 - void dispatch(const InstRef &);
 - const InstRef &isReady(const InstRef &);

LSUnitBase standardises the API, but not the data structures internally used by
LS units. This allows for more flexibility.
Previously, only method `isReady()` was declared virtual by class LSUnit.
Also, derived classes had to inherit all the internal data members of LSUnit.

No functional change intended.

llvm-svn: 361496
2019-05-23 13:42:47 +00:00
..
HardwareUnit.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LSUnit.cpp [MCA] Introduce class LSUnitBase and let LSUnit derive from it. 2019-05-23 13:42:47 +00:00
RegisterFile.cpp [MCA] Correctly update register definitions in the PRF after move elimination. 2019-02-18 14:15:25 +00:00
ResourceManager.cpp [MCA][ResourceManager] Add a table that maps processor resource indices to processor resource identifiers. 2019-02-20 14:53:18 +00:00
RetireControlUnit.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Scheduler.cpp [MCA] Introduce class LSUnitBase and let LSUnit derive from it. 2019-05-23 13:42:47 +00:00