diff options
Diffstat (limited to 'llvm/docs/CommandGuide')
-rw-r--r-- | llvm/docs/CommandGuide/llvm-exegesis.rst | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/llvm/docs/CommandGuide/llvm-exegesis.rst b/llvm/docs/CommandGuide/llvm-exegesis.rst index fdf17c7..c268153 100644 --- a/llvm/docs/CommandGuide/llvm-exegesis.rst +++ b/llvm/docs/CommandGuide/llvm-exegesis.rst @@ -33,11 +33,22 @@ snippets. SUPPORTED PLATFORMS ------------------- -:program:`llvm-exegesis` currently only supports X86 (64-bit only), ARM (AArch64 -only), MIPS, and PowerPC (PowerPC64LE only) on Linux for benchmarking. Not all -benchmarking functionality is guaranteed to work on every platform. -:program:`llvm-exegesis` also has a separate analysis mode that is supported -on every platform that LLVM is. +:program:`llvm-exegesis` currently only supports X86 (64-bit only), ARM +(AArch64 only, snippet generation is sparse), MIPS, and PowerPC (PowerPC64LE +only) on Linux for benchmarking. Not all benchmarking functionality is +guaranteed to work on every platform. :program:`llvm-exegesis` also has a +separate analysis mode that is supported on every platform that LLVM is. + +To enable benchmarking in llvm-exegesis, LLVM must be configured and built with +`LLVM_ENABLE_LIBPFM` enabled, as :program:`llvm-exegesis` depends on libpfm4 +for accessing performance counters. Benchmarking may fail if the target CPU is +unsupported by libpfm. This can be verified by setting `LIBPFM_VERBOSE` and +`LIBPFM_DEBUG` environment variables to enable verbose or debug mode for +libpfm. If libpfm is installed in a non-standard directory, LLVM can be +configured to locate the necessary library and header files by setting +`LIBRARY_PATH`, `C_INCLUDE_PATH`, and `CPLUS_INCLUDE_PATH` environment +variables. Additionally, `LD_LIBRARY_PATH` should be set so that +:program:`llvm-exegesis` can locate the libpfm library during execution. SNIPPET ANNOTATIONS ------------------- |