similar to: [LLVMdev] One way to support unwind on x86

Displaying 20 results from an estimated 40000 matches similar to: "[LLVMdev] One way to support unwind on x86"

2009 Mar 03
0
[LLVMdev] One way to support unwind on x86
Hi Bjarke, > * Provide an efficient runtime implementation that does not > depend on reading the DWARF EH information. why? The DWARF EH info encodes two things: (1) how to restore registers; and (2) matching rules for exception objects, and what to do with them. You will need something along the lines of (1) if you unwind out of the middle of functions. As for (2), if you
2009 Mar 03
0
[LLVMdev] One way to support unwind on x86
Hello, Bjarke > * Provide a pass that raises C++ exception handling to just > unwind instructions and thread-local data. Are you familiar with C++ EH? How would you handle catches? Cleanups? > Other call frames might be more complex to handle. It depends on the > moves needed to restore the registers of the previous call frame (the > caller) and to remove the current frame.
2009 Mar 03
5
[LLVMdev] One way to support unwind on x86
Hi Duncan, Hi Bjarke, Duncan Sands wrote: > Take a look at libunwind (http://www.hpl.hp.com/research/linux/libunwind/). > Another possibility, very close you yours and currently used by the vmkit > project, is to modify all functions so they return two values, the usual > return value and an additional boolean value indicating whether an exception > was thrown during the call or
2008 Dec 23
3
[LLVMdev] Unwinds gone missing
Can you point out to me where in the VMKit code I should be looking? I spent some additional time reading the docs, and I have some specific questions: 1) I'm trying to figure out the relationship between the __cxa_throw function, and the _Unwind_RaiseException function mentioned in the ABI doc. My guess is that _Unwind_RaiseException is the language-neutral implementation of stack unwinding,
2009 Mar 03
0
[LLVMdev] One way to support unwind on x86
Hi Nicolas, On Tue, Mar 3, 2009 at 11:38 AM, Nicolas Geoffray <nicolas.geoffray at lip6.fr> wrote: > > Duncan Sands wrote: >> >> Another possibility, very close you yours and currently used by the vmkit >> project, is to modify all functions so they return two values, the usual >> return value and an additional boolean value indicating whether an >>
2009 Jun 15
6
[LLVMdev] unwind/invoke design
The documentation of unwind/invoke is quite clear and does exactly what I need: unwinding the stack. I don't need it to carry an object back. I don't need it to figure out what the type of the object is or what catch() blocks it matches. I just need it to unwind the stack. The rest is my job as a part of the runtime. Unfortunately, I have learned that while this works with the bytecode
2009 Mar 03
2
[LLVMdev] One way to support unwind on x86
Bjarke Walling wrote: > Another option I'm thinking about is creating a runtime that, when > initialized, compiles the DWARF information to native code. It could > create an Instruction Pointer lookup hash table associated with unwind > actions. JIT-compiling the unwinder data, yes. Given that the unwinder data is, basically, the source for a specialized bytecode interpreter I
2008 Dec 19
4
[LLVMdev] Unwinds gone missing
After much delay, I have finally reached the point in my work where I need to implement some kind of exception handling. I understand that "unwind" is currently unimplemented and will remain so for the forseeable future. In the mean time, are there any examples available for implementing Java or Python-style exceptions using __cxa_throw or something similar? I've read and
2009 Mar 03
1
[LLVMdev] One way to support unwind on x86
Hello, > still don't see the complexities in stack unwinding: Restore caller > registers, remove the frame, lookup next frame, etc. This is not enough for C++, for example. You would need to run destructors, be able to propagate exception object upper, do a type- based catch, etc. You might want to read http://www.codesourcery.com/public/cxx-abi/abi-eh.html Also, studying libgcc
2008 Dec 19
0
[LLVMdev] Unwinds gone missing
Hi Talin, Talin wrote: > After much delay, I have finally reached the point in my work where I > need to implement some kind of exception handling. I understand that > "unwind" is currently unimplemented and will remain so for the > forseeable future. > > In the mean time, are there any examples available for implementing Java > or Python-style exceptions using
2014 Oct 22
3
[LLVMdev] LibUnwind into Compiler-RT?
So, I remember we discussed this earlier this year, but I can't find the thread. The idea is to move libunwind into compiler-rt for the simple reasons below: 1. Unwinding is not exclusive to C++, nor exception handling. 2. Clang still includes libgcc_s and libgcc_eh when using compiler-rt (maybe eh isn't needed, but it was there for libgcc). 3. Testing the libunwind with libc++ on ARM is
2014 May 02
3
[LLVMdev] Question about implementing exceptions, especially to the VMKit team
Hi Kevin, To elaborate on Philip's point, depending on the state Pyston's runtime already is in, you may have the choice of using a hybrid of a "pending exception" word in your runtime thread structure, and an implicit alternate ("exceptional") return address for calls into functions that may throw. This lets you elide the check on the pending exception word after
2010 Dec 02
0
[LLVMdev] Alternative exception handling proposal
On Dec 2, 2010, at 2:21 AM, Duncan Sands wrote: > Hi Bill, > >> This is similar to my first proposal. > > yup, I still consider your first proposal to have been basically sound. > > But it also suffers from a major problem, >> which stopped that proposal dead in its tracks. Namely, you have information in >> one place which needs to be shared in two
2009 Jun 15
2
[LLVMdev] unwind/invoke design
On Mon, Jun 15, 2009 at 9:40 PM, Duncan Sands<baldrick at free.fr> wrote: > you can call the libgcc/libunwind routines directly.  There was an > example of this on the mailing list by Talin not long ago. I'll look into this. Thanks. > That said, > it wouldn't be too hard to support "unwind" in the code generators. > It would basically mean creating
2008 Dec 29
0
[LLVMdev] Unwinds gone missing
Hi Talin, > 1) I'm trying to figure out the relationship between the __cxa_throw > function, and the _Unwind_RaiseException function mentioned in the ABI doc. > My guess is that _Unwind_RaiseException is the language-neutral > implementation of stack unwinding, and __cxa_throw is the C++ exception > semantics that are implemented on top of it. If that is the case, should I >
2014 Mar 19
4
[LLVMdev] Unwind, exception handling, debuggers and profilers
Folks, I'm sorry for getting at this again, but this will not be the last discussion on the topic, so let's just get to business. We're about to merge the last critical patch to make EHABI compatible with other EH mechanisms in LLVM (D3079), and that has unearthed a few issues with the function attributes. Logan's blog post [1] contains a proposal to split unwinding from
2011 Jul 27
5
[LLVMdev] LLVMdev Digest, Vol 85, Issue 50
> > What? Yet another EH proposal?! This one is different from the > others in that > I'm planning to start implementing this shortly. But I want your > feedback! I've > all ready gotten a lot of feedback from Chris, John, Jim, Eric, and > many others. > Now is your turn! > > Please read this proposal and send me your comments, suggestions, > and
2011 Jul 27
0
[LLVMdev] LLVMdev Digest, Vol 85, Issue 50
On Jul 27, 2011, at 10:27 AM, Peter Lawrence wrote: > 3.b) I have been thinking about other possible control-flow-graph invariants of the > landingpad blocks and the catch blocks that they lead to, but so far have not come up > with very muchl, I wonder if anyone else is thinking about this...?... > > for example cleanups come before __cxa_begin_catch, but it isn't clear what
2010 Dec 02
3
[LLVMdev] Alternative exception handling proposal
Hi Bill, > This is similar to my first proposal. yup, I still consider your first proposal to have been basically sound. But it also suffers from a major problem, > which stopped that proposal dead in its tracks. Namely, you have information in > one place which needs to be shared in two different, but possibly disjoint, > places: the type, filters, and personality information. In
2009 Mar 03
0
[LLVMdev] One way to support unwind on x86
Hi Andrew, On Tue, Mar 3, 2009 at 2:40 PM, Andrew Haley <aph at redhat.com> wrote: > JIT-compiling the unwinder data, yes. Given that the unwinder data > is, basically, the source for a specialized bytecode interpreter I > can't see any reason this wouldn't work. I might look into that. It will be a good challenge to understand the EH data in detail and program my own