Displaying 4 results from an estimated 4 matches for "binarynode".
2012 Nov 06
3
[LLVMdev] Using LLVM to serialize object state -- and performance
...y in my reply, but I was dealing with hurricane Sandy. Anyway....
My software build produces libmylib.so. The JIT'd function only calls external C functions in libmylib.so and not other JIT'd functions. The C functions are simple thunks to call constructors. For example, given:
class BinaryNode : public Node {
public:
BinaryNode( Node *left, Node *right );
// ...
};
there exists a C thunk:
void* T_BinaryNode_new_2Pv( void *left, void *right ) {
return new BinaryNode( (Node*)left, (Node*)right );
}
The JIT'd function is just a sequence of such calls to thunks to build u...
2012 Nov 06
0
[LLVMdev] Using LLVM to serialize object state -- and performance
...y in my reply, but I was dealing with hurricane Sandy. Anyway....
My software build produces libmylib.so. The JIT'd function only calls external C functions in libmylib.so and not other JIT'd functions. The C functions are simple thunks to call constructors. For example, given:
class BinaryNode : public Node {
public:
BinaryNode( Node *left, Node *right );
// ...
};
there exists a C thunk:
void* T_BinaryNode_new_2Pv( void *left, void *right ) {
return new BinaryNode( (Node*)left, (Node*)right );
}
The JIT'd function is just a sequence of such calls to thunks to build u...
2012 Oct 27
0
[LLVMdev] Using LLVM to serialize object state -- and performance
I'm not sure I have a clear picture of what you're JIT'ing. If any of the JIT'ed functions call other JIT'ed functions, it may be difficult to find all the dependencies of a functions and recreate them correctly on a subsequent load. Even if the JIT'ed functions only call non-JIT'ed functions, I think you'd need some confidence that the address of the called
2012 Oct 26
3
[LLVMdev] Using LLVM to serialize object state -- and performance
I have a legacy C++ application that constructs a tree of C++ objects (an iterator tree to implement a query language). I am trying to use LLVM to "serialize" the state of this tree to disk for later loading and execution (or "compile" it to disk, if you prefer).
Each of the C++ iterator objects now has a codegen() member function that adds to the LLVM code of an