Displaying 20 results from an estimated 7000 matches similar to: "[LLVMdev] Question about Doc patch"
2008 Apr 21
2
[LLVMdev] getting started with IR needing GC
On Apr 20, 2008, at 6:52 PM, Gordon Henriksen wrote:
> On 2008-04-20, at 21:05, Terence Parr wrote:
>
>> On Apr 20, 2008, at 5:36 PM, Gordon Henriksen wrote:
>>
>>> Since the semispace heap doesn't actually work (it's an example,
>>> at best), I suggest you simply copy the stack visitor into your
>>> project; it's only a dozen lines of
2008 Apr 22
0
[LLVMdev] getting started with IR needing GC
Hi Terence,
I think you're getting hung up on the details of the shadow stack
collector. The shadow stack is a GC that is possible within this
framework, but of course could be implemented without any special
support. Its presence is more misleading than anything else. Taking a
step back, the concepts are:
llvm.gcroot instructs the code generator --> My GC needs to be able to
2008 Apr 22
0
[LLVMdev] getting closer!
Hi again Terence,
On Apr 22, 2008, at 15:20, Terence Parr wrote:
> Sorry for the long questions...gotta figure this out.
Not a problem!
> On Apr 21, 2008, at 6:23 PM, Gordon Henriksen wrote:
>
>> On Apr 21, 2008, at 20:09, Terence Parr wrote:
>>
>>> Ok, I *might* be getting this from the assembly code. ... From
>>> that, it will push/pop in
2008 Apr 22
2
[LLVMdev] getting closer!
On Apr 21, 2008, at 6:23 PM, Gordon Henriksen wrote:
> On Apr 21, 2008, at 20:09, Terence Parr wrote:
>
>> Ok, I *might* be getting this from the assembly code. ... From
>> that, it will push/pop in functions? If so, that's easy enough. :)
>
> Yup! Sounds like you've got it.
Yup, what i was missing and what somebody should add to the doc is
that
2008 Apr 21
2
[LLVMdev] getting started with IR needing GC
Howdy do LLVM folks!
I've exhausted what I can do on my own to make a GC example bind
(usual googling, reading, playing, looking at source). I can't find
the shadow collector lib or perhaps the -l options needed to link my
sample (not even to point where I'm figuring out GC actually as I
can't link). Not sure this IR is correct but here is what I've been
playing
2008 Apr 22
0
[LLVMdev] getting closer!
On Apr 21, 2008, at 20:09, Terence Parr wrote:
> Ok, I *might* be getting this from the assembly code. ... From
> that, it will push/pop in functions? If so, that's easy enough. :)
Yup! Sounds like you've got it.
> What I was/am missing is the explicit link between types and
> variables in a GC.c file and the generated machine code. If I can
> get that last
2008 Apr 21
0
[LLVMdev] getting started with IR needing GC
On 2008-04-20, at 21:05, Terence Parr wrote:
> On Apr 20, 2008, at 5:36 PM, Gordon Henriksen wrote:
>
>> Since the semispace heap doesn't actually work (it's an example, at
>> best), I suggest you simply copy the stack visitor into your
>> project; it's only a dozen lines of code or so.
>
>
> Ok, copying; can't find ShadowStackEntry though.
2008 Apr 22
3
[LLVMdev] getting closer!
Ok, I *might* be getting this from the assembly code. The assembly
code has:
L_llvm_gc_root_chain$non_lazy_ptr:
.indirect_symbol _llvm_gc_root_chain
.long 0
and I see it being used in the function preamble. Is that a ref to an
extern symbol or the def? I.e., is it referring to
StackEntry *llvm_gc_root_chain;
that I must have in my GC C code? (semispace.c has it)
SO!
2008 Apr 23
2
[LLVMdev] getting closer!
On Apr 22, 2008, at 3:27 PM, Gordon Henriksen wrote:
> If you'd like to propose clarified language once you've wrapped your
> head around the framework, I'd be happy to incorporate it. Most
> ideally, submit a patch against GarbageCollection.html in http://llvm.org/svn/llvm-project/llvm/trunk/docs/
> .
Cool. Ok, I have already submitted some svn diffs to Chris to fix
2008 Apr 21
2
[LLVMdev] getting started with IR needing GC
On Apr 20, 2008, at 5:36 PM, Gordon Henriksen wrote:
> The shadow stack walker is in the runtime directory with the semispace
> heap example. The runtime directory is built to LLVM IR using llvm-
> gcc. So it's skipped unless you configure llvm with llvm-gcc support.
doh! That's how I missed the binary. thanks!
> Since the semispace heap doesn't actually work (it's
2009 Dec 13
1
[LLVMdev] ANTLR+LLVM example for simple C
Howdy,
I just finished a book called Language Implementation Patterns but I ran out of room at 400 pages before I could squeeze in an LLVM example. I left a link in the book to the ANTLR wiki so I can slap something together:
http://www.antlr.org/wiki/display/ANTLR3/LLVM
The code is good but the description was slapped together I'm afraid (i.e., don't take it as an example of the book
2008 Apr 21
0
[LLVMdev] getting started with IR needing GC
Hi Terence,
On 2008-04-20, at 20:08, Terence Parr wrote:
> I've exhausted what I can do on my own to make a GC example bind
> (usual googling, reading, playing, looking at source). I can't find
> the shadow collector lib or perhaps the -l options needed to link my
> sample (not even to point where I'm figuring out GC actually as I
> can't link).
The shadow
2015 Mar 31
2
[LLVMdev] why is gc.root 8 bits?
I'm trying to add gcoot functionality to my code and I'm confused by why
gcroot is assuming to be an i8**
I'm using i32 as object and array pointers and if I make them i8 things
seem to work.
I'm generating IR much like
http://llvm.org/docs/GarbageCollection.html#llvm-ir-features
void @llvm.gcroot(i8** %ptrloc, i8* %metadata)
-------------- next part --------------
An HTML
2010 Apr 26
2
[LLVMdev] Using gcroot with value types
Hi,
Talin wrote:
> I'm a little confused as to the rules for the arguments to llvm.gcroot,
> which says it must be a pointer alloca. I'm not sure whether that means it
> must be an alloca (which is always a pointer by definition) or an alloca
> *of* a pointer.
I'm pretty sure it should be "alloca of a pointer", as the first argument
of llvm.gcroot has type i8**.
2010 Apr 26
0
[LLVMdev] Using gcroot with value types
On Mon, Apr 26, 2010 at 12:44 AM, Paul Melis <llvm at assumetheposition.nl>wrote:
> Hi,
>
> Talin wrote:
> > I'm a little confused as to the rules for the arguments to llvm.gcroot,
> > which says it must be a pointer alloca. I'm not sure whether that means
> it
> > must be an alloca (which is always a pointer by definition) or an alloca
> > *of* a
2010 Apr 28
2
[LLVMdev] Using gcroot with value types
On 04/27/10 00:20, Talin wrote:
> On Mon, Apr 26, 2010 at 12:44 AM, Paul Melis
> <llvm at assumetheposition.nl <mailto:llvm at assumetheposition.nl>> wrote:
>
> Hi,
>
> Talin wrote:
> > I'm a little confused as to the rules for the arguments to
> llvm.gcroot,
> > which says it must be a pointer alloca. I'm not sure whether
2007 Aug 13
2
[LLVMdev] ocaml+llvm
Hi Chris,
Chris Lattner wrote:
> I don't think you want to try to have the LLVM code generator build this
> table. The table is a contract between the specific codegen you're using
> and the GC runtime you're using. This contract is specific to the current
> ocaml code generator.
>
> In the LLVM world, you should use the first-class support we already have
2010 Apr 29
0
[LLVMdev] Using gcroot with value types
On Wed, Apr 28, 2010 at 12:16 PM, Paul Melis <llvm at assumetheposition.nl>wrote:
> On 04/27/10 00:20, Talin wrote:
>
> On Mon, Apr 26, 2010 at 12:44 AM, Paul Melis <llvm at assumetheposition.nl>wrote:
>
>> Hi,
>>
>> Talin wrote:
>> > I'm a little confused as to the rules for the arguments to llvm.gcroot,
>> > which says it must be
2010 May 01
1
[LLVMdev] Using gcroot with value types
On 04/29/10 21:27, Talin wrote:
> On Wed, Apr 28, 2010 at 12:16 PM, Paul Melis
> <llvm at assumetheposition.nl <mailto:llvm at assumetheposition.nl>> wrote:
>
> On 04/27/10 00:20, Talin wrote:
>> On Mon, Apr 26, 2010 at 12:44 AM, Paul Melis
>> <llvm at assumetheposition.nl <mailto:llvm at assumetheposition.nl>> wrote:
>>
>>
2008 Apr 24
0
[LLVMdev] templates vs code to generate IR
Hi Terence,
The reason I remarked, actually, is that for LLVM in particular the C+
+ API offers more safety, and emitting .ll generally requires at least
partially reimplementing the IR object model. I think this is a topic
in the FAQ. But both are perfectly valid approaches!
- Gordon
On Apr 23, 2008, at 14:04, Terence Parr <parrt at cs.usfca.edu> wrote:
> Gordon reminded me that