[PATCH] D109353: [llvm-exegesis] Analysis tests should run even without libpfm (PR51687)
Simon Pilgrim via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 7 06:03:42 PDT 2021
This revision was automatically updated to reflect the committed changes.
Closed by commit rG6a9e2764f64a: [llvm-exegesis] Analysis tests should run even without libpfm (PR51687) (authored by RKSimon).
Changed prior to commit:
https://reviews.llvm.org/D109353?vs=371039&id=371050#toc
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D109353/new/
https://reviews.llvm.org/D109353
Files:
llvm/test/tools/llvm-exegesis/X86/inverse_throughput-by-opcode-name.s
llvm/test/tools/llvm-exegesis/X86/inverse_throughput/inverse_throughput-by-opcode-name.s
llvm/test/tools/llvm-exegesis/X86/inverse_throughput/lit.local.cfg
llvm/test/tools/llvm-exegesis/X86/latency-CMOV32rr.s
llvm/test/tools/llvm-exegesis/X86/latency-IN16rr.s
llvm/test/tools/llvm-exegesis/X86/latency-LEA64_32r.s
llvm/test/tools/llvm-exegesis/X86/latency-LEA64r.s
llvm/test/tools/llvm-exegesis/X86/latency-SBB8rr.s
llvm/test/tools/llvm-exegesis/X86/latency-SETCCr-cond-codes-sweep.s
llvm/test/tools/llvm-exegesis/X86/latency-SQRTSSr.s
llvm/test/tools/llvm-exegesis/X86/latency-by-opcode-name.s
llvm/test/tools/llvm-exegesis/X86/latency/latency-CMOV32rr.s
llvm/test/tools/llvm-exegesis/X86/latency/latency-IN16rr.s
llvm/test/tools/llvm-exegesis/X86/latency/latency-LEA64_32r.s
llvm/test/tools/llvm-exegesis/X86/latency/latency-LEA64r.s
llvm/test/tools/llvm-exegesis/X86/latency/latency-SBB8rr.s
llvm/test/tools/llvm-exegesis/X86/latency/latency-SETCCr-cond-codes-sweep.s
llvm/test/tools/llvm-exegesis/X86/latency/latency-SQRTSSr.s
llvm/test/tools/llvm-exegesis/X86/latency/latency-by-opcode-name.s
llvm/test/tools/llvm-exegesis/X86/latency/lit.local.cfg
llvm/test/tools/llvm-exegesis/X86/latency/max-configs.test
llvm/test/tools/llvm-exegesis/X86/lit.local.cfg
llvm/test/tools/llvm-exegesis/X86/max-configs.test
llvm/test/tools/llvm-exegesis/X86/uops-ADD32mi8.s
llvm/test/tools/llvm-exegesis/X86/uops-ADD32mr.s
llvm/test/tools/llvm-exegesis/X86/uops-ADD32rm.s
llvm/test/tools/llvm-exegesis/X86/uops-ADD_F32m.s
llvm/test/tools/llvm-exegesis/X86/uops-BEXTR32rm.s
llvm/test/tools/llvm-exegesis/X86/uops-BSF16rm.s
llvm/test/tools/llvm-exegesis/X86/uops-BTR64mr.s
llvm/test/tools/llvm-exegesis/X86/uops-CMOV16rm-noreg.s
llvm/test/tools/llvm-exegesis/X86/uops-FLDENVm.s
llvm/test/tools/llvm-exegesis/X86/uops-LEA64r.s
llvm/test/tools/llvm-exegesis/X86/uops-POPCNT32rr.s
llvm/test/tools/llvm-exegesis/X86/uops-STD.s
llvm/test/tools/llvm-exegesis/X86/uops-VFMADDSS4rm.s
llvm/test/tools/llvm-exegesis/X86/uops-XCHG64rr.s
llvm/test/tools/llvm-exegesis/X86/uops-by-opcode-name.s
llvm/test/tools/llvm-exegesis/X86/uops-misspelled-div.s
llvm/test/tools/llvm-exegesis/X86/uops/lit.local.cfg
llvm/test/tools/llvm-exegesis/X86/uops/uops-ADD32mi8.s
llvm/test/tools/llvm-exegesis/X86/uops/uops-ADD32mr.s
llvm/test/tools/llvm-exegesis/X86/uops/uops-ADD32rm.s
llvm/test/tools/llvm-exegesis/X86/uops/uops-ADD_F32m.s
llvm/test/tools/llvm-exegesis/X86/uops/uops-BEXTR32rm.s
llvm/test/tools/llvm-exegesis/X86/uops/uops-BSF16rm.s
llvm/test/tools/llvm-exegesis/X86/uops/uops-BTR64mr.s
llvm/test/tools/llvm-exegesis/X86/uops/uops-CMOV16rm-noreg.s
llvm/test/tools/llvm-exegesis/X86/uops/uops-FLDENVm.s
llvm/test/tools/llvm-exegesis/X86/uops/uops-LEA64r.s
llvm/test/tools/llvm-exegesis/X86/uops/uops-POPCNT32rr.s
llvm/test/tools/llvm-exegesis/X86/uops/uops-STD.s
llvm/test/tools/llvm-exegesis/X86/uops/uops-VFMADDSS4rm.s
llvm/test/tools/llvm-exegesis/X86/uops/uops-XCHG64rr.s
llvm/test/tools/llvm-exegesis/X86/uops/uops-by-opcode-name.s
llvm/test/tools/llvm-exegesis/X86/uops/uops-misspelled-div.s
Index: llvm/test/tools/llvm-exegesis/X86/uops/lit.local.cfg
===================================================================
--- llvm/test/tools/llvm-exegesis/X86/uops/lit.local.cfg
+++ llvm/test/tools/llvm-exegesis/X86/uops/lit.local.cfg
@@ -22,12 +22,8 @@
with open(os.devnull, 'w') as quiet:
check_llvm_exegesis_uops_result = subprocess.call(
[llvm_exegesis_exe, '-mode', 'uops', '-snippets-file', '/dev/null'], stdout=quiet, stderr=quiet)
- check_llvm_exegesis_latency_result = subprocess.call(
- [llvm_exegesis_exe, '-mode', 'latency', '-snippets-file', '/dev/null'], stdout=quiet, stderr=quiet)
except OSError:
print('could not exec llvm-exegesis')
config.unsupported = True
if not check_llvm_exegesis_uops_result == 0:
- config.unsupported = True
- if not check_llvm_exegesis_latency_result == 0:
- config.unsupported = True
+ config.unsupported = True
\ No newline at end of file
Index: llvm/test/tools/llvm-exegesis/X86/latency/lit.local.cfg
===================================================================
--- llvm/test/tools/llvm-exegesis/X86/latency/lit.local.cfg
+++ llvm/test/tools/llvm-exegesis/X86/latency/lit.local.cfg
@@ -20,14 +20,10 @@
else:
try:
with open(os.devnull, 'w') as quiet:
- check_llvm_exegesis_uops_result = subprocess.call(
- [llvm_exegesis_exe, '-mode', 'uops', '-snippets-file', '/dev/null'], stdout=quiet, stderr=quiet)
check_llvm_exegesis_latency_result = subprocess.call(
[llvm_exegesis_exe, '-mode', 'latency', '-snippets-file', '/dev/null'], stdout=quiet, stderr=quiet)
except OSError:
print('could not exec llvm-exegesis')
config.unsupported = True
- if not check_llvm_exegesis_uops_result == 0:
- config.unsupported = True
if not check_llvm_exegesis_latency_result == 0:
config.unsupported = True
Index: llvm/test/tools/llvm-exegesis/X86/lit.local.cfg
===================================================================
--- llvm/test/tools/llvm-exegesis/X86/lit.local.cfg
+++ llvm/test/tools/llvm-exegesis/X86/lit.local.cfg
@@ -1,33 +1,2 @@
-import subprocess
-import lit.util
-
-if not ('X86' in config.root.targets):
- # We need support for X86.
+if not 'X86' in config.root.targets:
config.unsupported = True
-
-elif not ('x86_64' in config.root.host_triple):
- # We need to be running on an X86 host.
- config.unsupported = True
-
-else:
- # We need libpfm to be installed and allow reading perf counters. We can
- # only know that at runtime, so we try to measure the latency of an empty
- # code snippet and bail out on error.
- llvm_exegesis_exe = lit.util.which('llvm-exegesis', config.llvm_tools_dir)
- if not llvm_exegesis_exe:
- print('llvm-exegesis not found')
- config.unsupported = True
- else:
- try:
- with open(os.devnull, 'w') as quiet:
- check_llvm_exegesis_uops_result = subprocess.call(
- [llvm_exegesis_exe, '-mode', 'uops', '-snippets-file', '/dev/null'], stdout=quiet, stderr=quiet)
- check_llvm_exegesis_latency_result = subprocess.call(
- [llvm_exegesis_exe, '-mode', 'latency', '-snippets-file', '/dev/null'], stdout=quiet, stderr=quiet)
- except OSError:
- print('could not exec llvm-exegesis')
- config.unsupported = True
- if not check_llvm_exegesis_uops_result == 0:
- config.unsupported = True
- if not check_llvm_exegesis_latency_result == 0:
- config.unsupported = True
Index: llvm/test/tools/llvm-exegesis/X86/inverse_throughput/lit.local.cfg
===================================================================
--- llvm/test/tools/llvm-exegesis/X86/inverse_throughput/lit.local.cfg
+++ llvm/test/tools/llvm-exegesis/X86/inverse_throughput/lit.local.cfg
@@ -20,14 +20,10 @@
else:
try:
with open(os.devnull, 'w') as quiet:
- check_llvm_exegesis_uops_result = subprocess.call(
- [llvm_exegesis_exe, '-mode', 'uops', '-snippets-file', '/dev/null'], stdout=quiet, stderr=quiet)
- check_llvm_exegesis_latency_result = subprocess.call(
- [llvm_exegesis_exe, '-mode', 'latency', '-snippets-file', '/dev/null'], stdout=quiet, stderr=quiet)
+ check_llvm_exegesis_inverse_throughput_result = subprocess.call(
+ [llvm_exegesis_exe, '-mode', 'inverse_throughput', '-snippets-file', '/dev/null'], stdout=quiet, stderr=quiet)
except OSError:
print('could not exec llvm-exegesis')
config.unsupported = True
- if not check_llvm_exegesis_uops_result == 0:
- config.unsupported = True
- if not check_llvm_exegesis_latency_result == 0:
+ if not check_llvm_exegesis_inverse_throughput_result == 0:
config.unsupported = True
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D109353.371050.patch
Type: text/x-patch
Size: 4989 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210907/b41ec181/attachment.bin>
More information about the llvm-commits
mailing list