mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2024-11-28 08:02:08 +00:00
[Orc][examples] Drop target triple from input for remote debugging test (#74831)
https://github.com/llvm/llvm-project/pull/74764 reported that the `lljit-with-remote-debugging` test fails on AArch64 hosts, because the input IR file states arch x86_64 explicitly. In order to drop the target triple we have to remove a check in the example implementation. Not sure it's fully portable now, but at least it's better than before.
This commit is contained in:
parent
e837ef91e3
commit
d86a93782f
@ -88,6 +88,7 @@
|
||||
#include "llvm/Support/InitLLVM.h"
|
||||
#include "llvm/Support/TargetSelect.h"
|
||||
#include "llvm/Support/raw_ostream.h"
|
||||
#include "llvm/TargetParser/Host.h"
|
||||
|
||||
#include "../ExampleModules.h"
|
||||
#include "RemoteJITUtils.h"
|
||||
@ -173,24 +174,15 @@ int main(int argc, char *argv[]) {
|
||||
TSMs.push_back(ExitOnErr(parseExampleModuleFromFile(Path)));
|
||||
}
|
||||
|
||||
StringRef TT;
|
||||
std::string TT;
|
||||
StringRef MainModuleName;
|
||||
TSMs.front().withModuleDo([&MainModuleName, &TT](Module &M) {
|
||||
MainModuleName = M.getName();
|
||||
TT = M.getTargetTriple();
|
||||
if (TT.empty())
|
||||
TT = sys::getProcessTriple();
|
||||
});
|
||||
|
||||
for (const ThreadSafeModule &TSM : TSMs)
|
||||
ExitOnErr(TSM.withModuleDo([TT, MainModuleName](Module &M) -> Error {
|
||||
if (M.getTargetTriple() != TT)
|
||||
return make_error<StringError>(
|
||||
formatv("Different target triples in input files:\n"
|
||||
" '{0}' in '{1}'\n '{2}' in '{3}'",
|
||||
TT, MainModuleName, M.getTargetTriple(), M.getName()),
|
||||
inconvertibleErrorCode());
|
||||
return Error::success();
|
||||
}));
|
||||
|
||||
// Create a target machine that matches the input triple.
|
||||
JITTargetMachineBuilder JTMB((Triple(TT)));
|
||||
JTMB.setCodeModel(CodeModel::Small);
|
||||
|
@ -1,5 +1,4 @@
|
||||
; ModuleID = 'argc_sub1.c'
|
||||
target triple = "x86_64-unknown-unknown-elf"
|
||||
|
||||
define i32 @sub1(i32) !dbg !8 {
|
||||
call void @llvm.dbg.value(metadata i32 %0, metadata !13, metadata !DIExpression()), !dbg !14
|
||||
|
Loading…
Reference in New Issue
Block a user