Displaying 17 results from an estimated 17 matches for "getprocesstripl".
Did you mean:
getprocesstriple
2013 Dec 03
1
[LLVMdev] MCJIT + Windows = Incompatible object format
Bingo, thanks! Confirmed it works for both 32- and 64-bit targets.
Should `sys::getProcessTriple()` be updated with this change? According to
the documentation:
/// getProcessTriple() - Return an appropriate target triple for
generating
/// code to be loaded into the current process, e.g. when using the JIT.
I had to "-elf" to the result of this function for JIT to work on Win...
2017 May 08
2
LLVM and Xeon Skylake v5
getProcessTriple just determines operation system, and architecture. It
doesn't deal with specific instruction set features. The CPU should be
controlled by MCPU on the EngineBuilder i think. The CPU autodetection code
lives in getHostCPUName in lib/Support/Host.cpp, but I don't think the JIT
calls into. I...
2015 May 11
4
[LLVMdev] Set up ExecutionEngine according to actual machine capabilities
I am currently setting up my Module with
module->setTargetTriple(llvm::sys::getProcessTriple()
#ifdef _WIN32
+ "-elf"
#endif
);
And my ExecutionEngine with
llvm::EngineBuilder(std::move(module))
.setErrorStr(&err)
.setMCPU(llvm::sys::getHostCPUName()...
2013 Dec 03
0
[LLVMdev] MCJIT + Windows = Incompatible object format
As Yaron said, you need to add "-elf" to the end of your target triple to get MCJIT to generate ELF object in memory on Windows. This should work with 32- or 64-bit targets.
-Andy
From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] On Behalf Of Joshua Klontz
Sent: Monday, December 02, 2013 1:18 PM
To: Dev
Subject: [LLVMdev] MCJIT + Windows = Incompatible
2017 May 08
2
LLVM and Xeon Skylake v5
Thank you. I'm letting it auto detect by setting the target using getProcessTarget. I disabled avx512 support by passing -avx512f (and the other variants) to setMAttrs on EngineBuilder. I can see refs to avx512 in X86.td. It's the exact same executable running on Kabylake.
What does the Cannot select: specifically mean? Is there some table that doesn't have a definition for a key in
2016 May 05
2
MCJIT - missing DataLayout?
Hi everyone,
I was happily using MCJIT for over a year until yesterday when I created a
function call with an argument of a struct type. That caused a crash in
SelectionDAG around DataLayout::getAlignment().
I remember the noise about the DataLayout started being mandatory. But I
cannot find precise information.
Should I set the DataLayout in every Module created?
Where can I get the
2015 Mar 20
2
[LLVMdev] LLVM Exception Handling
...argetAsmPrinter();
llvm::InitializeNativeTargetAsmParser();
llvm::LLVMContext &Context = llvm::getGlobalContext();
llvm::SMDiagnostic Err;
std::unique_ptr<llvm::Module> Mod = llvm::parseIRFile("test.ll", Err,
Context);
std::string triple = llvm::sys::getProcessTriple();
Mod->setTargetTriple(triple);
llvm::Function* f = Mod->getFunction("exec");
llvm::TargetOptions Opts;
Opts.NoFramePointerElim = true;
// Build engine with JIT
std::unique_ptr<llvm::RTDyldMemoryManager> MemMgr(new
llvm::SectionMemoryManager...
2015 Feb 16
2
[LLVMdev] (no subject)
This is my first post so not sure I've done everything right.
Just started playing with LLVM on Windows 7, VS C++.
Was trying to play with the example 4 and got the following error:
"LLVM ERROR: Incompatible object format" I was able resolve the problem by following the suggestion found here:http://lists.cs.uiuc.edu/pipermail/llvmdev/2013-December/068395.html This issue seems to
2013 Dec 02
3
[LLVMdev] MCJIT + Windows = Incompatible object format
Is the MCJIT infrastructure supported on Windows? I'm getting an "LLVM
ERROR: Incompatible object format!" when running my project with both VS
2013 and Mingw_w64 (GCC 4.8.2). Looks like this issue has been brought up
before [1,2] and the answer is "almost". Any help would be greatly
appreciated.
v/r,
Josh
[1]
2018 Jan 04
0
AllocateTarget for ELF objects on Darwin
Hello everyone
I am linking the Clang libs into my executable for JIT compilation. In
order to enable debugging the jited code on OSX via the GDB JIT
Interface, I switched the format of the in-memory object files to ELF. I
thought this target triple should do:
Triple TT;
TT.setTriple(sys::getProcessTriple());
TT.setObjectFormat(llvm::Triple::ELF);
But Clang exits with an error:
backend data layout 'e-m:e-i64:64-f80:128-n8:16:32:64-S128'
does not match expectedtarget description
'e-m:o-i64:64-f80:128-n8:16:32:64-S128'
1 error generated.
The target selection is a little t...
2013 May 10
0
[LLVMdev] Simple Loop Vectorize Question
Hi Josh,
This line works for me:
opt file.ll -loop-vectorize -S -o - -mtriple=x86_64 -mcpu=corei7-avx -debug
You need to specify the triple on the command line if it is not inside the module.
Thanks,
Nadav
On May 9, 2013, at 5:53 PM, Joshua Klontz <josh.klontz at gmail.com> wrote:
> Nadav,
>
> Please forgive my ignorance, but 'opt -mcpu=corei7 -loop-vectorize -S
2019 Jul 16
2
Custom calling convention & ARM target
Hello.
For our project needs we implemented a custom calling convention. The
main goals are to pass function arguments in registers and always use
tailcall optimization for calls to functions with our CC when
applicable.
Function arguments are always pointers and the maximum number of
arguments is 5. No frame pointer register is in use for this CC. No varargs.
Finally, there are not any
2019 Jul 17
2
Custom calling convention & ARM target
Hi Tim,
Thank you for your reply.
Actually, I already played with various target triples including what
sys::getProcessTriple() returns when I tried to compile it on
a Raspberry Pi 3 device.
Yes, changing the triple to armv7-unknown-linux-gnueabi changes the
emitted return instruction to
'bx lr'. But this is not the issue.
Let me describe it based on an example I prepared to demonstrate the problem.
Currently, L...
2013 Oct 03
0
[LLVMdev] libclang JIT frontend
...ew DiagnosticOptions();
TextDiagnosticPrinter *DiagClient =
new TextDiagnosticPrinter(llvm::errs(), &*DiagOpts);
IntrusiveRefCntPtr<DiagnosticIDs> DiagID(new DiagnosticIDs());
DiagnosticsEngine Diags(DiagID, &*DiagOpts, DiagClient);
Driver TheDriver(Path.str(), llvm::sys::getProcessTriple(), "a.out", Diags);
TheDriver.setTitle("clang interpreter");
// FIXME: This is a hack to try to force the driver to do something we can
// recognize. We need to extend the driver library to support this use model
// (basically, exactly one input, and the operation mode...
2013 May 10
2
[LLVMdev] Simple Loop Vectorize Question
Nadav,
Please forgive my ignorance, but 'opt -mcpu=corei7 -loop-vectorize -S
-debug double.ll' doesn't appear to make a difference. In fact it seems to
be ignored as garbage values for -mcpu don't raise an error. Am I
overlooking something else also?
Many Thanks,
Josh
On Thu, May 9, 2013 at 6:06 PM, Nadav Rotem <nrotem at apple.com> wrote:
> Hi Josh,
>
> Your
2013 Oct 27
0
[LLVMdev] Why is the loop vectorizer not working on my function?
Hi Arnold,
thanks for the detailed setup. Still, I haven't figured out the right
thing to do.
I would need only the native target since all generated code will
execute on the JIT execution machine (right now, the old JIT interface).
There is no need for other targets.
Maybe it would be good to ask specific questions:
How do I get the triple for the native target?
How do I setup the
2013 Oct 27
3
[LLVMdev] Why is the loop vectorizer not working on my function?
Hi Frank,
On Oct 26, 2013, at 6:29 PM, Frank Winter <fwinter at jlab.org> wrote:
> I would need this to work when calling the vectorizer through
> the function pass manager. Unfortunately I am having the same
> problem there:
I am not sure which function pass manager you are referring here. I assume you create your own (you are not using opt but configure your own pass