Displaying 4 results from an estimated 4 matches for "nummeta".
Did you mean:
nummer
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 22
2
[LLVMdev] getting closer!
...m_gc_root_chain;
wherever you choose to define it. I put into my GC.c file.
Further, that shadow-stack snippet generation assumes the following
structures for tracking roots:
typedef struct FrameMap FrameMap;
struct FrameMap {
int32_t NumRoots; // Number of roots in stack frame.
int32_t NumMeta; // Number of metadata descriptors. May be <
NumRoots.
void *Meta[]; // May be absent for roots without metadata.
};
typedef struct StackEntry StackEntry;
struct StackEntry {
StackEntry *Next; // Caller's stack entry.
const FrameMap *Map; // Pointer to constant Fram...
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 22
0
[LLVMdev] getting closer!
...e to define it. I put into my GC.c file.
>
> Further, that shadow-stack snippet generation assumes the following
> structures for tracking roots:
>
> typedef struct FrameMap FrameMap;
> struct FrameMap {
> int32_t NumRoots; // Number of roots in stack frame.
> int32_t NumMeta; // Number of metadata descriptors. May be <
> NumRoots.
> void *Meta[]; // May be absent for roots without metadata.
> };
>
> typedef struct StackEntry StackEntry;
> struct StackEntry {
> StackEntry *Next; // Caller's stack entry.
> const FrameMap *M...