2020-04-26 20:24:39 +00:00
|
|
|
#include <stdint.h>
|
|
|
|
|
|
|
|
namespace tracy
|
|
|
|
{
|
|
|
|
|
|
|
|
struct AsmDesc
|
|
|
|
{
|
|
|
|
uint8_t type;
|
|
|
|
uint16_t width;
|
|
|
|
};
|
|
|
|
|
|
|
|
struct AsmVar
|
|
|
|
{
|
|
|
|
int descNum;
|
|
|
|
AsmDesc desc[5];
|
|
|
|
int isaSet;
|
|
|
|
float tp;
|
|
|
|
int port, uops, minlat, maxlat;
|
|
|
|
bool minbound, maxbound;
|
|
|
|
};
|
|
|
|
|
|
|
|
struct AsmOp
|
|
|
|
{
|
|
|
|
int id;
|
2020-11-06 22:56:26 +00:00
|
|
|
int descId;
|
2020-04-26 20:24:39 +00:00
|
|
|
int numVariants;
|
|
|
|
const AsmVar*const* variant;
|
|
|
|
};
|
|
|
|
|
|
|
|
struct MicroArchitecture
|
|
|
|
{
|
|
|
|
int numOps;
|
|
|
|
const AsmOp*const* ops;
|
|
|
|
};
|
|
|
|
|
|
|
|
extern const char* MicroArchitectureList[];
|
|
|
|
extern const char* PortList[];
|
|
|
|
extern const char* OpsList[];
|
|
|
|
extern const char* IsaList[];
|
|
|
|
extern const MicroArchitecture* const MicroArchitectureData[];
|
|
|
|
|
|
|
|
extern int OpsNum;
|
|
|
|
extern int MicroArchitectureNum;
|
|
|
|
|
|
|
|
};
|