search for: exceptionhandlingchang

Displaying 20 results from an estimated 45 matches for "exceptionhandlingchang".

2011 Jun 12
6
[LLVMdev] Is LLVM expressive enough to represent asynchronous exceptions?
...; Hi Sohail, > >> Is LLVM expressive enough to represent asynchronous exceptions? > > not currently. The first step in this direction is to get rid of the invoke > instruction and attach exception handling information to basic blocks. See > http://nondot.org/sabre/LLVMNotes/ExceptionHandlingChanges.txt > for a discussion. Is this really a good idea? Why have a control flow graph if it doesn't actually capture control flow? There are lots of compilers for languages with more pervasive exceptions that represent them explicitly, e.g. the Hotspot server compiler for Java or several ML c...
2011 Jun 12
0
[LLVMdev] Is LLVM expressive enough to represent asynchronous exceptions?
Hi Sohail, > Is LLVM expressive enough to represent asynchronous exceptions? not currently. The first step in this direction is to get rid of the invoke instruction and attach exception handling information to basic blocks. See http://nondot.org/sabre/LLVMNotes/ExceptionHandlingChanges.txt for a discussion. Ciao, Duncan.
2011 Jun 12
0
[LLVMdev] Is LLVM expressive enough to represent asynchronous exceptions?
...gt;>> Is LLVM expressive enough to represent asynchronous exceptions? >> >> not currently. The first step in this direction is to get rid of the invoke >> instruction and attach exception handling information to basic blocks. See >> http://nondot.org/sabre/LLVMNotes/ExceptionHandlingChanges.txt >> for a discussion. > > Is this really a good idea? Why have a control flow graph if it doesn't actually capture control flow? There are lots of compilers for languages with more pervasive exceptions that represent them explicitly, e.g. the Hotspot server compiler for Java o...
2009 Sep 06
3
[LLVMdev] loads from a null address and optimizations
...age constructs. That being said, if he > wants to implement a couple of passes to change his code, then > sure. :-) This is something that LLVM isn't currently good at, but that we're actively interested in improving. Here is some related stuff: http://nondot.org/sabre/LLVMNotes/ExceptionHandlingChanges.txt I don't know of anyone working on this, or planning to work on it in the short term though. -Chris
2011 Jun 12
5
[LLVMdev] Is LLVM expressive enough to represent asynchronous exceptions?
Is LLVM expressive enough to represent asynchronous exceptions? --------------------------------------------------------------- Summary: Need new LLVM instructions or extending of all instructions. C++ exceptions are synchronous: the compiler knows when/where they are being raised. Asynchronous exceptions can be raised at any time. For example, an integer divide-by-zero may raise an
2011 Jun 13
4
[LLVMdev] Is LLVM expressive enough to represent asynchronous exceptions?
...LVM expressive enough to represent asynchronous exceptions? >>> >>> not currently. The first step in this direction is to get rid of the invoke >>> instruction and attach exception handling information to basic blocks. See >>> http://nondot.org/sabre/LLVMNotes/ExceptionHandlingChanges.txt >>> for a discussion. >> >> Is this really a good idea? Why have a control flow graph if it doesn't actually capture control flow? There are lots of compilers for languages with more pervasive exceptions that represent them explicitly, e.g. the Hotspot server compile...
2011 Jun 13
3
[LLVMdev] Is LLVM expressive enough to represent asynchronous exceptions?
...synchronous exceptions? >>> >> >>> >> not currently. The first step in this direction is to get rid of the invoke >>> >> instruction and attach exception handling information to basic blocks. See >>> >> http://nondot.org/sabre/LLVMNotes/ExceptionHandlingChanges.txt >>> >> for a discussion. >> > >> > Is this really a good idea? Why have a control flow graph if it doesn't actually capture control flow? There are lots of compilers for languages with more pervasive exceptions that represent them explicitly, e.g. the Hot...
2011 Jun 12
0
[LLVMdev] Is LLVM expressive enough to represent asynchronous exceptions?
...gt;>> Is LLVM expressive enough to represent asynchronous exceptions? >> >> not currently. The first step in this direction is to get rid of the invoke >> instruction and attach exception handling information to basic blocks. See >> http://nondot.org/sabre/LLVMNotes/ExceptionHandlingChanges.txt >> for a discussion. > > Is this really a good idea? Why have a control flow graph if it doesn't actually capture control flow? There are lots of compilers for languages with more pervasive exceptions that represent them explicitly, e.g. the Hotspot server compiler for Java o...
2009 Sep 06
4
[LLVMdev] loads from a null address and optimizations
...t;> wants to implement a couple of passes to change his code, then >> sure. :-) >> > > This is something that LLVM isn't currently good at, but that we're > actively interested in improving. Here is some related stuff: > http://nondot.org/sabre/LLVMNotes/ExceptionHandlingChanges.txt > Looks interesting, but it also looks like a lot of work to implement. Could instructions have a flag that says whether their semantics is C-like (i.e. undefined behavior when you load from null etc.), or something else? (throw exception, etc.). Optimizations that assume the behavior...
2011 Jun 13
1
[LLVMdev] Is LLVM expressive enough to represent asynchronous exceptions?
...LVM expressive enough to represent asynchronous exceptions? >>> >>> not currently. The first step in this direction is to get rid of the invoke >>> instruction and attach exception handling information to basic blocks. See >>> http://nondot.org/sabre/LLVMNotes/ExceptionHandlingChanges.txt >>> for a discussion. >> >> Is this really a good idea? Why have a control flow graph if it doesn't actually capture control flow? There are lots of compilers for languages with more pervasive exceptions that represent them explicitly, e.g. the Hotspot server compile...
2007 Apr 05
0
[LLVMdev] Integrating LLVM in an existing project
...l (ie > the basic block) will have an address. Even without optimizations > enabled in llvm, some basicblocks are not emitted (obviously because > some basic blocks are useless). Right. > We can not use current exception handling in llvm, see > http://www.nondot.org/sabre/LLVMNotes/ExceptionHandlingChanges.txt. Why not? > We can not use the llvm.dbg.stoppoint feature because it is not > implemented in llvm's JIT. llvm.dbg.stoppoint isn't really what you want, this is really for debug info support. > So here are a few questions whose answers will help me go through this issue &...
2009 Sep 06
0
[LLVMdev] loads from a null address and optimizations
.... That being said, if he >> wants to implement a couple of passes to change his code, then sure. :-) > > This is something that LLVM isn't currently good at, but that we're actively > interested in improving.  Here is some related stuff: > http://nondot.org/sabre/LLVMNotes/ExceptionHandlingChanges.txt Interesting. What advantage do we get from the restriction that terminators (including invokes) can only appear at the end of a basic block? We'd lose that advantage, but in one sense that advantage is already lost since loads, stores, calls, and whatnot *can* throw the path of executi...
2011 Jun 13
0
[LLVMdev] Is LLVM expressive enough to represent asynchronous exceptions?
...nough to represent asynchronous exceptions? >>>> >>>> not currently. The first step in this direction is to get rid of the invoke >>>> instruction and attach exception handling information to basic blocks. See >>>> http://nondot.org/sabre/LLVMNotes/ExceptionHandlingChanges.txt >>>> for a discussion. >>> >>> Is this really a good idea? Why have a control flow graph if it doesn't actually capture control flow? There are lots of compilers for languages with more pervasive exceptions that represent them explicitly, e.g. the Hotspot se...
2009 Sep 07
0
[LLVMdev] loads from a null address and optimizations
...wn which cases of "invalid" are allowed, but it isn't that big of a deal. >> >> This is something that LLVM isn't currently good at, but that we're >> actively interested in improving. Here is some related stuff: >> http://nondot.org/sabre/LLVMNotes/ExceptionHandlingChanges.txt >> > > Looks interesting, but it also looks like a lot of work to implement. Well that is why it hasn't been done yet :) > Could instructions have a flag that says whether their semantics is > C-like (i.e. undefined behavior when you load from null etc.), or > somet...
2006 Apr 24
3
[LLVMdev] Newbie questions
...ctions (not just "invoke") could be > allowed to have an optional "except label ..."? This is the direction that we plan to go, when someone is interested enough to implement it. There are some rough high-level notes about this idea here: http://nondot.org/sabre/LLVMNotes/ExceptionHandlingChanges.txt -Chris -- http://nondot.org/sabre/ http://llvm.org/
2009 Sep 06
0
[LLVMdev] loads from a null address and optimizations
The problem he's facing here isn't necessarily one of correctness. He's dealing with undefined behavior (at least in C code). There are no guarantees that the compiler will retain a certain semantic interpretation of an undefined construct between different versions of the compiler, let alone different optimization levels. From what I understand, he wants a particular
2011 Jun 13
0
[LLVMdev] Is LLVM expressive enough to represent asynchronous exceptions?
...exceptions? >>>>>> >>>>>> not currently. The first step in this direction is to get rid of the invoke >>>>>> instruction and attach exception handling information to basic blocks. See >>>>>> http://nondot.org/sabre/LLVMNotes/ExceptionHandlingChanges.txt >>>>>> for a discussion. >>>> >>>> Is this really a good idea? Why have a control flow graph if it doesn't actually capture control flow? There are lots of compilers for languages with more pervasive exceptions that represent them explicitly, e.g...
2008 May 09
0
[LLVMdev] How to handle divide-by-zero exception?
...LVM 'exception' if the bit is true, or else execute undefined behaviour. The goal being to allow language frontends that want to trap (like Java) to set the bit, and others (like C) can clear it on all instructions and never pay any performance penalty. http://nondot.org/sabre/LLVMNotes/ExceptionHandlingChanges.txt > It seems to me that you would need some way to set up the unwind labels > beforehand, just like you do for the invoke instruction. For the > specific case of divide by zero, I can imagine an optional unwind label > parameter for the divide instruction, however that won't...
2011 Jun 12
0
[LLVMdev] Is LLVM expressive enough to represent asynchronous exceptions?
...> useful, which option above (or one of your own choosing) would you > use? > > Thanks for your time! If you search the list you will find some discussion on better ways to represent EH. The focus has been on C++ for now. You may also want to see http://www.nondot.org/sabre/LLVMNotes/ExceptionHandlingChanges.txt > Sohail > > Cheers, Rafael
2007 Apr 05
4
[LLVMdev] Integrating LLVM in an existing project
...does not imply that the label (ie the basic block) will have an address. Even without optimizations enabled in llvm, some basicblocks are not emitted (obviously because some basic blocks are useless). We can not use current exception handling in llvm, see http://www.nondot.org/sabre/LLVMNotes/ExceptionHandlingChanges.txt. We can not use the llvm.dbg.stoppoint feature because it is not implemented in llvm's JIT. So we are stuck :). However we would really like to see what performance gains we have with llvm. So here are a few questions whose answers will help me go through this issue 1) Is the Chris...