Displaying 20 results from an estimated 3000 matches similar to: "[LLVMdev] LangRef.html invoke/unwind patch"
2010 Jan 13
0
[LLVMdev] LangRef.html invoke/unwind patch
Hi Dustin,
> Here is a small doc patch based on answers from the list and from the
> links mentioned. For stylistic consistency I've followed the language
> in the va_arg description for the analogous situation.
as I mentioned in another email, unwind is not completely unsupported:
it does work for rethrowing an exception.
Ciao,
Duncan.
2010 Jan 13
1
[LLVMdev] LangRef.html invoke/unwind patch
On 01/13/2010 01:52 PM, Duncan Sands wrote:
> as I mentioned in another email, unwind is not completely unsupported:
> it does work for rethrowing an exception.
Good point. Not understanding how languages implement exceptions under
the hood, I lose the nuances that should be in a reference document.
How's this version?
Dustin
-------------- next part --------------
An embedded and
2010 Jan 11
3
[LLVMdev] LangRef 'struct' patch--preliminary
On 01/11/2010 11:20 AM, Jeffrey Yasskin wrote:
> Awesome, thanks! Committed as r93170 with the following change:
>
> s/local variables/registers/. "Local variable" refers to allocas in
> LLVM, rather than %whatever SSA "variables".
Excellent. I was not actually happy with that term when I wrote it, but
wasn't sure of the standard terminology. It should
2010 Jan 11
2
[LLVMdev] LangRef 'struct' patch--preliminary
Here is a patch that cleans up a couple of bugs and makes what I think
are a couple of small improvements based on the recent advice about
structs that I got. There is more like this that could be done, but I
wanted to see how this example was received.
Dustin
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: LangRef.struct.patch
URL:
2010 Jan 11
0
[LLVMdev] LangRef 'struct' patch--preliminary
Awesome, thanks! Committed as r93170 with the following change:
s/local variables/registers/. "Local variable" refers to allocas in
LLVM, rather than %whatever SSA "variables".
On Mon, Jan 11, 2010 at 1:28 AM, Dustin Laurence
<dllaurence at dslextreme.com> wrote:
> Here is a patch that cleans up a couple of bugs and makes what I think
> are a couple of small
2010 Jan 13
0
[LLVMdev] invoke/unwind
Hi Dustin, the code generators do not support unwind, only the
interpreter does.
Ciao,
Duncan.
2010 Jan 13
5
[LLVMdev] invoke/unwind
I put invoke/unwind aside because I couldn't get them to work, but I'm
working on my evaluator now and it would be nice to figure this out so I
don't have to unwind the stack manually. This was the reason for my
earlier question about global declarations, and as that's cleared up I
can easily pass exception data...if I can make unwind return out of some
deep recursion.
The
2010 Jan 13
1
[LLVMdev] invoke/unwind
On Wed, Jan 13, 2010 at 4:07 AM, Duncan Sands <baldrick at free.fr> wrote:
> Hi Dustin, the code generators do not support unwind, only the
> interpreter does.
>
> Ciao,
>
> Duncan.
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
>
2010 Feb 12
2
[LLVMdev] Portable I/O
On 02/12/2010 09:51 AM, Chris Lattner wrote:
> I think that the point is that you can define your own standard runtime interfaces:
>
> void *myopen(const char*path) {
> return fopen(path, ...);
> }
Maybe my experience hand-coding LLVM will actually be of some help.
What I did for this case is what I think Chris is suggesting--I have a
.c file with functions that return
2010 Feb 12
0
[LLVMdev] Portable I/O
Thanks everyone, a set of wrapper routines it will be then.
Dustin, are the routines you wrote open source or do you know if there is
already a project that provides such a portable interface to libc for LLVM?
If not, I'll write my own routines, but if there is a way to adopt a common
standard or avoid reinventing the wheel I'm all for it.
Mike
2010 Jan 13
0
[LLVMdev] invoke/unwind
If it helps, to see what is involved, outside of a pure IR context, see the example code, and doc at:
http://wiki.llvm.org/HowTo:_Build_JIT_based_Exception_mechanism#Source_Code:_exceptionDemo.cpp
Although this is a pure example that shows several test cases, including foreign exception interaction, it is
not an IR example, but rather a LLVM IR API example. It would be interesting to see a pure
2010 Jan 13
2
[LLVMdev] invoke/unwind
On 01/13/2010 04:08 AM, Garrison Venn wrote:
> If it helps, to see what is involved, outside of a pure IR context,
> see the example code, and doc at:
>
> http://wiki.llvm.org/HowTo:_Build_JIT_based_Exception_mechanism#Source_Code:_exceptionDemo.cpp
It does, although in the "let me show you why this is too much to
tackle" way.
> Although this is a pure example that
2010 Jan 13
1
[LLVMdev] invoke/unwind
On 01/13/2010 02:07 AM, Duncan Sands wrote:
> Hi Dustin, the code generators do not support unwind, only the
> interpreter does.
Ah, the secret is not to even try to frob the gnorts. Manual unwinding,
here I come. :-(
I was going to say the interpreter doesn't either, but then I recalled
it JITs when it can. I don't know how to call into libc from the
interpreter to test that.
2010 Jan 09
2
[LLVMdev] Inlining
On 01/08/2010 09:17 PM, Nick Lewycky wrote:
> Try using 'internal' linkage instead of 'linkonce'.
That did it, thanks.
---
gemini:~/Projects/LLVM/Tests/Inline(0)$ cat testInline.optdis.ll
; ModuleID = 'testInline.optbc'
define i32 @main(i32 %argc, i8** nocapture %argv) nounwind readnone {
ret i32 42
}
gemini:~/Projects/LLVM/Tests/Inline(0)$
---
> If you're
2010 Jan 02
2
[LLVMdev] inbounds (was Re: indirectbr)
On 01/02/2010 11:24 AM, Bob Wilson wrote:
> Yes, that is correct. It is supported in the trunk sources, but it has
> not yet been released.
Hmm. Would the same also be true of the "inbounds" keyword for GEP? It
doesn't seem to be recognized ("expected type").
Dustin
2010 Jan 13
0
[LLVMdev] invoke/unwind
On Jan 13, 2010, at 12:46, Dustin Laurence wrote:
> On 01/13/2010 04:08 AM, Garrison Venn wrote:
>
>> If it helps, to see what is involved, outside of a pure IR context,
>> see the example code, and doc at:
>>
>> http://wiki.llvm.org/HowTo:_Build_JIT_based_Exception_mechanism#Source_Code:_exceptionDemo.cpp
>
> It does, although in the "let me show you
2010 Jan 09
7
[LLVMdev] Variable declarations vs. definitions
I have yet another question that I believe also stems from deep
ignorance of the linkage types. How do you declare a global variable
without defining it? The IR ref. clearly indicates that you can do
this, but it looks like one of the many "too obvious to mention" things
that I struggle with. It's easy with functions, of course: "declare
@foo" in the header and
2010 Jan 09
0
[LLVMdev] Inlining
Hello Dustin,
Always inline is the closest to a preprocessor macro you can get in LLVM Assembly since it doesn't have a preprocessor at all. LLVM does aggressive inlining for functions used only once so those instances don't require specification as alwaysinline.
--Sam
----- Original Message ----
> From: Dustin Laurence <dllaurence at dslextreme.com>
> Cc: llvmdev at
2010 Jan 09
2
[LLVMdev] Inlining
On 01/09/2010 10:00 AM, Samuel Crow wrote:
>
> Always inline is the closest to a preprocessor macro you can get in
> LLVM Assembly since it doesn't have a preprocessor at all.
Mine does. :-)
> ...LLVM does
> aggressive inlining for functions used only once so those instances
> don't require specification as alwaysinline.
What I'm trying to do is understand the
2010 Jan 02
0
[LLVMdev] inbounds (was Re: indirectbr)
On Sat, Jan 2, 2010 at 2:31 PM, Dustin Laurence
<dllaurence at dslextreme.com> wrote:
> On 01/02/2010 11:24 AM, Bob Wilson wrote:
>
>> Yes, that is correct. It is supported in the trunk sources, but it has
>> not yet been released.
>
> Hmm. Would the same also be true of the "inbounds" keyword for GEP? It
> doesn't seem to be recognized