|
|
|
@ -540,7 +540,9 @@ LuaLLVMTypes::LuaLLVMTypes(llvm::LLVMContext &context) : mdbuilder(context) {
|
|
|
|
|
// } u;
|
|
|
|
|
// ptrdiff_t extra;
|
|
|
|
|
// short nresults; /* expected number of results from this function */
|
|
|
|
|
// lu_byte callstatus;
|
|
|
|
|
// unsigned short callstatus;
|
|
|
|
|
// unsigned short stacklevel; /* Ravi extension - stack level, bottom level is 0 */
|
|
|
|
|
// lu_byte jitstatus; /* Only valid if Lua function - if 1 means JITed - RAVI extension */
|
|
|
|
|
//} CallInfo;
|
|
|
|
|
|
|
|
|
|
elements.clear();
|
|
|
|
@ -568,9 +570,9 @@ LuaLLVMTypes::LuaLLVMTypes(llvm::LLVMContext &context) : mdbuilder(context) {
|
|
|
|
|
*/
|
|
|
|
|
elements.push_back(C_ptrdiff_t); /* extra */
|
|
|
|
|
elements.push_back(llvm::Type::getInt16Ty(context)); /* nresults */
|
|
|
|
|
elements.push_back(lu_byteT); /* callstatus */
|
|
|
|
|
elements.push_back(lu_byteT); /* jitstatus RAVI extension*/
|
|
|
|
|
elements.push_back(C_shortT); /* stacklevel RAVI extension */
|
|
|
|
|
elements.push_back(C_shortT); /* callstatus */
|
|
|
|
|
elements.push_back(C_shortT); /* stacklevel RAVI extension */
|
|
|
|
|
elements.push_back(lu_byteT); /* jitstatus RAVI extension*/
|
|
|
|
|
CallInfoT->setBody(elements);
|
|
|
|
|
|
|
|
|
|
// typedef struct ravi_State ravi_State;
|
|
|
|
@ -1067,11 +1069,11 @@ LuaLLVMTypes::LuaLLVMTypes(llvm::LLVMContext &context) : mdbuilder(context) {
|
|
|
|
|
nodes.push_back(
|
|
|
|
|
std::pair<llvm::MDNode *, uint64_t>(tbaa_shortT, 40)); // nresults
|
|
|
|
|
nodes.push_back(
|
|
|
|
|
std::pair<llvm::MDNode *, uint64_t>(tbaa_charT, 42)); // callstatus
|
|
|
|
|
std::pair<llvm::MDNode *, uint64_t>(tbaa_shortT, 42)); // callstatus
|
|
|
|
|
nodes.push_back(
|
|
|
|
|
std::pair<llvm::MDNode *, uint64_t>(tbaa_charT, 43)); // jitstatus
|
|
|
|
|
std::pair<llvm::MDNode *, uint64_t>(tbaa_shortT, 44)); // stacklevel
|
|
|
|
|
nodes.push_back(
|
|
|
|
|
std::pair<llvm::MDNode *, uint64_t>(tbaa_shortT, 44)); // stacklevel
|
|
|
|
|
std::pair<llvm::MDNode *, uint64_t>(tbaa_charT, 46)); // jitstatus
|
|
|
|
|
tbaa_CallInfoT = mdbuilder.createTBAAStructTypeNode("CallInfo", nodes);
|
|
|
|
|
|
|
|
|
|
//! 7 = metadata !{metadata !"lua_State",
|
|
|
|
@ -1130,9 +1132,9 @@ LuaLLVMTypes::LuaLLVMTypes(llvm::LLVMContext &context) : mdbuilder(context) {
|
|
|
|
|
tbaa_CallInfo_savedpcT =
|
|
|
|
|
mdbuilder.createTBAAStructTagNode(tbaa_CallInfoT, tbaa_pointerT, 20);
|
|
|
|
|
tbaa_CallInfo_callstatusT =
|
|
|
|
|
mdbuilder.createTBAAStructTagNode(tbaa_CallInfoT, tbaa_charT, 42);
|
|
|
|
|
mdbuilder.createTBAAStructTagNode(tbaa_CallInfoT, tbaa_shortT, 42);
|
|
|
|
|
tbaa_CallInfo_jitstatusT =
|
|
|
|
|
mdbuilder.createTBAAStructTagNode(tbaa_CallInfoT, tbaa_charT, 43);
|
|
|
|
|
mdbuilder.createTBAAStructTagNode(tbaa_CallInfoT, tbaa_charT, 46);
|
|
|
|
|
|
|
|
|
|
//! 20 = metadata !{metadata !"Proto",
|
|
|
|
|
// metadata !3, i64 0, metadata !4, i64 4, metadata !4, i64 5,
|
|
|
|
|