This PR adds initial support for building and running pmbench for AArch64 on Linux.
Â
Example build command line:
make pmbench march=aarch64
Â
Makefile: Add required defs to differentiate between x86 and AArch64
access.c: Add generic C code for read/write access
x86 probably uses more efficient assembly code for that. C code should be fine given that it's accessing volatile data so that the compiler does not optimise it away. Guard x86 assembly code with x86 and use generic C code for other architectures, including aarch64.
aarch64: Implement rdtsc[p]-like function using aarch64's virtual counter
aarch64: Use generic C code for __my_flsl
aarch64: Implement __pause and guard x86 instruction
aarch64: Implement get frequency and guard x86 code
This PR adds initial support for building and running pmbench for AArch64 on Linux.
Â
Example build command line:
make pmbench march=aarch64
Â
Makefile: Add required defs to differentiate between x86 and AArch64
access.c: Add generic C code for read/write access
x86 probably uses more efficient assembly code for that. C code should be fine given that it's accessing volatile data so that the compiler does not optimise it away. Guard x86 assembly code with x86 and use generic C code for other architectures, including aarch64.
aarch64: Implement rdtsc[p]-like function using aarch64's virtual counter
aarch64: Use generic C code for __my_flsl
aarch64: Implement __pause and guard x86 instruction
aarch64: Implement get frequency and guard x86 code
aarch64: Guard x86's _sys_cpuid assembly
Â