Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 15 additions & 10 deletions crates/emmylua_code_analysis/resources/std/jit.lua
Original file line number Diff line number Diff line change
Expand Up @@ -5,24 +5,20 @@
--- @version JIT
--- @class jitlib
--- @field version string
--- @field version_num number
--- @field version_num integer
--- @field os 'Windows' | 'Linux' | 'OSX' | 'BSD' | 'POSIX' | 'Other'
--- @field arch 'x86' | 'x64' | 'arm' | 'arm64' | 'arm64be' | 'ppc' | 'ppc64' | 'ppc64le' | 'mips' | 'mipsel' | 'mips64' | 'mips64el' | string
--- @field arch 'x86' | 'x64' | 'arm' | 'arm64' | 'arm64be' | 'ppc' | 'ppc64' | 'ppc64le' | 'mips' | 'mipsel' | 'mips32r6' | 'mips32r6el' | 'mips64' | 'mips64el' | 'mips64r6' | 'mips64r6el' | string
jit = {}

--- @overload fun(...): ... param func function|boolean
--- @param func function|boolean
--- @param func? function | boolean
--- @param recursive? boolean
function jit.on(func, recursive) end

--- @overload fun(...): ... param func function|boolean
--- @param func function|boolean
--- @param func? function | boolean
--- @param recursive? boolean
function jit.off(func, recursive) end

--- @overload fun(...): ... overload fun(tr: number)
--- @overload fun(tr: number)
--- @param func function | boolean
--- @param func? function | boolean | integer
--- @param recursive? boolean
function jit.flush(func, recursive) end

Expand All @@ -33,7 +29,16 @@ function jit.status() end

jit.opt = {}

--- @param ... any flags
--- @param ... string | number
function jit.opt.start(...) end

--- @param mode? 'prng' | 'strhash' | 'strid' | 'mcode'
--- @return integer status
--- @nodiscard
function jit.security(mode) end

--- @param func function
--- @param event? string
function jit.attach(func, event) end

return jit
7 changes: 4 additions & 3 deletions crates/emmylua_code_analysis/resources/std/jit/profile.lua
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,16 @@

local profile = {}

--- @param mode string
--- @param func fun(L: thread, samples: integer, vmst: string)
--- @param mode? string
--- @param func fun(L: thread, samples: integer, vmstate: string)
function profile.start(mode, func) end

function profile.stop() end

--- @overload fun(th: thread, fmt: string, depth: integer)
--- @overload fun(th: thread, fmt: string, depth: integer): string
--- @param fmt string
--- @param depth integer
--- @return string dump
function profile.dumpstack(fmt, depth) end

return profile
34 changes: 17 additions & 17 deletions crates/emmylua_code_analysis/resources/std/jit/util.lua
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@
--- @meta jit.util
--- @version JIT

--- @class Trace
--- @class Proto
--- @class JIT.Proto

local util = {}

--- @class jit.funcinfo.lua
--- @field proto JIT.Proto
local funcinfo = {
linedefined = 0,
lastlinedefined = 0,
Expand All @@ -22,8 +22,6 @@ local funcinfo = {
children = false,
source = "",
loc = "",
---@type Proto[]
proto = {},
}

--- @class jit.funcinfo.c
Expand All @@ -33,23 +31,23 @@ local funcinfo2 = {
upvalues = 0,
}

--- @param func function
--- @param func function | JIT.Proto
--- @param pc? integer
--- @return jit.funcinfo.c|jit.funcinfo.lua info
--- @return jit.funcinfo.c | jit.funcinfo.lua info
function util.funcinfo(func, pc) end

--- @param func function
--- @param func function | JIT.Proto
--- @param pc integer
--- @return integer? ins
--- @return integer? m
function util.funcbc(func, pc) end

--- @param func function
--- @param func function | JIT.Proto
--- @param idx integer
--- @return any? k
function util.funck(func, idx) end

--- @param func function
--- @param func function | JIT.Proto
--- @param idx integer
--- @return string? name
function util.funcuvname(func, idx) end
Expand All @@ -63,11 +61,11 @@ local traceinfo = {
linktype = "",
}

--- @param tr Trace
--- @param tr integer
--- @return jit.traceinfo? info
function util.traceinfo(tr) end

--- @param tr Trace
--- @param tr integer
--- @param ref integer
--- @return integer? m
--- @return integer? ot
Expand All @@ -76,7 +74,7 @@ function util.traceinfo(tr) end
--- @return integer? prev
function util.traceir(tr, ref) end

--- @param tr Trace
--- @param tr integer
--- @param idx integer
--- @return any? k
--- @return integer? t
Expand All @@ -85,19 +83,21 @@ function util.tracek(tr, idx) end

--- @class jit.snap: integer[]

--- @param tr Trace
--- @param sn integer
--- @param tr integer
--- @param sn integer
--- @param getpos? boolean
--- @return jit.snap? snap
function util.tracesnap(tr, sn) end
--- @return integer? pos
function util.tracesnap(tr, sn, getpos) end

--- @param tr Trace
--- @param tr integer
--- @return string? mcode
--- @return integer? addr
--- @return integer? loop
function util.tracemc(tr) end

--- @overload fun(exitno: integer): integer
--- @param tr Trace
--- @param tr integer
--- @param exitno integer
--- @return integer? addr
function util.traceexitstub(tr, exitno) end
Expand Down
Loading