RRZE-HPC/likwid

[Build] Some x86 specific files are not filtered out with `COMPILER=GCCARM`

Closed this issue · 0 comments

Which version do you want to build?
v5.3.0 release and master branch

Which architecture do you want to build for?

  • ARMv8

To Reproduce

$ make COMPILER=GCCARM
Info: Compiling for perf_event interface. Measurements of thermal information is disabled
===>  COMPILE  GCCARM/access_x86.o
===>  COMPILE  GCCARM/access_x86_clientmem.o
===>  COMPILE  GCCARM/access_x86_mmio.o
===>  COMPILE  GCCARM/access_x86_msr.o
===>  COMPILE  GCCARM/access_x86_pci.o
===>  COMPILE  GCCARM/access_x86_rdpmc.o
/storage/users/unrz139/tau-likwid/likwid-5.3.0/src/access_x86_rdpmc.c: In function ‘__rdpmc’:
/storage/users/unrz139/tau-likwid/likwid-5.3.0/src/access_x86_rdpmc.c:77:5: error: impossible constraint in ‘asm’
   77 |     __asm__ volatile("rdpmc" : "=a" (low), "=d" (high) : "c" (counter));
...
===>  COMPILE  GCCARM/topology_cpuid.o
/storage/users/unrz139/tau-likwid/likwid-5.3.0/src/topology_cpuid.c: In function ‘intelCpuidFunc_4’:
/storage/users/unrz139/tau-likwid/likwid-5.3.0/src/topology_cpuid.c:75:9: warning: implicit declaration of function ‘CPUID’ [-Wimplicit-function-declaration]
   75 |         CPUID(eax, ebx, ecx, edx);

The Makefile and other scripts in make/ change how the build system behaves and filters out some files. This does not happen if COMPILER=GCCARM, so it tries to compile x86-specific instructions (rdpmc and cpuid).