[llvm] 9fe45fc - [Docs][llvm-exegesis] Specify supported platforms and architectures

Aiden Grossman via llvm-commits llvm-commits at lists.llvm.org
Sat May 13 02:07:00 PDT 2023


Author: Aiden Grossman
Date: 2023-05-13T09:05:39Z
New Revision: 9fe45fcba7ea785844d9a3c10f3b0a2269afab93

URL: https://github.com/llvm/llvm-project/commit/9fe45fcba7ea785844d9a3c10f3b0a2269afab93
DIFF: https://github.com/llvm/llvm-project/commit/9fe45fcba7ea785844d9a3c10f3b0a2269afab93.diff

LOG: [Docs][llvm-exegesis] Specify supported platforms and architectures

Currently, there is no documentation on what platforms and architectures
llvm-exegesis is supported on. This patch adds in user-facing
documentation in the CommandGuide about what architectures are supported
as well as developer facing documentation detailing the technical
reasons for why certain platforms are supported and some aren't.

This is a follow-up after discussion in
https://discourse.llvm.org/t/clarification-on-platform-support-for-llvm-exegesis/70206.

Reviewed By: kpdev42

Differential Revision: https://reviews.llvm.org/D149378

Added: 
    llvm/tools/llvm-exegesis/README.md

Modified: 
    llvm/docs/CommandGuide/llvm-exegesis.rst

Removed: 
    


################################################################################
diff  --git a/llvm/docs/CommandGuide/llvm-exegesis.rst b/llvm/docs/CommandGuide/llvm-exegesis.rst
index bede7d2a9d7a9..f6f2e2710d2b1 100644
--- a/llvm/docs/CommandGuide/llvm-exegesis.rst
+++ b/llvm/docs/CommandGuide/llvm-exegesis.rst
@@ -30,6 +30,13 @@ scheduling models. To that end, we also provide analysis of the results.
 :program:`llvm-exegesis` can also benchmark arbitrary user-provided code
 snippets.
 
+SUPPORTED PLATFORMS
+-------------------
+
+:program:`llvm-exegesis` currently only supports X86 (64-bit only), ARM (AArch64
+only), MIPS, and PowerPC (PowerPC64LE only) on Linux. Not all functionality is
+guaranteed to work on every platform.
+
 SNIPPET ANNOTATIONS
 -------------------
 

diff  --git a/llvm/tools/llvm-exegesis/README.md b/llvm/tools/llvm-exegesis/README.md
new file mode 100644
index 0000000000000..c478b56586b83
--- /dev/null
+++ b/llvm/tools/llvm-exegesis/README.md
@@ -0,0 +1,29 @@
+# llvm-exegesis
+
+`llvm-exegesis` is a benchmarking tool that accepts or assembles a snippet and
+can measure characteristics of that snippet by executing it while keeping track
+of performance counters.
+
+### Currently Supported Platforms
+
+`llvm-exegesis` is quite platform-dependent and currently only supports a couple
+platform configurations.
+
+##### Currently Supported Operating Systems
+
+Currently, `llvm-exegesis` only supports Linux. This is mainly due to a
+dependency on the Linux perf subsystem for reading performance counters.
+
+##### Currently Supported Architectures
+
+Currently, `llvm-exegesis` supports the following architectures:
+
+* x86
+  * 64-bit only due to this being the only implemented calling convention
+    in `llvm-exegesis` currently.
+* ARM
+  * AArch64 only
+* MIPS
+* PowerPC (PowerPC64LE only)
+
+Note that not all functionality is guaranteed to work on all architectures.


        


More information about the llvm-commits mailing list