// File: /workspace/github_c_makefile_star2_O3/bhk[P]tooltree/lua/../opensource/lua-5.2.3/src/loadlib.c
// Function: luaopen_package
LUAMOD_API int luaopen_package (lua_State *L) {
  /* create table CLIBS to keep track of loaded C libraries */
  luaL_getsubtable(L, LUA_REGISTRYINDEX, CLIBS);
  lua_createtable(L, 0, 1);  /* metatable for CLIBS */
  lua_pushcfunction(L, gctm);
  lua_setfield(L, -2, "__gc");  /* set finalizer for CLIBS table */
  lua_setmetatable(L, -2);
  /* create `package' table */
  luaL_newlib(L, pk_funcs);
  createsearcherstable(L);
#if defined(LUA_COMPAT_LOADERS)
  lua_pushvalue(L, -1);  /* make a copy of 'searchers' table */
  lua_setfield(L, -3, "loaders");  /* put it in field `loaders' */
#endif
  lua_setfield(L, -2, "searchers");  /* put it in field 'searchers' */
  /* set field 'path' */
  setpath(L, "path", LUA_PATHVERSION, LUA_PATH, LUA_PATH_DEFAULT);
  /* set field 'cpath' */
  setpath(L, "cpath", LUA_CPATHVERSION, LUA_CPATH, LUA_CPATH_DEFAULT);
  /* store config information */
  lua_pushliteral(L, LUA_DIRSEP "\n" LUA_PATH_SEP "\n" LUA_PATH_MARK "\n"
                     LUA_EXEC_DIR "\n" LUA_IGMARK "\n");
  lua_setfield(L, -2, "config");
  /* set field `loaded' */
  luaL_getsubtable(L, LUA_REGISTRYINDEX, "_LOADED");
  lua_setfield(L, -2, "loaded");
  /* set field `preload' */
  luaL_getsubtable(L, LUA_REGISTRYINDEX, "_PRELOAD");
  lua_setfield(L, -2, "preload");
  lua_pushglobaltable(L);
  lua_pushvalue(L, -2);  /* set 'package' as upvalue for next lib */
  luaL_setfuncs(L, ll_funcs, 1);  /* open lib into global table */
  lua_pop(L, 1);  /* pop global table */
  return 1;  /* return 'package' table */
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
pushq %rax
movq %rdi, %rbx
leaq 0x1114c(%rip), %rdx     # 0x20d59
movl $0xfff0b9d8, %esi       # imm = 0xFFF0B9D8
callq 0xa2b6
xorl %r14d, %r14d
movl $0x1, %ebp
movq %rbx, %rdi
xorl %esi, %esi
movl $0x1, %edx
callq 0x82c4
leaq 0x1be(%rip), %rsi       # 0xfdf3
movq %rbx, %rdi
xorl %edx, %edx
callq 0x8061
leaq 0x10f65(%rip), %rdx     # 0x20bab
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x844e
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x85fb
movq %rbx, %rdi
xorl %esi, %esi
movl $0x2, %edx
callq 0x82c4
leaq 0x1c76a(%rip), %rsi     # 0x2c3e0
movq %rbx, %rdi
xorl %edx, %edx
callq 0xa163
movq %rbx, %rdi
movl $0x4, %esi
xorl %edx, %edx
callq 0x82c4
leaq 0x1c79a(%rip), %r15     # 0x2c430
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x7972
movq (%r14,%r15), %rsi
movq %rbx, %rdi
movl $0x1, %edx
callq 0x8061
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
movl %ebp, %edx
callq 0x8523
addq $0x8, %r14
incl %ebp
cmpq $0x20, %r14
jne 0xfc96
leaq 0x1108a(%rip), %rdx     # 0x20d60
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x844e
leaq 0x11121(%rip), %rsi     # 0x20e0b
leaq 0x11079(%rip), %rdx     # 0x20d6a
leaq 0x1107f(%rip), %rcx     # 0x20d77
leaq 0x11081(%rip), %r8      # 0x20d80
movq %rbx, %rdi
callq 0xfe54
leaq 0x110fc(%rip), %rsi     # 0x20e0a
leaq 0x110fb(%rip), %rdx     # 0x20e10
leaq 0x11102(%rip), %rcx     # 0x20e1e
leaq 0x11105(%rip), %r8      # 0x20e28
movq %rbx, %rdi
callq 0xfe54
leaq 0x1113b(%rip), %rsi     # 0x20e6d
movl $0xa, %edx
movq %rbx, %rdi
callq 0x7ecb
leaq 0x11132(%rip), %rdx     # 0x20e78
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x844e
leaq 0x1080f(%rip), %rdx     # 0x20569
movq %rbx, %rdi
movl $0xfff0b9d8, %esi       # imm = 0xFFF0B9D8
callq 0xa2b6
leaq 0x11111(%rip), %rdx     # 0x20e7f
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x844e
leaq 0x10cdf(%rip), %rdx     # 0x20a61
movq %rbx, %rdi
movl $0xfff0b9d8, %esi       # imm = 0xFFF0B9D8
callq 0xa2b6
leaq 0x110f0(%rip), %rdx     # 0x20e86
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x844e
movq %rbx, %rdi
movl $0xfff0b9d8, %esi       # imm = 0xFFF0B9D8
movl $0x2, %edx
callq 0x8249
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x7972
leaq 0x1c647(%rip), %rsi     # 0x2c410
movq %rbx, %rdi
movl $0x1, %edx
callq 0xa163
movq %rbx, %rdi
movl $0xfffffffe, %esi       # imm = 0xFFFFFFFE
callq 0x7688
movl $0x1, %eax
addq $0x8, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq