Displaying 20 results from an estimated 2000 matches similar to: "[LLVMdev] Value not in slotcalculator! error"
2010 Sep 22
2
[LLVMdev] Hit assert(I != ValueMap.end() && "Value not in slotcalculator!") in ValueEnumerator.cpp
Hi there,
I added a function to a module, but failed to write the bitcode to file
because it hit the:
assert(I != ValueMap.end() && "Value not in slotcalculator!")
So I added some diagnosis information there,
unsigned ValueEnumerator::getValueID(const Value *V) const {
if (isa<MDNode>(V) || isa<MDString>(V)) {
ValueMapType::const_iterator I =
2010 Sep 22
0
[LLVMdev] Hit assert(I != ValueMap.end() && "Value not in slotcalculator!") in ValueEnumerator.cpp
Hi Guoliang,
> I added a function to a module, but failed to write the bitcode to file
> because it hit the:
> assert(I != ValueMap.end()&& "Value not in slotcalculator!")
does the module pass the verifier after you add the function to it?
Ciao,
Duncan.
2013 Apr 24
0
[LLVMdev] Questions about attaching DWARF source code debugging information to generated LLVM-IR.
One other thing that may or may not illuminate the situation.
When I run under gdb (on OS X 10.8.3 this is an ancient version of gdb 6.3.5 - but it works with clang compiled C++ code) I get the following error when I try to list a line in dwarf1.lsp:
Dwarf Error: Cannot handle DW_FORM_<unknown> in DWARF reader [in module /Users/meister/Development/cando/src/tests/core/dwarf1.bundle]
(gdb)
2015 Apr 12
2
[LLVMdev] Looking for advice on how to debug a problem with C++ style exception handling code that my compiler generates.
Logan,
How would I dump the object file generated by the JIT compiler pipeline?
Could you point me to an example of how something like that is done? I’m used to working with the JIT machinery in memory but not writing object files out to disk.
I’m have code to generate object files for AOT compilation - is it done the same way?
Best,
.Chris.
On Apr 12, 2015, at 2:27 PM, Logan Chien
2013 Oct 15
0
[LLVMdev] A weird, reproducable problem with MCJIT
Yes, you are correct Yaron. Before we commit this we ought to put a check in to see what the target OS is. I just suggested the change below as a quick and easy way to verify that this was the cause of the problem. I'll clean it up.
-Andy
From: Yaron Keren [mailto:yaron.keren at gmail.com]
Sent: Monday, October 14, 2013 9:09 PM
To: Christian Schafmeister; Kaylor, Andrew; iain at
2015 Apr 12
2
[LLVMdev] Looking for advice on how to debug a problem with C++ style exception handling code that my compiler generates.
This is the only thing that I’ve found that works in terms of getting the exception to propagate out of the JITted function - change the “call” to an “invoke” and hook in the do-nothing landing-pad.
https://gist.github.com/drmeister/7a35046f666826206973
Compare line 646 of the file above to the one that I just posted.
> https://gist.github.com/drmeister/b97dec956c6ee9ffeb75
The first one
2013 Apr 24
2
[LLVMdev] Questions about attaching DWARF source code debugging information to generated LLVM-IR.
I upgraded my versions of llvm, clang and compiler-rt to the top-of-tree versions from last night (r180162, April 24).
I recompiled debug versions of llvm, clang and my code.
I then regenerated my test case and the results were the same - I can list lines of dwarf1.lsp in lldb but I can't set break-points or do anything else (what else should I be able to do?).
The updated file that
2015 Feb 16
5
[LLVMdev] What is on the LLVM horizon for truly relocatable JITted code?
Hello everyone,
Is fully relocatable/position-independent JITted code on the horizon or currently possible with LLVM?
I’ve written a Common Lisp compiler (currently called Clasp: https://github.com/drmeister/clasp) in C++ that uses LLVM as the backend and interoperates with C++. It uses copying garbage collection via the Memory Pool System (MPS) garbage collector by Ravenbrook. This garbage
2013 Oct 15
1
[LLVMdev] A weird, reproducable problem with MCJIT
If I spoke incorrectly about what systems this problem/change effects I
apologize. I'll leave it to Andrew to determine that.
Best,
.Chris.
"Kaylor, Andrew" <andrew.kaylor at intel.com> writes:
> Yes, you are correct Yaron. Before we commit this we ought to put a
> check in to see what the target OS is. I just suggested the change
> below as a quick and easy way
2013 Oct 15
2
[LLVMdev] A weird, reproducable problem with MCJIT
Correct or no I don't know, but this change will affect all x86-64 targets
including Linux and Windows as getMaxStubSize() is called from the ELF
linker as well as the Mach-O linker.
2013/10/15 Christian Schafmeister <chris.schaf at verizon.net>
>
> With the help of iain at codesourcery.com and andrew.kaylor at intel.com we
> tracked the problem down to a bad relocation that
2013 Apr 23
1
[LLVMdev] Questions about attaching DWARF source code debugging information to generated LLVM-IR.
Hmm, are you using a version of LLVM with asserts enabled (I.e. A debug
build)?
I cut-and-paste your IR into a text file and ran (a debug version of) llc
on it, which caused the following assertion failure that seems related to
some DWARF mishap:
llc: ../lib/CodeGen/AsmPrinter/DwarfDebug.cpp:1400: void
llvm::DwarfDebug::beginFunction(const llvm::MachineFunction*): Assertion
`TheCU &&
2015 Apr 12
2
[LLVMdev] Looking for advice on how to debug a problem with C++ style exception handling code that my compiler generates.
Logan,
I need to make a correction of the post that preceded this one!
I was wrong when I said this:
> When I load the bitcode file for this module and then dump it just before it is JITted, the “uwtable” attribute has disappeared - is this prune-eh doing its work even though it’s not listed above in the list of function pass managers?
The “uwtable” attribute does not disappear! I had
2014 May 27
2
[LLVMdev] Do the LLVM SJLJ intrinsics interact with C++ exception handling and execute C++ cleanup actions?
Do the LLVM Setjmp/Longjmp intrinsics interact with C++ exception handling and execute C++ cleanup actions?
I compiled a small example using setjmp/longjmp using clang and they did not execute C++ cleanup actions and calling longjmp bypassed calling destructors on objects that were allocated between the call to setjmp and longjmp.
I’m wondering if the LLVM intrinsics behave differently from
2015 Apr 12
2
[LLVMdev] Looking for advice on how to debug a problem with C++ style exception handling code that my compiler generates.
Hi Christian,
Thanks for your explanation. I know your situation now. I would suggest
you to check the optimization pass used by the JIT compiler, especially
IPO/PruneEH.cpp. It will try to add nounwind attribute to functions which
will result in the problem you have mentioned earlier.
Alternatively, as a workaround, try to add uwtable (function attribute) to
the functions that are generated
2013 Apr 23
0
[LLVMdev] Questions about attaching DWARF source code debugging information to generated LLVM-IR.
I didn't make it clear that I load my Common Lisp application into "lldb" and then load a compiled bundle into my application using dlopen (I'm on OS X and I'm generating a kind of shared library called a "bundle"). Once everything is loaded, the functions from the bundle are accessible to my Common Lisp environment but I don't seem to be able to access the
2012 Apr 09
0
[LLVMdev] Catching C++ exceptions, cleaning up, rethrowing
On Apr 8, 2012, at 10:40 PM, Bill Wendling wrote:
> What gets returned by the landingpad instruction (%0 here) is normally a structure. LLVM doesn't typically treat aggregates as first-class citizens. In particular, you shouldn't store the whole structure to memory like you do to %5. You can use 'extractvalue' to get the different elements of the structure. If you need to
2015 Apr 12
2
[LLVMdev] Looking for advice on how to debug a problem with C++ style exception handling code that my compiler generates.
Hi Christian,
> I don’t see anything in the Itanium ABI that says I need to call the
function that throws an exception with “invoke” to get exception handling
to work!
AFAICT, it is the design of LLVM IR and its implementation. To catch the
exceptions thrown by the callee functions, we should use the invoke
instruction along with the landingpad instruction. If you are calling a
function
2015 Jan 24
2
[LLVMdev] "Expected to drop a reference" assertion thrown
Hello,
A few days ago I upgraded to the LLVM/clang ToT (on Jan 19th or so) and I just encountered this assertion.
“Expected to drop a reference” which is defined in llvm/lib/IR/Metadata.cpp line 136.
I create DebugLoc objects using DebugLog:get(unsigned line, unsigned Col, MDNode *Scope, MDNode *InlinedAt=nullptr)
The DebugLoc objects are wrapped in one of my classes and when instances get
2004 Sep 23
2
[LLVMdev] struct and class under VC7.1
Hi all,
Finally I managed to find out a strange problem under Visual C
During the link of the HowToUseJIT program, I was always missing some
symbols... and I was going crazy testing out different options...
At the end, unmangling the differences in what linker was searching and
what was present in the libraries, I found that the problem is
that we have something like this...
Value.h
struct
2007 Feb 10
2
[LLVMdev] Problems with both the 1.9 Release and the CVS on Cygwin
Hi,
I am back into working on LLVM now and am having problems with Cygwin builds.
Problems with both the 1.9 Release and the CVS on Cygwin...
LLVM CVS Release build :-
/usr/src/llvm/configure --prefix=/usr/llvm
make tools-only ENABLE_OPTIMIZED=1
make[3]: Entering directory `/usr/src/lib/Bytecode/Writer'
llvm[3]: Compiling SlotCalculator.cpp for Release build
llvm[3]: Compiling