Merge pull request #862 from r-a-sattarov/optick-e2k-support

Optick: Add e2k support
This commit is contained in:
Robert Beckebans 2024-02-25 11:45:19 +01:00 committed by GitHub
commit 5a924667d6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 11 additions and 0 deletions

View file

@ -56,6 +56,9 @@
# elif defined(__arm__) || defined(_M_ARM)
# define OPTICK_ARM (1)
# define OPTICK_32BIT (1)
# elif defined(__e2k__)
# define OPTICK_E2K (1)
# define OPTICK_64BIT (1)
# endif
#else
#error Compiler not supported

View file

@ -745,6 +745,8 @@ bool SwitchContextCollector::Serialize(OutputDataStream& stream)
#define CPUID(INFO, ID) __cpuid(INFO, ID)
#elif (defined(__ANDROID__) || defined(OPTICK_ARM))
// Nothing
#elif defined(OPTICK_E2K)
// Nothing
#elif defined(OPTICK_GCC)
#include <cpuid.h>
#define CPUID(INFO, ID) __cpuid(ID, INFO[0], INFO[1], INFO[2], INFO[3])
@ -773,6 +775,12 @@ string GetCPUName()
#else
return "ARM 64-bit";
#endif
#elif defined(OPTICK_E2K)
#if (defined(__LCC__) && defined(__MCST__)) // MCST LCC (eLbrus Compiler Collection)
return __builtin_cpu_name(); // e.g. elbrus-8c
#else
return "MCST Elbrus CPU";
#endif
#else
int cpuInfo[4] = { -1 };
char cpuBrandString[0x40] = { 0 };