summaryrefslogtreecommitdiff
path: root/src/lj_traceerr.h
diff options
context:
space:
mode:
authorMike Pall <mike>2009-12-08 19:46:35 +0100
committerMike Pall <mike>2009-12-08 19:46:35 +0100
commit55b16959717084884fd4a0cbae6d19e3786c20c7 (patch)
treec8a07a43c13679751ed25a9d06796e9e7b2134a6 /src/lj_traceerr.h
downloadluajit-2.0.0-beta1.tar.gz
luajit-2.0.0-beta1.tar.bz2
luajit-2.0.0-beta1.zip
RELEASE LuaJIT-2.0.0-beta1v2.0.0-beta1
Diffstat (limited to '')
-rw-r--r--src/lj_traceerr.h59
1 files changed, 59 insertions, 0 deletions
diff --git a/src/lj_traceerr.h b/src/lj_traceerr.h
new file mode 100644
index 00000000..2c8347b0
--- /dev/null
+++ b/src/lj_traceerr.h
@@ -0,0 +1,59 @@
1/*
2** Trace compiler error messages.
3** Copyright (C) 2005-2009 Mike Pall. See Copyright Notice in luajit.h
4*/
5
6/* This file may be included multiple times with different TREDEF macros. */
7
8/* Recording. */
9TREDEF(RECERR, "error thrown or hook called during recording")
10TREDEF(TRACEOV, "trace too long")
11TREDEF(STACKOV, "trace too deep")
12TREDEF(SNAPOV, "too many snapshots")
13TREDEF(NYIBC, "NYI: bytecode %d")
14
15/* Recording loop ops. */
16TREDEF(LLEAVE, "leaving loop in root trace")
17TREDEF(LINNER, "inner loop in root trace")
18TREDEF(LUNROLL, "loop unroll limit reached")
19TREDEF(LBLACKL, "blacklisted loop")
20
21/* Recording calls/returns. */
22TREDEF(BADTYPE, "bad argument type")
23TREDEF(CJITOFF, "call to JIT-disabled function")
24TREDEF(CUNROLL, "call unroll limit reached")
25TREDEF(NYIRECU, "NYI: recursive calls")
26TREDEF(NYILNKF, "NYI: linking/patching function calls")
27TREDEF(NYIVF, "NYI: vararg function")
28TREDEF(NYICF, "NYI: C function %p")
29TREDEF(NYIFF, "NYI: FastFunc %s")
30TREDEF(NYIFFU, "NYI: unsupported variant of FastFunc %s")
31TREDEF(NYIRETL, "NYI: return to lower frame")
32
33/* Recording indexed load/store. */
34TREDEF(STORENN, "store with nil or NaN key")
35TREDEF(NOMM, "missing metamethod")
36TREDEF(IDXLOOP, "looping index lookup")
37TREDEF(NYITMIX, "NYI: mixed sparse/dense table")
38
39/* Optimizations. */
40TREDEF(GFAIL, "guard would always fail")
41TREDEF(PHIOV, "too many PHIs")
42TREDEF(TYPEINS, "persistent type instability")
43
44/* Assembler. */
45TREDEF(MCODEAL, "failed to allocate mcode memory")
46TREDEF(MCODEOV, "machine code too long")
47TREDEF(MCODELM, "hit mcode limit (retrying)")
48TREDEF(SPILLOV, "too many spill slots")
49TREDEF(BADRA, "inconsistent register allocation")
50TREDEF(NYIIR, "NYI: cannot assemble IR instruction %d")
51TREDEF(NYIPHI, "NYI: PHI shuffling too complex")
52TREDEF(NYICOAL, "NYI: register coalescing too complex")
53TREDEF(NYIGCF, "NYI: gcstep sync with frames")
54
55#undef TREDEF
56
57/* Detecting unused error messages:
58 awk -F, '/^TREDEF/ { gsub(/TREDEF./, ""); printf "grep -q LJ_TRERR_%s *.[ch] || echo %s\n", $1, $1}' lj_traceerr.h | sh
59*/