diff options
author | Min-Yih Hsu <min.hsu@sifive.com> | 2025-01-13 13:42:59 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-01-13 13:42:59 -0800 |
commit | a39aaf35d3858a5542f532e399482c2bb0259dac (patch) | |
tree | 724db89ec9af65e4d18089189efc560622491e90 /llvm/lib/CodeGen/MachineOutliner.cpp | |
parent | a10ce71ac4ef55cc9a80c0aece501a09bd39cc9a (diff) | |
download | llvm-a39aaf35d3858a5542f532e399482c2bb0259dac.zip llvm-a39aaf35d3858a5542f532e399482c2bb0259dac.tar.gz llvm-a39aaf35d3858a5542f532e399482c2bb0259dac.tar.bz2 |
Reland: "[Exegesis] Add the ability to dry-run the measurement phase (#121991)" (#122775)
This relands f8f8598fd886cddfd374fa43eb6d7d37d301b576
Follow up on #122371:
The problem here is a little subtle: when we dry-run the measurement
phase, we create a LLJIT instance without actually executing the
snippets. The key is, LLJIT has its own TargetMachine which uses triple
designated by LLVM_TARGET_ARCH (which is default to host). On a machine
that does not support Exegesis, the LLJIT would fail to create its
TargetMachine because llvm-exegesis don't even register the host's
target!
Putting this test into any of the target-specific folder won't help,
because it's about the host. And personally I don't really want to use
`exegesis-can-execute-<arch>` for generic tests like this -- it's too
strict as we don't actually need to execute the snippet.
My solution here is creating another test feature which is added only
when LLVM_TARGET_ARCH is supported by llvm-exegesis. This feature is
something in between `<arch>-registered-target` and
`exegesis-can-execute-<arch>`.
Diffstat (limited to 'llvm/lib/CodeGen/MachineOutliner.cpp')
0 files changed, 0 insertions, 0 deletions